840 likes | 1.35k Views
یادگیری تقویتی. Instructor : Saeed Shiry & Mitchell Ch. 13. یادگیری تقویتی. در یک مسئله یادگیری تقویتی با عاملی روبرو هستیم که از طریق سعی و خطا با محیط تعامل کرده و یاد میگیرد تا عملی بهینه را برای رسیدن به هدف انتخاب نماید . یادگیری تقویتی.
E N D
یادگیریتقویتی Instructor : Saeed Shiry & Mitchell Ch. 13
یادگیریتقویتی • دریکمسئلهیادگیریتقویتیباعاملیروبروهستیمکهازطریقسعیوخطابامحیطتعاملکردهویادمیگیردتاعملیبهینهرابرایرسیدنبههدفانتخابنماید.
یادگیریتقویتی • یادگیریتقویتیازاینروموردتوجهاستکهراهیبرایآموزشعاملهابرایانجامیکعملازطریقدادنپاداشوتنبیهاستبدوناینکهلازمباشدنحوهانجامعملرابرایعاملمشخصنمائیم. • دواستراتژیاصلیبرایاینکاروجوددارد: • یکیاستفادهازالگوریتمهایژنتیکی است که در آن در فضای رفتارها عملی جستجو میگردد که در محیط بتواند هدف مورد نظر را بر آورده نماید. • ودیگریاستفادهازروشهایآماریو dynamic programming • دراین درسروشدوممدنظراست.
مقایسه RL بایادگیریباناظر • یادگیریتقویتیازدوجنبهبایادگیریباناظرتفاوتدارد: • مثالهائییادگیریبصورتزوج >ورودی/خروجی< مطرحنمیشوند. بلکهبعدازاینکهعاملعملیراانجامدادپاداشیرادریافتمیکندوبهمرحلهبعدیمیرود.عاملهیچگونهاطلاعیدرمورداینکهدرهرحالتبهترینعملچیستراندارد. بلکهاینوظیفهعاملاستکهدرطولزمانتجربهکافیدرموردحالتها،عملهایممکن،انتقالوپاداشجمعآورینمودهوعملکردبهینهرایادبگیرد. • تفاوتدیگردراینجاستکهسیستمبایدکارائیآنلاینبالائیداشتهباشد. زیرااغلبارزیابیسیستمباعملیادگیریبطورهمزمانصورتمی پذیرد.
مقایسه RL بایادگیریباناظر Supervised Learning: Example Class Reinforcement Learning: … Situation Reward Situation Reward
یادگیری با ناظر Training Info = desired (target) outputs Supervised Learning System Inputs Outputs Error = (target output – actual output)
یادگیری تقویتی Training Info = evaluations (“rewards” / “penalties”) RL System Inputs Outputs (“actions”) • هدف: جمع کردن حداکثر پاداش ممکن • هیچگونه اطلاعات مربوط به گرادیان خطا موجود نیست. • حالت بعدی از روی عمل فعلی تعیین میشود. • یادگیری مبتنی بر سعی و خطاست.
مشخصه های اصلی یادگیری تقویتی • به یادگیر گفته نمی شود که چه عملی را باید انجام دهد • جستجو بر اساس سعی و خطا انجام میشود. یادگیر سعی میکند اعمالی را یادبگیرد که بیشترین پاداش را تولید میکنند. • پاداش از نوع تاخیری است: از اینرو دست آوردهای کوتاه مدت فدای مزایای بلند مدت تر میشوند. • باید بین کاوش موارد جدید و استفاده از دانش قبلی تناسب ایجاد نمود. exploreorexploit • مسئله را بصورت یک عامل هدفمند که با یک محیط نامعین در ارتباط است می بیند.
ساختار کلی مسئله یادگیری تقویتی • در یک مسئله RL استاندارد با اجزای اصلی زیر روبرو هستیم: • عامل که قرار است یادگیری را از طریق تعامل با محیط انجام دهد. برای اینکار باید • اعمالی که عامل میتواند در محیط انجام دهد مشخص باشند. • محیط برای محیط باید مشخصه های زیر تعیین شوند: • وضعیت • پاداش عامل میتواند از طریق ورودیهایش تشخیص دهد که در چه وضعیتی قرار دارد. عامل در وضعیت St عمل at را انجام میدهد. اینکار باعث میشود وضعیت محیط به St+1 تغییر نماید. در اثر این تغییر وضعیت عامل سیگنال reinforcement و یا پاداش rt+1 را از محیط دریافت می نماید. عمل یادگیری عبارت است ازیاد گرفتن یک سیاست که در واقع نگاشتی از وضعیت به عمل است به نحوی که استفاده از این سیاست برای انتخاب اعمال منجر به دریافت پاداش حداکثر از محیط گردد. سیاست
محیط • در RLعاملیادگیربطورسعیوخطابایکمحیطپویادرگیرشدهویادمیگیردکهبرایهرموقعیتچهعملیراانجامدهد. • اینمحیطبایدقابلمشاهدهویاحداقلتاقسمتیقابلمشاهدهبرایعاملباشد. (partially observable) • مشاهدهمحیطممکناستازطریقخواندناطلاعاتیکسنسور،توضیحسمبلیکوغیرهباشد. • درحالتایدهالعاملبایدبطورکاملقادربهمشاهدهمحیطباشدزیرااغلبتئوریهایمربوطهبراساساینفرضبناشدهاند.
+3 +50 -1 -1 r1 r9 r4 r5 محیط • محیطمجموعهایاز S حالتممکناست. • درهرلحظه t عاملمیتواندیکیاز A عملممکنراانجامدهد. • عاملممکناستدرمقابلعملویامجموعهایازاعمالیکهانجاممیدهدپاداش r رادریافتکند. اینپاداشممکناستمثبتویامنفی )تنبیه(باشد. • در حالت کلی محیط میتواند غیر قطعی (non deterministic) باشد. یعنی انجام یک عمل مشابه در یک وضعیت یکسان به وضعیت بعدی یکسان و یا مقدار پاداش یکسانی منجر نشود. • با این وجود محیط بصورت stationary فرض میشود. یعنی احتمال تغییر وضعیت و یا دریافت پاداش در طول زمان یکسان فرض میشود. … … s1 s2 s3 s4 s5 s9 … a1 a2 a3 a4 a5 a9 …
+3 +50 -1 -1 r1 r9 r4 r5 رفتار عامل • عاملدرمحیطحرکتکردهوحالتهاوپاداشهایمربوطهرابهخاطرمیسپارد. • عاملسعیمیکندطوریرفتارکندکهتابعپاداشراماکزیممنماید. … … s1 s2 s3 s4 s5 s9 … a1 a2 a3 a4 a5 a9 …
The Reinforcement Function • در RLوقتیعاملدریکحالتخاصعملیراانجاممیدهد،درمقابلپاداش (reward or reinforcement) دریافتمیکند. دراینسیستمعاملوظیفهداردتاپاداشدریافتیدردرازمدتراحداکثرنماید. • یکیازنکاتطراحییکسیستم RL تعریفیک reinforcement functionمناسببااهدافعاملاست. اینکاربهطرقمختلفانجاممیشود.
پاداش • اگر دنباله ای از پاداش ها بصورت زیر موجود باشند: • عامل باید سعی نماید تا پاداشی را که از محیط دریافت میکند حد اکثر نماید. در واقع امید ریاضی پاداش را به حداکثر میرساند. • در بسیاری از مسایل تعامل با محیط بصورت اپیزودی انجام میشود. مثلا روباتی که قرار است خروج از اتاق را یاد بگیرد به محض خارج شدن از اتاق یک اپیزود یادگیری خاتمه می یابد. لذا کل پاداشی که با شروع از یک حالت St و رسیدن به حالت نهائی ( خاتمه اپیزود یادگیری) ST بدست می آید برابر است با:
+3 +50 -1 -1 r1 r9 r4 r5 در نظر گرفتن پاداشهای آینده • اگر پاداشRtمجموعپاداشیباشدکهعاملباشروع از زمانt میتواند جمعکند به طرق مختلف میتوان این پاداش را محاسبه نمود. یک راه بصورت زیر است که در آن به پاداشهای نزدیکتر ارزش بیشتری داده میشود.
مدلهایعملکردبهینه • یکی از نکات مهم در انتخاب عمل نحوه لحاظ کردن رخداد های آینده در تصمیم فعلی عامل است. برایاینکهیکعاملبتواندتاثیررخدادهایآیندهدرانتخابعملمناسببرایحالتفعلیرادرنظربگیردمدلهایمختلفیپیشنهادشدهاست: • finite horizon ساده ترین مدل این است که عامل برای انتخاب عمل مقادیر پاداشی را که در h مرحله بعد میگیرد محاسبه نموده و عملی را انتخاب نماید که مجموع پاداش را حداکثر نماید. • (discounted cumulative reward) infinite horizon در این روش بجای h مرحله، پاداش درازمدت دریافتی در نظر گرفته میشود.اینروشبسیار مرسوم بوده وبهپاداشهائیکهدرآیندهگرفتهخواهدشدارزشکمترینسبتبهپاداشهایفوریدادهمیشود.
مدلهایعملکردبهینه • average reward در این روش فرقی بین پاداشهای نزدیک و دور در نظر گرفته نمیشود.
خط مشی یا سیاست • فرضمیکنیمکهاعمالعاملازقانونیمثلpتبعیتمیکندکهآنراخطمشیویا policy مینامیم. • ازآنجائیکه Rtیکمتغیرتصادفیاستلذاامیدریاضیآنتحتیکخطمشیخاصوبراییکحالتمعینبرابرخواهدبودبا: هدفیادگیریتقویتیایناستکهیکخطمشیبهینهایمثلp*پیدانمایدبهنحویکهمقدارامیدریاضیفوقرابرایتمامیحالاتماکزیممکند.
یادگیری خط مشی یا سیاست • در واقع RL سعی دارد عامل را وادار کند در اثر تجربه با محیط سیاست خود را تغییر داده و طوری رفتار نماید که در دراز مدت پاداش بیشتری کسب نماید.
الگوریتم کلی یادگیری تقویتی • Initialise learner’s internal state • Do forever (!?): • Observe current state s • Choose action a using some evaluation function • Execute action a • Let r be immediate reward, s’ new state • Update internal state based on s,a,r,s’
مثال هدف: پرهیز از افتادن افتادن یعنی: افزایش زاویه میله از یک حد مشخص برخورد میله با زمین یک اپیزود یادگیری با افتادن میله خاتمه یافته و باید اپیزود بعدی را شروع نمود. reward = +1 for each step before failure -> return = number of steps before failure
برخی کاربردهای برتر یادگیری تقویتی • TD-Gammon and Jellyfish Tesauro, Dahl • World's best backgammon player • Elevator Control Crites & Barto • (Probably) world's best down-peak elevator controller • Job-Shop Scheduling Zhang & Dietterich • World’s best scheduler of space-shuttle payload processing • Dynamic Channel Assignment Singh & Bertsekas, Nie & Haykin • World's best assigner of radio channels to mobile telephone calls
فرق پاداش و هدف • آیا یک سیگنال عددی میتواند نشاندهنده دقیقی از یک هدف باشد؟ • ممکن است نباشد! اما در عمل بطرز شگفت آوری خوب عمل کرده است. • هدف باید خارج از کنترل عامل باشد. • هدف باید آنچه که میخواهیم به آن برسیم را مشخص نماید و اطلاعاتی در مورد نحوه رسیدن به آن را نداشته باشد. • عامل باید قادر به اندازه گیری میزان موفقیت خود باشد.
Dynamic Programming • یادگیریتقویتیباترکیبتکنیک Dynamic Programmingبایادگیریباکمکناظربهحلمسئلهمیپردازد.
Dynamic programming • بطور کلی کاری که Dynamic programming انجام میدهد عبارت است ازحل یک مسئله چند متغیره از طریق حل مجموعه ای مسائل تک متغیره • مبنای dynamic programming بر پایه اصل بهینگی Bellman بنا شده است • Richard Bellman’s Principle of Optimality این اصل بسادگی بیان میکند که یک خط مشی بهینه باید دارای این خاصیت باشد که بدون توجه به حالت اولیه و تصمیمات اولیه گرفته شده، باقی تصمیمات باید با درنظر گرفتن حالت ایجاد شده از تصمیمات اولیه به خط مشی بهینه برسند.
Dynamic programming • در واقع Dynamic programming روشی است که برای حل یک مسئله از آخرین حالت ممکن شروع کرده و آنچه را که در آن حالت امکان پذیر است بررسی مینماید، سپس با استفاده از اطلاعات بدست آمده از فرض بودن در آخرین حالت به حل حالت ماقبل آخر میپردازدو اینکار برای حالت های قبل از آن ادامه می یابد.
خاصیت مارکف • وضعیت مرحله St تمامی اطلاعات لازم را در اختیار عامل قرار میدهد. یعنی عامل به اطلاعات دیگری نیاز ندارد. • بعبارت دیگر قرار گرفتن در یک وضعیت به معنای داشتن خلاصه گذشته عامل است و نیازی نیست تا از گذشته آن چیز دیگری بدانیم. • نمایش یک وضعیت میتواند شامل ورودیهای فوری، ورودیهای پردازش شده و یا ساختارهای داده ای باشد که در طول زمان از روی ورودی های حس شده تشکیل شده باشند.
Markov Decision Processes • اگر یک مسئله یادگیری تقویتی دارای خاصیت مارکف باشد میتوان آنرا یک Markov Decision Process (MDP) دانست. • اگر تعداد حالت ها و عملها محدودباشند مسئله بصورت finite MDP خواهد بود که با اجزای زیر تعریف یشود: • state and action sets • one-step “dynamics” defined by transition probabilities: • reward expectations:
Markov Decision Processes (MDPs) • درمسائل MDP باشرایطیمواجههستیمکهعاملمیتواند S حالتمجزارادرمحیطتشخیصدهد.اینعاملقادربهانجام A عملمجزامیباشد. • درهرلحظه t عاملحالت stراتشخیصدادهوعمل atرا انجاممیدهد. • محیطدرپاسخبهاینعملپاداش rt=(st,at) رابهعاملمیدهدوبهحالتبعدی st+1=d(st,at) میرود. • توابع r , dجزئیازمحیطبودهوبرایعاملناشناختههستند. • در MDP توابعفقطبهحالتوعملفعلیبستگیداشتهوازحالتوعملهایقبلیمستقلاست.
An Example Finite MDP Recycling Robot • At each step, robot has to decide whether it should (1) actively search for a can, (2) wait for someone to bring it a can, or (3) go to home base and recharge. • Searching is better but runs down the battery; if runs out of power while searching, has to be rescued (which is bad). • Decisions made on basis of current energy level: high, low. • Reward = number of cans collected
Recycling Robot MDP action node
Dynamic Programming • در واقع DP روشی برای حل مسایل MDP است. • این روش نیازمند دانستن دینامیک کامل سیستم است. (P and R) • پیاده سازی آن پرهزینه و معمولا غیر عملی است • با مشکل نفرین ابعادی روبروست • تضمین شده که همگرا خواهد شد. • میتوان RL را یک تقریب برخط برای DP دانست. • نیازی به دانستن R,P ندارد • در فضای حالت به نمونه برداری میپردازد. • تئوریهائی در مورد همگرائی آن وجود دارد.
Reinforcement learning example Start S2 Arrows indicate strength between two problem states Start maze … S4 S3 S8 S7 S5 Goal
Start S2 The first response leads to S2 … The next state is chosen by randomly sampling from the possible next states weighted by their associative strength Associative strength = line width S4 S3 S8 S7 S5 Goal
Start S2 Suppose the randomly sampled response leads to S3 … S4 S3 S8 S7 S5 Goal
Start S2 At S3, choices lead to either S2, S4, or S7. S7 was picked (randomly) S4 S3 S8 S7 S5 Goal
Start S2 By chance, S3 was picked next… S4 S3 S8 S7 S5 Goal
Start S2 Next response is S4 S4 S3 S8 S7 S5 Goal
Start S2 And S5 was chosen next (randomly) S4 S3 S8 S7 S5 Goal
Start S2 And the goal is reached … S4 S3 S8 S7 S5 Goal
Start S2 Goal is reached, strengthen the associative connection between goal state and last response Next time S5 is reached, part of the associative strength is passed back to S4... S4 S3 S8 S7 S5 Goal
Start S2 Start maze again… S4 S3 S8 S7 S5 Goal
Start S2 Let’s suppose after a couple of moves, we end up at S5 again S4 S3 S8 S7 S5 Goal
Start S2 S5 is likely to lead to GOAL through strenghtened route In reinforcement learning, strength is also passed back to the last state This paves the way for the next time going through maze S4 S3 S8 S7 S5 Goal
Start S2 The situation after lots of restarts … S4 S3 S8 S7 S5 Goal
یادگیریخطمشی • اگرچههدفنهائییادگیریتقویتییادگیریتابعیبصورتp*:SA استبااینوجوددرعملانجامآنبسیارمشکلاستزیرامثالهابصورت <s,a> عرضهنمیشوند. • برای یادگیری خط مشی از دو تکنیک زیر استفاده خواهیم کرد: • Value Function • Q Value
Value Function • مقداریکحالتعبارتاستازمجموعمقدارپاداشیکهباشروعازآنحالتوپیرویازخطمشیمشخصیکهبهحالتنهائیختمشود،دریافتمیگردد. • تابعمقداریا Value Function عبارتاستازنگاشتیازstates به state values کهمیتواندتوسطهرتقریبزنندهتابعنظیریکشبکهعصبیتخمینزدهشود.
مثال • یکمسئله MDP با 16 حالت • عاملدارای 4 عملمختلفاست: حرکتبهچپ،بهراست،بهبالاوبهپائین • پاداشبرایتمامیحرکتهابرابر -1 است. • هدفرسیدنبهدوگوشهسمتراستپائینویاگوشهسمتچپبالاست • مقادیرنشاندادهشدهمقدارموردانتظاربرایهرحالتدرصورتانجامیکحرکتتصادفیبرایرسیدنبههدفاست.
The optimal value function • درشکلمقابلمقادیربهینهحالتهانشاندادهشدهاست. • درصورتیکهامکانبدستآوردناینمقادیروجودداشتهباشدمیتوانباانجامیکجستجوبه optimal policy نیزدستیافت. • دریادگیریتقویتیبجاییافتنخطمشیبهینهکهمدلکردنآنمیتواندمشکلباشد،میتوانتلاشنمودتامقدارتابعبهینهحالتهارابدستآورد. The optimal value function The optimal policy