PDA

View Full Version : سوال: حل پازل با الگوریتم a-star



morteza_1234m
یک شنبه 30 تیر 1392, 23:17 عصر
سلام
می خوام معمای پازل 16 تایی را با A-STAR حل کنم.
یک درخواست داشتم ، یکی برای من a-star رو روی معمای پازل توضیح بده .
چیز هایی که من می دونم اینه که ما یک حالت GoalState داریم ، یک حالت Intialُstate
GoalState: حالت پازل هدف می باشد که همه خانه های آن مرتب هستند .
IntailState: حالتی که به هم ریخته هست پازل ما

ClosedList: لیستی از حالت های expaned شده بدون تکراری ها
OpenListed: لیست تمام حالت های expaned شده که با تکراری ها می باشد . در واقع ClosedList باعث می شه که در openlisted شاخه های تکراری رو تولید نکنیم .
h(n)تابع هیورستیک : تابعی که از گره شروع تا n را تخمین می زند
g(n):تابعی که مقدار واقعی شروع تا n را بیان می کند
تابع f(n) هم که هزینه هر حالت expaned شده را بیان می کند .
حالا اگر کسی بتونه برام روش پیاده سازی این و درختش رو توضیح بده و اینکه چه جوری g(n) رو به دست بیاریم ممنون می شم.

bitasoft.ir
سه شنبه 12 شهریور 1392, 21:34 عصر
سلام
می خوام معمای پازل 16 تایی را با A-STAR حل کنم.
یک درخواست داشتم ، یکی برای من a-star رو روی معمای پازل توضیح بده .
چیز هایی که من می دونم اینه که ما یک حالت GoalState داریم ، یک حالت Intialُstate
GoalState: حالت پازل هدف می باشد که همه خانه های آن مرتب هستند .
IntailState: حالتی که به هم ریخته هست پازل ما

ClosedList: لیستی از حالت های expaned شده بدون تکراری ها
OpenListed: لیست تمام حالت های expaned شده که با تکراری ها می باشد . در واقع ClosedList باعث می شه که در openlisted شاخه های تکراری رو تولید نکنیم .
h(n)تابع هیورستیک : تابعی که از گره شروع تا n را تخمین می زند
g(n):تابعی که مقدار واقعی شروع تا n را بیان می کند
تابع f(n) هم که هزینه هر حالت expaned شده را بیان می کند .
حالا اگر کسی بتونه برام روش پیاده سازی این و درختش رو توضیح بده و اینکه چه جوری g(n) رو به دست بیاریم ممنون می شم.

سلام
در این لینک توضیحات کامل به همراه سرس کد موجود می باشد:

http://www.codeproject.com/Articles/616874/8-15-Puzzle-using-A-A-Star-Algorithm-Csharp