Artificial Intelligence - هوش مصنوعی  
انجمن را در گوگل محبوب کنيد :

بازگشت   Artificial Intelligence - هوش مصنوعی > یادگیری (Learning) > يادگيري تقويتي(Reinforcement Learning)


 
تبليغات سايت
Iranian Association for the Advancement of Artificial Intelligence
ارسال تاپيک جديد  پاسخ
 
LinkBack ابزارهاي تاپيک نحوه نمايش
قديمي ۰۳-۱۴-۱۳۸۹, ۱۱:۴۶ قبل از ظهر   #1 (لینک دائم)
عضو جدید
 
آواتار salar_cpp_cs
 
تاريخ عضويت: دي ۱۳۸۸
پست ها: 8
تشكرها: 3
1 تشكر در 1 پست
پيش فرض درخواست راهنمایی در مورد مساله Race Track

سلام به همه دوستان گرامی ، توی درس یادگیری ماشین یه پروژه گفته شده بنام Race Track

که مربوط میشه به بحث یادگیری تقویتی ، میخواستم ببینم دوستان میتونن در مورد الگوریتم

مساله راهنمایی کنند ؟

مساله از این قراره که یه ماشینی میخواد از یه خط شروعی به خط پایان برسه ، به ازای هر حرکت

درست امتیاز 1- میگیره و به ازای برخورد به دیوار امتیاز 5- میگیره ، حال ما میخوایم تعداد

امتیازهای منفی رو به حداقل برسونیم !

salar_cpp_cs آفلاين است   پاسخ با نقل قول

  #ADS
نشان دهنده تبلیغات
تبليغگر
 
 
 
تاريخ عضويت: -
محل سكونت: -
سن: 2010
پست ها: -
 

نشان دهنده تبلیغات is online  
قديمي ۰۴-۹-۱۳۸۹, ۰۸:۴۵ قبل از ظهر   #2 (لینک دائم)
Administrator
 
آواتار mardin200
 
تاريخ عضويت: آذر ۱۳۸۸
محل سكونت: تهران
پست ها: 309
تشكرها: 120
1,748 تشكر در 263 پست
My Mood: Mehrabon
Wink

سلام دوست عزیز
این تصویر اصلا واضح نیست.
این دو قسمت جدا از هم آیا دو مسیر مختلف هستند یا با هم مرتبط هستند؟؟
و نوع حرکت ماشین به چه شکل می تواند باشد؟؟ بالا و راست فقط؟؟؟؟؟
mardin200 آفلاين است   پاسخ با نقل قول
از mardin200 تشكر كرده است:
salar_cpp_cs (۰۴-۹-۱۳۸۹)
قديمي ۰۴-۹-۱۳۸۹, ۱۱:۳۸ قبل از ظهر   #3 (لینک دائم)
عضو جدید
 
آواتار salar_cpp_cs
 
تاريخ عضويت: دي ۱۳۸۸
پست ها: 8
تشكرها: 3
1 تشكر در 1 پست
پيش فرض

ممون از دوست عزیز mardin200 ، که پاسخ دادن . دیگه داشتم واقعا ناامید میشدم .

بفرمائید اینم لینک عکس بصورت واضحتر :

http://salarcpp.persiangig.com/3/Race%20Track_2.png

دوست عزیز این مساله قراره بروش Mont Carlo حل بشه .

نوع حرکت فقط به بالا و راست مجاز است .

و آن دو مسیر جدا از هم هستند .

دوست عزیز خواهشا اگه تو این برنامه منو راهنمایی کنید ، یه عمر دعا گوی شما میشیم .

سریعا بهش نیاز دارم . با تشکر .
salar_cpp_cs آفلاين است   پاسخ با نقل قول
قديمي ۰۴-۱۰-۱۳۸۹, ۰۵:۱۰ بعد از ظهر   #4 (لینک دائم)
عضو جدید
 
آواتار salar_cpp_cs
 
تاريخ عضويت: دي ۱۳۸۸
پست ها: 8
تشكرها: 3
1 تشكر در 1 پست
پيش فرض

اینم توضیح مساله :

Racetrack (programming) Consider driving a race car around a turn like those shown in Figure 5.8. You want to go as fast as possible, but not so fast as to run off the track. In our simplified racetrack, the car is at one of a discrete set of grid positions, the cells in the diagram. The velocity is also discrete, a number of grid cells moved horizontally and vertically per time step. The actions are increments to the velocity components. Each may be changed by , , or in one step, for a total of nine actions. Both velocity components are restricted to be nonnegative and less than 5, and they cannot both be zero. Each episode begins in one of the randomly selected start states and ends when the car crosses the finish line. The rewards are for each step that stays on the track, and if the agent tries to drive off the track. Actually leaving the track is not allowed, but the position is always advanced by at least one cell along either the horizontal or vertical axes. With these restrictions and considering only right turns, such as shown in the figure, all episodes are guaranteed to terminate, yet the optimal policy is unlikely to be excluded. To make the task more challenging, we assume that on half of the time steps the position is displaced forward or to the right by one additional cell beyond that specified by the velocity. Apply the on-policy Monte Carlo control method to this task to compute the optimal policy from each starting state. Exhibit several trajectories following the optimal policy.
salar_cpp_cs آفلاين است   پاسخ با نقل قول
قديمي ۰۴-۱۱-۱۳۸۹, ۰۹:۲۸ قبل از ظهر   #5 (لینک دائم)
Administrator
 
