حل برجهای هانوی با هوش مصنوعی

بازم برجهای هانوی !!!!

این ترم من هوش مصنوعی دارم و استاد برجهای هانوی رو به عنوان پرژه هوش تعیین کرده . توی درس ساختمان داده یاد گرفتیم که این مسئله رو با توابع بازگشتی چطور میشه حل کرد . ولی در درس هوش مصنوعی باید با روش هوش مصنوعی مسئله رو حل کنیم و از توابع بازگشتی نباید استفاده کنیم .

دانلود سورس برنامه ( حجم 21 کیلو بایت )

 

برای حل مسائل هوش مصنوعی اول باید یک ساختمان داده مناسب برای نگه داری Stateها در حافظه تعریف کنیم . این اولین قدم برای حل مسئله ست . در قدم بعدی باید شرایط اولیه و شرایط نهایی مسئله رو تعریف کنیم . شرایط اولیه جایی ست که از آنجا آغاز به حل می کنیم و شرایط نهایی جایی ست که می خواهیم به آن برسیم . قدم بعدی تعریف اپراتورهاست . هر اپراتور از دو بخش تشکیل شده قسمت اول یک شرط است و قسمت دوم یک عمل است که در صورت درست بودن شرط اجرا میشود .

مهمترین قسمت انتخاب یک الگوریتم جستجوست تا در فضای حالت جستجو کنیم و به راه حل مسئله برسیم . در اینجا من از BFS استفاده کردم . برای پیاده سازی BFS از یک صف استفاده می کنیم تا در فضای حالت جستجو کنیم . تا زمانی که صف خالی نشده یک State از ابتدای صف خارج میکنیم و بررسی میکنیم که آیا Goal هست یا نه اگر Goal بود مسئله حل شده ولی اگر نبود اپراتورها را روی آن اعمال میکنیم و Stateهای جدید بدست آمده رو در Agenda که در اینجا همان صف است وارد می کنیم و این پروسه آنقدر ادامه پیدا میکند تا اینکه یا به Goal State برسیم یا اینکه همه ی حالتها را بررسی کرده باشیم .

دربارهٔ DeltaCode

Somewhere near the sky Far away from people Far away from noise Somewhere near yourself

Posted on آوریل 25, 2012, in هوش مصنوعی and tagged , , . Bookmark the permalink. 3 دیدگاه.

  1. یادش بخیر به عنوان پروژه به ما هم داده بود منتهی من آخر ترم به این فکر افتادم که روش کار کنم. این لینک http://stackoverflow.com/questions/6401872/solving-the-tower-of-hanoi-by-using-a-good-state-space-and-then-a-search-tree رو ببین، اون زمان پرسیدم و بعدها بهش جواب دادن.

  2. پروژه ی ساده ای بود من در عرض دو ساعت و نیم نوشتمش و جوابم گرفتم . با اینکه هر ترم موضوع پروژه همین هستش ولی تعداد کمی از بچه ها میتونن برنامش رو بنویسن ! ! !

    لینک جالبی بود تشکر .

  3. ایول استاد وحید

پاسخی بگذارید

در پایین مشخصات خود را پر کنید یا برای ورود روی شمایل‌ها کلیک نمایید:

نشان‌وارهٔ وردپرس.کام

شما در حال بیان دیدگاه با حساب کاربری WordPress.com خود هستید. بیرون رفتن / تغییر دادن )

تصویر توییتر

شما در حال بیان دیدگاه با حساب کاربری Twitter خود هستید. بیرون رفتن / تغییر دادن )

عکس فیسبوک

شما در حال بیان دیدگاه با حساب کاربری Facebook خود هستید. بیرون رفتن / تغییر دادن )

عکس گوگل+

شما در حال بیان دیدگاه با حساب کاربری Google+ خود هستید. بیرون رفتن / تغییر دادن )

درحال اتصال به %s

%d وب‌نوشت‌نویس این را دوست دارند: