Professional Documents
Culture Documents
دانشکده
مهندسی و علوم کامپیوتر توسط:
آرمین سلیمی بدر
a_salimibadr@sbu.ac.ir
1
عاملهای حلکننده مسائل
مسائل نمونه
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 2
عامل حلکننده مسئله ):(Problem-Solving Agent
بهدنبال رسیدن به حالت هدف از طریق ردشدن از مسیری از حاالت با شروع از
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 3
فرضیات در مورد محیط
قطعی
ایستا
شناختهشدگی
تکعامله
تعیین حاالت ،اعمال مجاز برای هر حالت و تأثیر اجرای هر عمل در هر حالت
یافتن جواب در وهله اول و سپس در نظر گرفتن معیارهای دیگر برای بهینهسازی
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 5
اجزای الزم برای تعریف مناسب یک مسئله:
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 6
آزمایش هدف
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 6
فضای حالت ) :(State-Spaceمجموعه همه حاالت موجود در
مسئله که با شروع از حالت اولیه و دنبالکردن کلیه اعمال
مجاز قابل دسترس هستند
قابل تعریف بر اساس حالت اولیه ،حالتها و انتقالها
بهشکل یک گراف جهتدار
a5
S1 a4 S3
a3
S2
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 7
مسیر ) :(Pathمجموعه حاالت متوالی مرتبط بر اساس اعمال
انتخابی در فضای حالت (حاصل از اعمال راهحل)
S0 -> S1 -> … -> Sn
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 7
راهحل ):(Solution
دنبالهای از اعمال که اجرای آنها با شروع از حالت اولیه ،به حالت هدف
منتهی شود.
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 8
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 9
v v
v v
v v
مجموعه اعمال :جابجایی مجاز برای خانه خالی (باال ،پایین ،چپ و راست)
تابع انتقال :نتیجه جابجایی مورد نظر خانه خالی در خانه فعلی
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 11
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 12
بستگی اندازه فضای حالت به تعریف اعمال مجاز
در هر حالت هر وزیر بتواند در هر یک از خانههای خالی قرار گیرد
تعداد حاالت غیرمجاز بسیاری دارد
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 12
در هر حالت با افزودن هر وزیر قرارگرفتن وزیر بعدی در خانههای
سطر و ستون مورد گارد توسط آن وزیر از مجموعه اعمال حذف
شود
𝟒𝟔 𝟗𝟒 𝟔𝟑 𝟓𝟐 𝟔𝟏 𝟗 𝟒 𝟏
× × × × × × ×
𝟏 𝟏 𝟏 𝟏 𝟏 𝟏 𝟏 𝟏
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 12
هر وزیر به ناچار در یکی از 8ستون قرار میگیرد
در هر عمل تکلیف یک وزیر در ستون خودش مشخص شود
سطر قرار گیری این وزیر از مجموعه اعمال حذف شود
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 12
فضای حالت نامتناهی
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 13
مسیریابی در خطوط هواپیمایی
مسیریابی ربات
طراحی پروتئین
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 14
هر گره معرف یک حالت از فضای حالت
تشکیل لیست باز ) (Open Listیا خط مقدم ) (Frontierتوسط گرههای گسترش نیافته
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 15
گراف معرف فضای حالت مسئله
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 15
گراف معرف فضای حالت مسئله
با داشتن لیست حاالت تکراری (لیست بسته) و اجتناب از تکرار (جستجوی گرافی)
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 16
کاملبودن ):(Completeness
بهینگی ):(Optimality
معموالً معادل حجم لیست باز (گرههایی که باید در حافظه باقی بمانند)
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 17
تعداد گرهها بههمراه یالها )|(|V| + |E
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 18
جستجوی ناآگاهانه ):(Uninformed Search Strategies
جستجوی دوطرفه
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 20
کامل
بهینه
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 21
عمق صفر 20=1 :گره
عمق 2d :dگره
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 22
مناسب برای زمانی که هزینه با شمارش گام متفاوت باشد
چنانچه هزینه تا گره nبا ) g(nنمایش داده شود ،گسترش گره با کمترین )g(n
ادامه الگوریتم تا زمانی که برگی دارای ) g(nکمتر از مسیر یافتشده نباشد
امکان قرار گرفتن در حلقه بینهایت برای یالهای بدون هزینه نظیر NoOp
)g(n
n
'n n
)c(n’,n
در غیر اینصورت باید گره دیگری مانند ’ nدر لیست باز
وجود داشته باشد که کوتاهترین مسیر به گره nاز آن عبور
کند که با توجه به افزایش صعودی هزینه غیر ممکن است
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 25
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 26
g(S) = 0 S بررسی آزمون هدف:
هدف نیست
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 27
g(S) = 0 S
80 99
R F
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 28
g(S) = 0 S
80 99
انتخاب برای گسترش
R F
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 29
g(S) = 0 S
80 99
بررسی آزمون هدف:
هدف نیست F
R
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 30
S
80 99
97
P
}Open List= {P,F
= )g(P) = g(R) + c(R,P
177
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 31
S
80 99
97
P
}Open List= {P,F
= )g(P) = g(R) + c(R,P
177 انتخاب Fبرای گسترش مبتنی بر کمتر
بودن ) g(Fاز )g(P
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 32
S
80 99
97
P
}Open List= {P,F
= )g(P) = g(R) + c(R,P
177 بررسی آزمون هدف برای :Fهدف نیست
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 33
g(S) = 0 S
80 99
R F
97 211
R F
97 211
R F
97 211
B
g(B) = 278
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 36
S
80 99
R F
97 211
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 38
جستجوی عمقی
استفاده از پشته (صف )LIFO
اعمال آزمون هدف در زمان ایجاد
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 39
جستجوی عمقی بازگشت به عقب درخت زیر
A
B C
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 40
A
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 41
A
B
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 43
A
C
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 44
غیرکامل :میتواند دارای عمق نامحدود در یک شاخه باشد
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 45
مشابه الگوریتم DFS
جستجوی عمق محدود l
حل کردن مشکل عمق بینهایت
درصورت بزرگتر بودن dاز lکامل نیست
دانش قبلی از مسئله میتواند در انتخاب lکمک کند
غیربهینه و غیرکامل در حالت کلی
پیچیدگی فضاییO(bl) :
پیچیدگی زمانیO(bl) :
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 46
اجرای الگوریتم عمق محدود با مقادیر مختلف lتا رسیدن به جواب
در صورت افزایش صعودی تابع هزینه با تعداد گامها ،بهینه است
مشکلساز نبودن بهدلیل آنکه عموماً تعداد گرهها در عمق پایین افزایش مییابد
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 47
اثبات پیچیدگی زمانی:
∞+ برای سری هندسی داریم:
𝒏
𝟏
⇒𝟏< 𝒙 = 𝒙
𝒙𝟏−
𝟎=𝒏
∞+ ∞+
𝒅 𝒏
𝒅 𝟏 𝟏𝒏−
𝟏
𝒙 = ⇒ 𝒙𝒏 = 𝟐
𝒙𝒅 𝒙 𝒅𝒙 𝟏 − 𝒙𝟏−
𝟎=𝒏 𝟏=𝒏
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 47
اثبات پیچیدگی زمانی:
تعداد گرههای گسترشیافته روش :IDS
𝒅𝒃 𝑵 = 𝒃𝒅 + 𝒅 − 𝟏 𝒃𝟐 + ⋯ + 𝟑𝒃𝒅−𝟐 + 𝟐𝒃𝒅−𝟏 +
𝟐 𝟐𝒅− 𝟏𝒅−
𝟏 𝟏 𝟏 𝟏
𝟐 = 𝒃𝒅 𝟏 + 𝟑+ 𝟏 …+ 𝒅 − 𝒅+
𝒃 𝒃 𝒃 𝒃
𝒅 𝟏𝒏− ∞+ 𝟏𝒏−
𝟏 𝟏
𝒅𝒃 = 𝒏. 𝒅𝒃 < 𝒏.
𝒃 𝒃
𝟏=𝒏 𝟏=𝒏
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 47
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 48
اجرای دو الگوریتم جستجوی همزمان از حالت اولیه و حالت هدف
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 49
عمق 0 ریشه
.
.
.
مشابه با روش هزینه یکنواخت با تفاوت تابع ارزیابی fبه جای g
انتخاب تابع مکاشفهای ارزیابی تأثیر بسزایی در کارایی روش دارد
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 51
گسترش گرهای که کمترین ) h(nرا دارد
کامل نیست
ممکن است مسیری را انتخاب کند که هرگز به مقصد نرسد
بهینه نیست
انتخاب تابع مکاشفهای میتواند در نزدیکشدن به جواب بهینه مؤثر باشد
کاهش دهد
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 52
A
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 53
A
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 54
A
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 55
A
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 56
درنظرگرفتن تابع ارزیابی ) f(nبصورت مجموع ) h(nو )g(n
▪ مفهوم تابع ) :f(nتقریب هزینه مسیر گذرنده از n
بررسی آزمون هدف در زمان انتخاب گره جهت گسترش
کامل و بهینه
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 57
ریشه
)g(n
n
)h(n
هدف
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 58
ریشه
)g(n
)’c(n,n n
)g(n’) = g(n) + c(n’,n
'n
)h(n
)’h(n هدف
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 59
ریشه
)g(n
)’c(n,n n
)g(n’) = g(n) + c(n’,n
'n
)h(n
)’h(n هدف
ℎ 𝑛 ≤ 𝑐 𝑛, 𝑛′ + ℎ 𝑛′ ⇒ 𝑔 𝑛 + ℎ 𝑛 ≤ 𝑔 𝑛 + 𝑐 𝑛, 𝑛′ + ℎ 𝑛′
⇒ 𝑔 𝑛 + ℎ 𝑛 ≤ 𝑔 𝑛′ + ℎ 𝑛′ ⇒ 𝑓 𝑛 ≤ 𝑓 𝑛′
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 60
اثبات بهینگی
انتخاب گره هدف برای گسترش =< یافتن کوتاهترین مسیر تا آن
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 61
h(A) = 20 A 18 h(C) = 30
G
h(G) = 0
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 62
f(A) = h(A) +g(A) = 20 A
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 63
A
B C
f(B) = h(B) +g(B) = 15
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 64
گره تکراری
محسوب
نمیشود
A
چون در یک
مسیر
f(C) = 48
نیستند
B C
f(C) = 45
C D f(D) = 18
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 65
A
f(C) = 48
B C
f(C) = 45
C D
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 66
A
f(C) = 48
B C
f(C) = 45
C D
E
f(F) = 35
F
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 67
A
f(C) = 48
B C
f(C) = 45
C D
E
F
f(G) = 37
G
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 68
A
f(C) = 48
B C
f(C) = 45
C D
E
F
f(G) = 37
بررسی آزمون هدف در زمان انتخاب
به دلیل کمترین مقدار fدر لیست باز G
و اتمام الگوریتم آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی
69
کوتاهترین مسیر از Aradبه Bucharest
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 70
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 7161
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 7261
اگر * Cهزینه مسیر بهینه باشد
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 73
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 74
پیچیدگی الگوریتم * Aبه خطای بین تابع شهودی منتخب و تابع هزینه واقعی یعنی
h*-hمرتبط است
راهحلها:
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 75
الگوریتم * :IDAاعمال ایده الگوریتم IDS
استفاده از ) f(nمحدود در هر تکرار بهجای عمق
مشکل در زمان حقیقی بودن هزینه
الگوریتم RBFS
حافظه خطی
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 77
∞
366 A
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 78
∞
366 A
44
7
گره Sدارای کمترین مقدار fدر لیست باز بوده و برای گسترش انتخاب میشود
این مقدار بهعنوان حداکثر مقدار fدر زیرشاخه ایجادشده برای ادامه جستجو انتخب میشود
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 79
∞
366 A
44
7
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 80
∞
366 A
44
7
بین هزینه سایر فرزندان Sو مقدار جایگزین خود ( )447کمینه متعلق به گره Fو برابر 415است
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 81
∞
366 A
44
7
366 A
44
7
417
A F O RV 413
366 A
44
7
41
7
A F O RV
417
646 415 671
S B
591 450
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 84
∞
366 A
44
7
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 85
∞
366 A
44
7
S T Z 449
393 447
44
7
A F O RV 417
418 B C RV 605
615
86
استفاده الگوریتمهای * IDAو RBFSاز حجم محدود حافظه
هزینه گره والد میشود تا درصورت نیاز گسترش مجدد انجام شود )*(SMA
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 87
امکان تعریف توابع شهودی مختلف برای یک مسئله
تعریف غلبه:
چنانچه برای یک مسئله دو تابع h1و h2قابل تعریف باشند و
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 88
سادهسازی مسئله )(Relaxed problem
یادگیری )(Learning
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 89
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 90
آرمین سلیمی بدر -دانشکده مهندسی و علوم کامپیوتر -دانشگاه شهیدبهشتی 91