آواتار mardin200
 
تاريخ عضويت: آذر ۱۳۸۸
محل سكونت: تهران
پست ها: 309
تشكرها: 120
1,748 تشكر در 263 پست
My Mood: Mehrabon
Cool

شما حتما باید از مونت کارلو استفاده کنید؟
آیا فکر نمی کنید تکنیک های reinforcement learning موثر تر باشند؟؟
mardin200 آفلاين است   پاسخ با نقل قول
قديمي ۰۴-۱۱-۱۳۸۹, ۰۵:۵۰ بعد از ظهر   #6 (لینک دائم)
عضو جدید
 
آواتار salar_cpp_cs
 
تاريخ عضويت: دي ۱۳۸۸
پست ها: 8
تشكرها: 3
1 تشكر در 1 پست
پيش فرض

نقل قول:
نوشته اصلي بوسيله mardin200 نمايش پست
شما حتما باید از مونت کارلو استفاده کنید؟
آیا فکر نمی کنید تکنیک های reinforcement learning موثر تر باشند؟؟
حالا شما به هر روشی خواستین ، حل مساله رو مطرح کنید .

(فقط خیلی سریع ، چون 2 روز بیشتر وقت ندارم)
salar_cpp_cs آفلاين است   پاسخ با نقل قول
قديمي ۰۴-۱۲-۱۳۸۹, ۱۰:۰۵ بعد از ظهر   #7 (لینک دائم)
Super Moderator
 
آواتار alijy
 
تاريخ عضويت: خرداد ۱۳۸۹
محل سكونت: ارض الله الواسعة
پست ها: 78
تشكرها: 23
250 تشكر در 77 پست
My Mood: Khonsard
پيش فرض

سلام
من روش مونت کارلو رو خیلی یادم نمیاد، ولی الان که توضیحات انگلیسی مسئله رو خوندم به نظرم میاد که با توضیحاتی که شما توی چند تا پستتون دادید خیلی فرق میکنه. بعنوان نمونه صورت مسئله کاملا واضح توضیح میده که هر حرکت از 2 بخش حرکت افقی و حرکت عمودی تشکیل شده و غیر از محدودیت تعداد خونه هایی که میشه به هر سمت حرکت کرد و محدودیت مجموع دو بخش حرکت، هیچ محدودیتی روی جهت حرکت وجود نداره. تنها یه محدودیت اضافه برای مشکل تر کردن مسئله اضافه شده و اونم این پیش فرض هست که در 50% مواقع ماشین یک خونه اضافه تر (از محدودیت ذکر شده در مسئله) به جلو یا راست حرکت میکنه. این یعنی اینکه مثلا اگر در یه زمان انتخاب حرکت بصورت 4 خانه به جلو و 2 خانه به چپ باشه، اگر این حرکت رو جزء اون 50% حساب کنیم میتونه یه خانه اضافه مثلا به جلو حرکت کنه، ولو اینکه با این اقدام تعداد خانه های حرکت به جلو به 5 میرسه که پیش فرض اولیه مسئله رو (که تعداد حرکت در هر جهت کمتر از 5 تا خانه هست) رو نقض میکنه. به نظرم خوبه صورت مسئله رو با دقت بیشتری بررسی کنید. با فهم دقیق مسئله ایشالا راه حل مناسبش رو هم میتونید پیدا کنید.
alijy آفلاين است   پاسخ با نقل قول
از alijy تشكر كرده اند:
aimaryam (۰۷-۱۷-۱۳۸۹), Astaraki (۰۴-۱۲-۱۳۸۹)
قديمي ۰۴-۱۲-۱۳۸۹, ۱۰:۱۳ بعد از ظهر   #8 (لینک دائم)
عضو جدید
 
آواتار salar_cpp_cs
 
تاريخ عضويت: دي ۱۳۸۸
پست ها: 8
تشكرها: 3
1 تشكر در 1 پست
پيش فرض

