Informed (heuristic / greedy) search algorithms المقصود ب informed search algorithms • هى algorithmsبتبحث عن الطريق بين ال startوال goalف graphبس بتبقى عارفة احنا قربنا قد ايه من الهدف وبتحاول تجيب أقصر طريق Greedy best-first search • لكل nodeبيكون معلوم المسافة المباشرة بينها وبين ال ، goalبنسمى المسافة دى heuristicاو H • بنختار دايما ال nodeاألقل ف قيمة الH مثال لو عايزين نوجد الطريق من Aradل Bucharest بُعد كل مدينة عن ( Bucharestقيم ال) H Greedy best-first • نبدأ ب( Aradبنكتب جوا الدايرة قيمة الH من الليستة اللى كانت ع اليمين ف االسليد اللى فاتت) A 366 Greedy best-first • هل Aهى الهدف ؟ طالما أل يبقى نفرعها A 366 T 329 S 253 Z 374 Greedy best-first • نختار األصغر ف قيمة ال Hفهنختار الS A 366 T 329 S 253 Z 374 Greedy best-first • هل ال Sهى الهدف ؟ طالما أل نفرعها A 366 T 329 S 253 Z 374 R 193 F 178 O 380 Greedy best-first • نختار ال ، Fهل هى الهدف ؟ طالما أل نفرعها A 366 T 329 S 253 Z 374 R 193 F 178 O 380 B 0 Greedy best-first • نختار ال Bهل هى الهدف ؟ آه يبقى نوقف حل ويبقى الطريق هو A -> S -> F -> B الحظ اننا اعتمدنا اعتماد كلى على قيم ال Hاللى على يمين الخريطة ومستخدمناش قيم المسافات بين المدن A 366 T 329 S 253 Z 374 R 193 F 178 O 380 B 0 A* search • يعتبر أحسن ألجورزم ألنه بيجمع بين ميزة ال uniform costبأنه بيعتمد على المسافات بين المدن ،وميزة ال greedy best-firstألنه بيعتمد على قيم ال Hاللى كانت على يمين الخريطة • الفكرة اننا واحنا ماشيين بنجمع المسافات ونحسب المسافة الكلية عادى زى ال uniform costولكن جوا الدايرة مش بنكتب المسافة الكلية انما بنكتب مجموع المسافة الكلية والH • بعد كدة بنختار ال nodeاألقل ف مجموع المسافة الكلية والH • المسافة اللى اتحركناها بنسميها G • مجموع ال Gوال Hبنسميه F الخريطة مرة تانية A* search • نبدأ من : Arad • ال Gبصفر ألننا لسة متحركناش • ال Hمن على يمين الخريطة ب366 • المجموع Fبيساوى 366 + 0نكتبه جوا الدايرة A 366 A* search A 366 • ال Aمش الهدف يبقى نفرعها • نكتب على األضالع قيم المسافات اللى ف الخريطة نفسها (زى ال)uniform cost 118 T 140 S 75 Z A* search A 366 • بالنسبة لل Zالمسافة الكلية اللى اتحركناها عشان نوصل لها (قيمة ال )Gبتساوى 75 • قيمة ال Hمن على يمين الخريطة بتساوى 374 • يبقى ال Fبتساوى ال Hزائد ال Gبتساوى 75 + 374 = 449 118 T 140 S 75 Z 449 A* search A 366 • بالنسبة لل Sالمسافة الكلية اللى اتحركناها عشان نوصل لها (قيمة ال )Gبتساوى 140 • قيمة ال Hمن على يمين الخريطة بتساوى 253 • يبقى ال Fبتساوى ال Hزائد ال Gبتساوى 140 + 253 = 393 118 T 140 S 393 75 Z 449 A* search A 366 • بالنسبة لل Tالمسافة الكلية اللى اتحركناها عشان نوصل لها (قيمة ال )Gبتساوى 118 • قيمة ال Hمن على يمين الخريطة بتساوى 329 • يبقى ال Fبتساوى ال Hزائد ال Gبتساوى 118 + 329 = 447 118 T 447 140 S 393 75 Z 449 A* search A 366 • نختار ال Sألنها األقل ف قيمة الF • ال Sمش الهدف يبقى نفرعها 118 S 393 T 447 80 R 140 99 F 75 Z 449 151 O A* search A 366 • بالنسبة لل: O 118 • قيمة ال( Gالمسافة الكلية من البداية) بتساوى 140 + 151 = 291 يبقى قيمة ال Fبتساوى H + G F = 380 + 291 = 671 S 393 T 447 80 وقيمة ال Hمن على يمين الخريطة بتساوى 380 R 140 99 F 75 Z 449 151 O 671 A* search A 366 • بالنسبة لل: F 118 • قيمة ال( Gالمسافة الكلية من البداية) بتساوى 140 + 99 = 239 يبقى قيمة ال Fبتساوى H + G F = 239 + 178 = 417 S 393 T 447 80 وقيمة ال Hمن على يمين الخريطة بتساوى 178 R 140 99 F 417 75 Z 449 151 O 671 A* search A 366 • بالنسبة لل:R 118 • قيمة ال( Gالمسافة الكلية من البداية) بتساوى 140 + 80 = 220 يبقى قيمة ال Fبتساوى H + G F = 220 + 193 = 413 S 393 T 447 80 وقيمة ال Hمن على يمين الخريطة بتساوى 193 R 413 140 99 F 417 75 Z 449 151 O 671 A* search A 366 • نختار ال ، Rطالما مش الهدف نفرعها 118 140 S 393 T 447 80 99 R 413 F 417 146 97 C P 75 Z 449 151 O 671 A* search A 366 • بالنسبة لل: P 118 • قيمة ال Gبتساوى المسافة الكلية 140 S 393 T 447 140 + 80 + 97 = 317 80 وقيمة ال Hمن على يمين الخريطة 98 يبقى 99 R 413 F = 317 + 98 = 415 146 C F 417 97 P 415 75 Z 449 151 O 671 A* search A 366 • بالنسبة لل: C 118 • قيمة ال Gبتساوى المسافة الكلية 140 S 393 T 447 140 + 80 + 146 = 366 80 وقيمة ال Hمن على يمين الخريطة 160 يبقى 99 R 413 F = 366 + 160 = 526 146 C 526 F 417 97 P 415 75 Z 449 151 O 671 A* search A 366 • نختار ال Pألنها األقل ف قيمة الF 118 • ال Pمش الهدف يبقى نفرعها 140 S 393 T 447 80 99 R 413 146 C 526 F 417 97 101 B P 415 138 C 75 Z 449 151 O 671 A* search A 366 • بالنسبة للC 118 • المسافة الكلية Gبتساوى 140 S 393 T 447 140 + 80 + 97 + 138 = 455 80 وقيمة ال Hمن يمين الخريطة 160 يبقى 99 R 413 F = 455 + 160 = 615 146 C 526 F 417 97 101 B P 415 138 C 615 75 Z 449 151 O 671 A* search A 366 • بالنسبة للB 118 • المسافة الكلية Gبتساوى 140 S 393 T 447 140 + 80 + 97 + 101 = 418 80 وقيمة ال Hمن يمين الخريطة 0 يبقى 99 R 413 F = 418 + 0 = 418 146 C 526 F 417 97 101 B 418 P 415 138 C 615 75 Z 449 151 O 671 A* search A 366 • نختار ال Fألنها األقل ،وطالما مش الهدف نفرعها 118 140 S 393 T 447 80 99 R 413 146 C 526 75 B 418 151 F 417 P 415 O 671 211 97 101 Z 449 B 138 C 615 A* search A 366 • بالنسبة لل Bاللى ظهرت ،قيمة ال Gبتساوى 118 140 + 99 + 211 = 450 140 S 393 T 447 وقيمة ال Hبصفر يبقى المجموع 450 80 99 R 413 146 C 526 75 B 418 151 F 417 P 415 O 671 211 97 101 Z 449 B 450 138 C 615 A* search A 366 • نختار ال Bاللى تحت ألنها األقل ،هى الهدف يبقى نوقف الحل ويبقى الطريق 118 140 S 393 T 447 A -> S -> R -> P -> B هو ده اقصر طريق بين Aradو Bucharest 80 99 R 413 146 C 526 75 B 418 151 F 417 P 415 O 671 211 97 101 Z 449 B 450 138 C 615