0% found this document useful (0 votes)
20 views3 pages

HW#5

Uploaded by

Mahbod Sinaki
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views3 pages

HW#5

Uploaded by

Mahbod Sinaki
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

‫"به نام خالق خرد"‬

‫نیم سال اول ‪1401-02‬‬


‫یادگیری ماشین کاربردی‬ ‫دانشکده مهندسی مکانیک‬

‫زمان تحویل‪1401/11/10 :‬‬ ‫یادگیری تقویتی‬ ‫تمرین سری پنجم‬

‫لطفا نکات زیر را رعایت کنید‪:‬‬


‫فایل گزارش به همراه تمامی کدها در یک فایل فشرده و با عنوان ‪ HW#5_STD‬در سایت بارگذاری کنید‪.‬‬
‫بخشهای پیادهسازی مربوط به هر سوال را در فایل مربوطه با شمارهی آن سوال و در پوشهای برای آن سوال قرار دهید‪ .‬برای‬
‫مثال‪ ،‬تمامی بخشهای پیادهسازی سوال اول را در پوشهی ‪ Q1‬و کد مربوط به قسمت ب سوال اول را با نام ‪ Q1_b. py‬و در‬
‫پوشهی ‪ Q1‬قرار دهید‪.‬‬
‫‪------------------------------------------------------------------------------------------------‬‬
‫مسئله ‪ .1‬رهبر یک تیم مسیریابی و برنامهریزی در یک شرکت خودروهای خودران تصمیم گرفته است تا آخرین مشکل‬
‫ناوبری شهری خود را به عنوان یک ‪ MDP‬مدل کند‪ .‬محیط این مسئله به صورت یک ‪ World Grid‬در شکل ‪ 1‬سمت‬
‫راست آورده شده است‪ .‬هر ماشین بایستی در امتداد جاده (مربعهای خاکستری) حرکت کند و در عین حال از ورود به موانع‬
‫(مربعهای قرمز) اجتناب کند تا به مقصد (مربع سبز) برسد‪ .‬از آنجایی که جاده مسدود است‪ ،‬خودرو بایستی هر زمان که تصمیم‬
‫به حرکت به سمت جلو گرفت‪ ،‬خط خود را تغییر دهد‪ .‬این به این معنی است که از هر مربع خاکستری‪ ،‬ماشین میتواند به سمت‬
‫راس ت و باال یا راست و پایین حرکت کند‪( .‬به عنوان مثال با شروع از حالت ‪، 3‬ماشین میتواند به حالت ‪ 8‬یا ‪ 10‬حرکت کند)‬
‫توجه به این نکته ضروری است که دسترسی به مقصد از هر حالت امکانپذیر نخواهد بود و عملها قطعی بوده و همواره (به جز‬
‫در هنگام مواجهه با مانع غیر قابل عبور در لبههای ضخیم بیرونی مستطیل) قابل اجرا هستند‪ .‬همچنین تالش عامل برای حرکت‬
‫در جهت مانع از یک مربع خاکستری باعث حرکت اتومبیل به اندازه یک مربع به سمت باال میگردد‪( .‬به عنوان مثال انجام هر‬
‫عمل از حالت ‪ 32‬موجب حرکت اتومبیل به حالت ‪ 31‬میشود)‬

‫مسئله ‪ .2‬یک ناوبری موفق در این مسئله در شکل ‪ 1‬سمت چپ نشان داده شده است‪ .‬در هر حالت‪ ،‬انجام عملی که منجر به‬
‫مقصد (مربع سبز) شود‪ ،‬پاداش ‪ rg‬را به همراه دارد و دوره را به پایان میرساند‪ .‬همچنین انجام هر عملی که منجر به موانع‬
‫(مربعهای قرمز) شود‪ ،‬پاداش ‪ rr‬را به همراه دارد و دوره را به پایان میرساند‪ .‬در غیر این صورت‪ ،‬انجام هر عمل که به مربعهای‬
‫خاکستری منجر شود‪ ،‬با ‪ rs‬پاداش همراه است‪.‬‬
‫شکل‪( Grid World -1‬سمت راست) و یک مسیر موفقیتآمیز در ‪( Grid World‬سمت چپ)‬

