سیستم های آموزش ماشین های خودران
فهرست مطالب
سیستم های آموزش ماشین های خودران در محیط شبیه سازی
در تحقیقاتی که اخیرا در دانشگاه MIT صورت گرفته است، محققان توانستند سیستمِ شبیه سازی ابداع کنند که میتواند ماشینهای خودران را در محیطی کاملا مشابه با واقعیت (که به آن فتورئالیستیک یا Photorealistic world گفته میشود) آموزش دهد. این محیط دارای تمامی امکانات دنیای واقعی و قابلیت چرخش فرمان در تمامی مسیرها را دارد و به ماشین خودران کمک میکند تا بتواند انواع زیادی از سناریوهای خطرساز را قبل از ورود به دنیای واقعی فراگیرد.
سیستمهای کنترلی یا کنترلرها در وسایل نقلیه خودران به شدت به دادههای دنیای واقعی که از مسیرهای رانندگی رانندگان انسانی گرفته شده است، وابسته هستند. با استفاده از این دادهها است که ماشینهای خودران میتوانند چگونگی کنترل فرمان را در وضعیتهای مختلف تقلید کنند. اما دادههای دنیای واقعی که از موارد خطرساز مثل تصادفات یا منحرف شدن ماشین یا رفتن به خطوط دیگر تشکیل شده است، کمیاب هستند.
برخی از برنامههای کامپیوتری که به آنها موتورهای شبیه ساز گفته میشود، تلاش میکنند تا این شرایط را با ارائه جزییات فراوان در جادههای مجازی تقلید کنند و به کنترلرها در بازیابی خود کمک کنند. اما فرآیندهای کنترلی یادگرفته شده از محیطهای شبیه سازی هرگز نمیتوانند به دنیای واقعی و بر روی یک وسیله نقلیه تمام عیار انتقال بیابد.
محققان دانشگاه MIT این مشکل را با شبیه ساز Photorealistic حل کردند و آن را “تبدیل و ترکیب تصاویر مجازی برای خودروهای خودران” (Virtual Image Synthesis and Transformation for Autonomy (VISTA)) نامیدند. این شبیه ساز فقط از یک دیتاست کوچک استفاده میکند، که توسط افراد در هنگام رانندگی در جاده گرفته شده است، و سپس میتواند تعداد بیشماری از وقایع و مسیرهای مختلف در هنگام رانندگی در دنیای واقعی را ترکیب کند.
کنترلر در زمانی که سفری را بدون تصادف و انحراف پشت سر بگذارد، پاداش دریافت میکند و باید خودش یاد بگیرد که چگونه میتواند ایمن به مقصد برسد. با انجام این کار، وسیله نقلیه میآموزد که باید هر موقعیتی را که با آن رو به رو شده است به صورت ایمن پشت سر بگذارد، که شامل بازیابی کنترل وسیله نقلیه بعد از منحرف شدن از خطوط و یا بعد از وقوع تصادف احتمالی میشود.
در آزمایشها، کنترلر با استفاده از شبیه ساز VISTA آموزش دیده است، و به صورت کاملا ایمن بر روی یک ماشین خودران قرار داده شده است و میتواند ماشین را در خیابانهایی که از قبل آنها را ندیده هدایت کند. در مواقعی که ماشین در معرض خارج شدن از جاده و یا در موقعیتهای نزدیک به وقوع تصادف (که قبلا آنها را تقلید کرده بود) قرار میگرفت، کنترلر توانست در کمتر از چند ثانیه و با موفقیت ماشین را به حالت ایمن و مسیر صحیح بازگرداند.
این تحقیق در مقالهای در IEEE Robotics and Automation Letters با عنوان “یادگیری قواعد کنترلی برای رانندگی بدون سرنشین و با استفاده از محیط شبیه سازی مبتنی بر داده” در ماه مِی سال 2020 منتشر شده است.
“جمع آوری دادههای مورد نیاز در مواردی که احتمال تصادف یا انحراف خودرو وجود دارد، بسیار دشوار است، و به همین خاطر در شبیه سازی این تحقیق، این امکان فراهم شده است تا سیستم کنترلی بتواند در محیط شبیه سازی این موارد را تجربه کرده و آنها را یاد بگیرد و در نتیجه بتواند از آنها برای بازیابی اطلاعات قبلی خود استفاده کند. همین امر باعث شده است تا بتوان آنها را بر روی خودروها در دنیای واقعی استفاده نمود.” یکی از نویسندگان این مقاله
محیط شبیه سازی مبتنی بر دادهها:
به طور کلی تولید موتورهای شبیه سازی برای آزمون و آموزش خودروهای بدون سرنشین، یک فعالیت دستی است. شرکتها و دانشگاهها اغلب برای اینکار تیمی از مهندسین و هنرمندان را برای طراحی محیطهای مجازی با خطوط جادهها، علائم رانندگی و … استخدام میکنند. برخی از موتورها نیز از تعامل خودروها با محیط و بر مبنای مدلهای پیچیده ریاضیاتی استفاده میکنند.
اما تا زمانی که مسائل بسیار زیادی در دنیای واقعی وجود دارد، در نظر گرفتن تمامی این جزییات در شبیه سازی تقریبا غیر ممکن خواهد بود. به همین خاطر معمولا یک عدم تطابق میان نکاتی که کنترلر در محیط شبیه سازی یاد میگیرد و دنیای واقعی، وجود داشته است.
در نتیجه محققین دانشگاه MIT یک موتور شبیه سازی مبتنی بر داده را ایجاد کردهاند که میتواند با دادههای واقعی آموزش ببیند و موقعیتهای جدید، ویژگیهای جاده، مسافت و حرکت تمامی اشیا را در محیط فرابگیرد.
آنها ابتدا دادههای ویدیویی از رانندگی انسانها بر روی چند جاده را جمعآوری کرده و به موتور شبیه ساز تزریق میکنند. به ازای هر فریم، موتور شبیه ساز هر پیکسل را به یک نقطه سه بعدی نگاشت میکند. سپس یک خودروی مجازی درون این محیط قرار میگیرد. زمانی که خودرو فرمان را در جهتی میچرخاند این رویداد در موتور به عنوان یک مسیر جدید و بر مبنای انحنای فرمان و سرعت و چرخش خودرو ذخیره میشود.
سپس، موتور شبیه ساز این رویداد جدید را برای انتقال به یک محیط کاملا مشابه واقعیت (فتورئالیستیک) استفاده میکند. برای این کار از شبکه عصبی پیچشی (که معمولا برای فعالیتهای پردازش نصاویر به کار گرفته میشود) استفاده میشود تا یک نگاشت عمقی تخمین زده شود. این نگاشت عمقی شامل اطلاعاتی درباره فاصله اشیا از دید کنترلر میشود. سپس این نگاشت عمقی با تکنیکی برای تخمین چرخش دوربین حول یک صحنه سه بعدی ادغام میشود. تمامی این مراحل به صورت دقیقی، موقعیت خودرو و فاصله نسبی آن از تمامی اشیا موجود در صحنه را مشخص میکند.
بر مبنای این اطلاعات، محیط شبیه ساز، پیکسلهای اصلی را مجدد جهت یابی میکند تا بتواند دوباره بازنمایی 3 بعدی از محیط را از دید خودرو ایجاد نماید. همچنین این شبیه ساز حرکت پیکسلها را دنبال میکند تا بتواند حرکت خودروها، افراد یا سایر اشیا را ضبط نماید. این عملیات کاملا مشابه این است که خودرو با تعداد بینهایت از مسیرهای جدید رو به رو شود، زیرا زمانی که ما دادههای فیزیکی را جمعآوری میکنیم، ما این دادهها را از مسیر خاصی که ماشین دنبال میکند به دست آوردهایم. اما ما میتوانیم آن مسیر را تغییر دهیم تا بتوانیم تمامی راههای ممکن و محیطها را در حین رانندگی به دست بیاوریم، که این عملکرد بسیار قدرتمند است.
یادگیری تقویتی:
به طور معمول محققان، خودروهای بدون سرنشین را با دنبال کردن قواعد از پیش تعریف شده انسانها در هنگام رانندگی و یا با تلاش برای تقلید از رانندگانِ انسانی آموزش میدهند. اما محققان این مقاله، کنترلر این تحقیق را طوری ایجاد کردهاند تا فرآیند یادگیری آن تحت چارچوب انتها به انتها (end- to- end) صورت گیرد، به این معنا که تنها دادههای خام حسگرها را به عنوان ورودی دریافت میکند (مانند مشاهدات بصری از جاده) و سپس این دادهها را طوری شکل میدهد تا بتواند دستورات فرمان را به عنوان خروجی پیش بینی نماید.
به طور اساسی به این خودور گفته می شود که:
” این یک محیط مجازی است، تو میتوانی هر فعالیتی و حرکتی را در این محیط داشته باشی، اما بدون اینکه با خودروهای دیگر تصادف کنی و یا از مسیر اصلی جاده منحرف شوی”.
برای تحقق این فرآیند، نیاز به یادگیری تقویتی و شیوههای یادگیری ماشین آزمون و خطا است که میتواند در هنگام خطای خودور، سیگنالهای بازخوردی را فراهم کند. همچنین در موتور شبیه ساز، ابتدا کنترلر هیچ چیزی در مورد چگونگی رانندگی نمیداند (مانند اینکه خطوط جاده به چه شکلی است یا حتی خودروهای دیگر به چه شکلی هستند)
در نتیجه تلاش میکند تا حرکت فرمان به زوایای مختلف را امتحان کند و زمانی که دچار سانحهای شود سیگنال بازخورد ارسال میشود. در این مرحله، به یک مکان شبیه سازی جدید منتقل میشود که باید در آن مجموعهای بهتر از زوایای فرمان را اجرا کند تا از تصادف دوباره جلوگیری کند. بعد از 10 تا 15 ساعت آموزش، کنترلر از این سیگنالهای بازخوردی پراکنده استفاده میکند تا بتواند مسافتهای بیشتر و بیشتری را بدون تصادف طی کند.
بعد از اینکه کنترلر مسافت 10.000 کیلومتر را در محیط شبیه ساز رانندگی کرد، محققان این کنترلر را بر روی یک خودروی بدون سرنشین در دنیای واقعی قرار دادند. مححقان میگویند: “این اولین بار است که یک کنترلر آموزش دیده با استفاده از یادگیری تقویتی انتها به انتها در محیط شبیه ساز توانستهاند با موفقیت بر روی یک خودروی بدون سرنشین تعبیه شود. این کنترلر نه تنها قبلا بر روی هیچ خودوری واقعی قرار نگرفته است بلکه هرگز جاده واقعی را ندیده است و هیچ گونه دانش قبلی از رانندگی انسانها را نیز ندارد”.
اینکه این کنترلر در محیط شبیه ساز مجبور شده بود تا در سناریوهای مختلف رانندگی کند، باعث شده است تا بتواند در جاده واقعی در صورت چرخشهای فرمان یا ورود به خطوط دیگر در عرض چند ثانیه به محل اصلی و درست خود بازگردد. این در حالی است که تا کنون سایر کنترلرهای جدید در این شرایط موفق نبودهاند زیرا آنها هرگز چنین دادههایی را در طول آموزش ندیدهاند.
به علاوه محققان امیدوار هستند تا بتوانند تمامی شرایط جادهها، از یک تغییر مسیر کوچک تا آب و هوای جاده و … را شبیه سازی کنند. همچنین آنها میخواهند تا سایر تعاملات پیچیده با سایر خودروها بر روی جاده را نیز در این محیطهای شبیه ساز بیافزایند، برای مثال زمانی که خودروهای دیگر به سمت خودروی شما تغییر مسیر دهند. این مسائل و جزییات تعاملات پیچیده در دنیای واقعی هستند، که در آینده به آزمون آنها پرداخته خواهد شد.