نقل قول:
نوشته اصلي بوسيله alijy نمايش پست
سلام
من روش مونت کارلو رو خیلی یادم نمیاد، ولی الان که توضیحات انگلیسی مسئله رو خوندم به نظرم میاد که با توضیحاتی که شما توی چند تا پستتون دادید خیلی فرق میکنه. بعنوان نمونه صورت مسئله کاملا واضح توضیح میده که هر حرکت از 2 بخش حرکت افقی و حرکت عمودی تشکیل شده و غیر از محدودیت تعداد خونه هایی که میشه به هر سمت حرکت کرد و محدودیت مجموع دو بخش حرکت، هیچ محدودیتی روی جهت حرکت وجود نداره. تنها یه محدودیت اضافه برای مشکل تر کردن مسئله اضافه شده و اونم این پیش فرض هست که در 50% مواقع ماشین یک خونه اضافه تر (از محدودیت ذکر شده در مسئله) به جلو یا راست حرکت میکنه. این یعنی اینکه مثلا اگر در یه زمان انتخاب حرکت بصورت 4 خانه به جلو و 2 خانه به چپ باشه، اگر این حرکت رو جزء اون 50% حساب کنیم میتونه یه خانه اضافه مثلا به جلو حرکت کنه، ولو اینکه با این اقدام تعداد خانه های حرکت به جلو به 5 میرسه که پیش فرض اولیه مسئله رو (که تعداد حرکت در هر جهت کمتر از 5 تا خانه هست) رو نقض میکنه. به نظرم خوبه صورت مسئله رو با دقت بیشتری بررسی کنید. با فهم دقیق مسئله ایشالا راه حل مناسبش رو هم میتونید پیدا کنید.

دوست عزیز ، مشکل همینجاست که اصلا صورت مساله خودش مبهمه ، حالا شما هیچ

روشی رو واسه حل مساله در نظر ندارید ؟
salar_cpp_cs آفلاين است   پاسخ با نقل قول
قديمي ۰۴-۱۲-۱۳۸۹, ۱۱:۲۷ بعد از ظهر   #9 (لینک دائم)
Super Moderator
 
آواتار alijy
 
تاريخ عضويت: خرداد ۱۳۸۹
محل سكونت: ارض الله الواسعة
پست ها: 78
تشكرها: 23
250 تشكر در 77 پست
My Mood: Khonsard
پيش فرض

راستش صورت مسئله خیلی هم مبهم نیست. در واقع تنها نکته مبهم صورت مسئله برای من اینه که اگر ماشین در حرکتی بخواد از grid خارج بشه - که حرکت قابل قبولی نیست - دقیقا چه حرکتی بجاش انجام میشه، که اینم با توجه صورت مسئله اینطور میشه برداشت کرد که دقیقا یک حرکت یک خانه ای به یکی از 4 جهت (در صورت قابل قبول بودن) انجام میشه (البته مسئله میگه حداقل یک خانه که برای من مبهمه).
به هر حال یه راه حل برای این مسئله میتونه reinforcement learning باشه. به این صورت که برای هر کدوم از نقاط شروع مختلف، برنامه حرکت رو چندین مرتبه (100 بار، 1000 بار، 10000 بار) اجرا کنید. در هر بار اجرای برنامه، در هر مرحله بصورت random و با در نظر گرفتن تمام محدودیت های گفته شده حرکت بعدی انتخاب میشه. اگر حرکت انتخاب شده حرکت قابل قبولی باشه، اون حرکت رو بهمراه خانه ای (cell) که ماشین در اون لحظه در اون قرار داره ذخیره میکنید. هر کدوم از این رکورد ها یک example محسوب میشه. با اجرای برنامه به دفعات زیاد برای هر خونه چندین example تولید میشه. در نهایت چند راه برای جمع بندی این example ها دارید. ساده ترین اونها اینه که برای هر خانه اون حرکتی رو که بیشتر از همه تولید و استفاده شده، انتخاب کنید.
به این روش learning from positive examples میگن که در اون agent از حرکتهای صحیح و قابل قبول قبلی برای یادگیری استفاده میکنه. البته reinforcement learning بخش استفاده از negative examples هم داره که در راه حلهای کاملتر میشه اون رو هم اضافه کرد و برای افزایش optimality بکار برد.

ويرايش شده توسط alijy; ۰۴-۱۳-۱۳۸۹ در ساعت ۰۲:۵۸ قبل از ظهر دليل: typo
alijy آفلاين است   پاسخ با نقل قول
از alijy تشكر كرده اند:
aimaryam (۰۷-۱۷-۱۳۸۹), Astaraki (۰۴-۱۲-۱۳۸۹)
پاسخ



كاربران در حال ديدن تاپيک: 1 (0 عضو و 1 مهمان)
 

قوانين ارسال
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is فعال
شکلکها فعال است
كد [IMG] فعال است
كدهاي HTML غير فعال است
Trackbacks are فعال
Pingbacks are فعال
Refbacks are فعال




زمان محلي شما با تنظيم GMT +3.5 هم اکنون ۰۸:۴۱ قبل از ظهر ميباشد.


Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.

Teach and Learn at Hexib | Sponsored by www.Syavash.com and Product In Review

استفاده از مطالب انجمن در سایر سایت ها، تنها با ذکر انجمن هوش مصنوعي به عنوان منبع و لینک مستقیم به خود مطلب مجاز است

Inactive Reminders By Icora Web Design