‫(أ) با استفاده از پیادهسازی الگوریتم تکرار سیاست شامل دو مرحله ارزیابی سیاست و بهبود سیاست و با فرض = 𝑠𝑟‬
‫و معیار همگرایی 𝑆 ∈ 𝑠∀ ‪ |𝑉𝜋𝑘+1 (𝑠) − 𝑉𝜋𝑘 (𝑠)| < 10−3‬و‬ ‫‪ 𝛾 = 1‬و‪−1‬و ‪ 𝑟𝑔 = +5‬و ‪𝑟𝑟 = −5‬‬
‫𝑆 ∈ 𝑠∀ )𝑠( 𝑘𝜋 ≠ )𝑠( ‪ ،𝜋𝑘+1‬سیاست بهینه (مسیر بهینه) با شروع از حالت ‪ 2‬و ‪ ۵‬را به دست آورید (مقادیر اولیه تابع‬
‫ارزش حالتها را در ابتدای اجرای الگوریتم ‪ 0‬در نظر بگیرید‪ ).‬خروجی الگوریتم بایستی شامل مسیر بهینه برای نقاط شروع‬
‫(‪ 2‬و ‪ ،)۵‬توابع ارزش حالت بهینه (به صورت یک آرایه با ‪ 3۶‬درایه و در هر درایه تابع ارزش حالت مربوط به شماره آن حالت)‪،‬‬
‫توابع ارزش حالت‪-‬عمل بهینه (به صورت یک ماتریس با ‪ 3۶‬سطر و ‪ 2‬ستون و در هر درایه تابع ارزش حالت‪-‬عمل مربوط به‬
‫شماره آن حالت و اندیس عمل مشخص شده) و تعداد گامهای طی شده تا همگرایی توابع ارزش حالت به مقادیر باشد‪ .‬توجه‬
‫نمایید که سیاست ابتدایی در هر حالت از بین اعمال موجود یکی را به صورت کامال تصادفی انتخاب میکند‪.‬‬
‫(ب) با پیادهسازی الگوریتم تکرار ارزش‪ ،‬سیاست بهینه (مسیر بهینه) با شروع از حالتهای ‪ 2‬و ‪ ۵‬به صورت دو آرایه‬
‫هر یک شامل شماره حالتهای مسیر بهینه برای نقاط شروع (‪2‬و‪ ،)۵‬توابع ارزش حالت بهینه (به صورت یک آرایه با ‪ 3۶‬درایه‬
‫و در هر درایه تابع ارزش حالت مربوط به شماره آن حالت) و تعداد گامهای طی شده تا همگرایی توابع ارزش حالت به مقادیر‬
‫بهینه را گزارش کرده و با قسمت قبل مقایسه نمایید‪.‬‬
‫در ادامه به جای یافتن کوتاهترین مسیر بین دو نقطه‪ ،‬فرض کنید که بنزین خودرو کم باشد‪ .‬بنابراین در این بخش هدف یافتن‬
‫مسیری است که کمترین سوخت را مصرف کند‪ .‬در دنیای واقعی‪ ،‬ناوبری بهینهشده برای مصرف سوخت ممکن است گامهای‬
‫بیشتری را برای رسیدن به مقصد طی کند ‪.‬برای این بخش همان ‪ MDP‬را با دو «عمل کارامد» جدید حرکت به سمت راست‬
‫یا پایین در نظر بگیرید‪( .‬به عنوان مثال با شروع از حالت ‪، 3‬ماشین میتواند به حالت ‪ 4‬یا ‪ 9‬حرکت کند) در این بخش نیز عملها‬
‫قطعی بوده و همواره (به جز در هنگام مواجهه با مانع غیر قابل عبور در لبههای ضخیم بیرونی مستطیل) قابل اجرا هستند‪ .‬همچنین‬
‫تالش عامل برای حرکت در جهت مانع از یک مربع خاکستری باعث حرکت اتومبیل به اندازه یک مربع به سمت پایین میگردد‬
‫(به عنوان مثال انجام هر عمل از حالت ‪ 32‬موجب حرکت اتومبیل به حالت ‪ 33‬میشود)‪ .‬به منظور شفافیت بیشتر‪ ،‬از نمادهای‬
‫جداگانه ‪ rs‬برای پاداش مرتبط با یک عمل ناکارامد (راست و باال یا راست و پایین) و ‪ re‬برای پاداش مرتبط با یک عمل‬
‫کارامد استفاده خواهیم کرد‪ .‬در تمام سواالت این بخش ضریب تخفیف (تنزیل) را ‪ 𝑟𝑔 = +5 ،𝛾 = 1‬و ‪ 𝑟𝑟 = −5‬فرض‬
‫کنید‪ .‬همچنین پاداش ‪ re‬به صورت تصادفی از بازه ]‪ 𝑟𝑒 ∈ [−2, −1‬و پاداش ‪ rs‬از بازه ]‪ 𝑟𝑠 ∈ [−3, −2‬تولید میشود‪.‬‬
‫توجه شود که در این قسمت‪ ،‬در بعضی حاالت انتخاب یک عمل دو پاداش را به همراه خواهد داشت‪ .‬به عنوان مثال در حالت‬
‫‪ 2‬حرکت (باال‪-‬راست) دو پاداش ‪ rr‬و ‪ re‬را به همراه خواهد داشت که این دو با یکدیگر جمع میشوند‪.‬‬
‫(ج) با پیادهسازی الگوریتم ‪ SARSA‬و با فرض نرخ یادگیری ‪ 𝛼 = 0.05‬و روش 𝑦𝑑𝑒𝑒𝑟𝑔 ‪ 𝜖 −‬با = 𝜖‬
‫‪ ،0.1‬سیاست بهینه (مسیر بهینه) با شروع از حالت ‪ 2‬و ‪ ۵‬را طی ‪ ۵000‬اپیزود به دست آورید (مقادیر اولیه تابع ارزش حالتها‬
‫را در ابتدای اجرای الگوریتم ‪ 0‬در نظر بگیرید‪ ).‬خروجی الگوریتم بایستی شامل مسیر بهینه برای نقاط شروع (‪ 2‬و ‪ ،)۵‬توابع‬
‫ارزش حالت‪-‬عمل بهینه (به صورت یک ماتریس با ‪ 3۶‬سطر و ‪ 4‬ستون و در هر درایه تابع ارزش حالت‪-‬عمل مربوط به شماره‬
‫آن حالت و اندیس عمل مشخص شده) و نمودار میانگین مجموع پاداش های دریافت شده در طی اپیزودهای گذرانده شده‬
‫باشد‪.‬‬
‫(د) با استفاده از پیاده سازی الگوریتم ‪ Q-Learning‬و با پارامترهای یکسان با قسمت (ج)‪ ،‬سیاست بهینه (مسیر‬
‫بهینه) با شروع از حالت ‪ 2‬و ‪ ۵‬را طی ‪ ۵000‬اپیزود به دست آورید (مقادیر اولیه تابع ارزش حالتها را در ابتدای اجرای الگوریتم‬
‫‪ 0‬در نظر بگیرید‪ ).‬خروجی های موردنیاز الگوریتم مانند قسمت (د) میباشد‪ .‬نتایج بدست آمده در این قسمت را با قسمت (ج)‬
‫مقایسه نمایید‪.‬‬

‫با آرزوي بهترین ها‬


‫سعيد خدایگان‬

You might also like