SlideShare une entreprise Scribd logo
1  sur  217
Télécharger pour lire hors ligne
ARTIFICIAL
INTELLIGENCE
‫الصنعي‬ ‫الذكاء‬ ‫محور‬
By Eng. Joud Khattab
Content
■ Overview.
■ Prolog.
■ Search Algorithms.
– Uniformed Search Algorithm.
– Informed Search Algorithm.
■ Games Algorithms.
– Min Max.
– Alpha Beta.
■ And Or Graph.
■ Logic.
■ MCQ.
2
OVERVIEW
3
Overview
■‫الصنعي‬ ‫الذكاء‬ ‫تعريف‬:
–‫مثل‬ ‫التفكير‬ ‫أو‬ ‫اإلنسان‬ ‫مثل‬ ‫التصرف‬ ‫أنه‬ ‫على‬ ‫الصنعي‬ ‫الذكاء‬ ‫تعريف‬ ‫يمكننا‬‫اإلنسان‬.
‫أن‬ ‫على‬ ‫الصنعي‬ ‫الذكاء‬ ‫تعريف‬ ‫يمكننا‬ ‫لذلك‬ ‫األخطاء‬ ‫في‬ ‫يقع‬ ‫قد‬ ‫اإلنسان‬ ‫ولكن‬‫ه‬
‫وعقالني‬ ‫منطقي‬ ‫بشكل‬ ‫التفكير‬ ‫أو‬ ‫التصرف‬.
–‫تعريف‬Turing‫غرف‬ ‫في‬ ‫حاسب‬ ‫مع‬ ‫إنسان‬ ‫وضعنا‬ ‫إذا‬ ‫بأنه‬ ‫عرفه‬ ‫والذي‬ ‫الصنعي‬ ‫للذكاء‬‫ة‬
‫اإلنسان‬ ‫وأخذ‬ ‫لوحده‬ ‫وحاسب‬ ‫حاسب‬ ‫مع‬ ‫إنسان‬ ‫له‬ ‫مجاورة‬ ‫غرفة‬ ‫في‬ ‫ووضعنا‬ ،‫واحدة‬
‫يعرف‬ ‫أن‬ ‫يستطع‬ ‫لم‬ ‫فإذا‬ ‫الثانية‬ ‫الغرفة‬ ‫مع‬ ‫يتخاطب‬ ‫األولى‬ ‫الغرفة‬ ‫في‬ ‫الموجود‬‫مصدر‬
‫أنها‬ ‫اآللة‬ ‫هذه‬ ‫عن‬ ‫نقول‬ ‫عندها‬ ‫اآللة‬ ‫أو‬ ‫اآلخر‬ ‫اإلنسان‬ ‫هو‬ ‫هل‬ ‫له‬ ‫القادمة‬ ‫األجوبة‬
‫ذكية‬.
4
Overview
■‫الصنعي‬ ‫الذكاء‬ ‫استخدامات‬:
–‫الطبيعية‬ ‫اللغات‬ ‫معالجة‬
■‫الحاسب‬ ‫مع‬ ‫للتخاطب‬ ‫الصوت‬ ‫استخدام‬ ‫أو‬ ‫مكتوب‬ ‫نص‬ ‫إلى‬ ‫الكالم‬ ‫تحويل‬.
–‫الرؤيا‬ ‫مسألة‬:
■‫الوجوه‬ ‫واكتشاف‬ ‫الصور‬ ‫معالجة‬ ،‫آلي‬ ‫بشكل‬ ‫السيارة‬ ‫قيادة‬ ‫أو‬ ‫اآللي‬ ‫الطيار‬.
–‫الروبوت‬
–‫المعطيات‬ ‫عن‬ ‫التنقيب‬
■‫جديدة‬ ‫معلومات‬ ‫على‬ ‫للحصول‬ ‫المعطيات‬ ‫قاعدة‬ ‫في‬ ‫المخزنة‬ ‫المعطيات‬ ‫من‬ ‫يستفيد‬
■‫المخابر‬ ‫أحد‬ ‫معطيات‬ ‫قاعدة‬ ‫خالل‬ ‫من‬ ‫ال‬ ‫أو‬ ‫وباء‬ ‫وجود‬ ‫استنتاج‬ ‫مثل‬.
–...
5
PROLOG
6
Prolog
■‫المنطقية‬ ‫البرمجة‬ ‫على‬ ‫تعتمد‬ ‫لغة‬ ‫هي‬:
–‫المهم‬ ‫لينجز‬ ‫المستثمر‬ ‫قبل‬ ‫من‬ ‫للحاسب‬ ‫عطى‬ُ‫ت‬ ‫والقواعد‬ ‫الحقائق‬ ‫من‬ ‫مجموعة‬‫ة‬
‫منه‬ ‫المطلوبة‬.
■‫المنطقي‬ ‫البرنامج‬ ‫أقسام‬ ‫هي‬ ‫والتي‬ ‫اللغة‬ ‫أقسام‬:
–‫الحقائق‬(facts:)‫إلنجاز‬ ‫للحاسب‬ ‫المستخدم‬ ‫يعطيها‬ ‫التي‬ ‫المعلومات‬ ‫مجموعة‬ ‫وهي‬
‫منه‬ ‫المطلوبة‬ ‫المهمة‬.
–‫التساؤالت‬(queries:)‫المعلومات‬ ‫على‬ ‫الحصول‬ ‫طريقها‬ ‫عن‬ ‫نستطيع‬.
–‫المتحوالت‬(variables.)
–‫القواعد‬(rules:)‫المهمة‬ ‫إلنجاز‬ ‫قواعد‬ ‫لتشكيل‬ ‫الحقائق‬ ‫على‬ ‫االعتماد‬ ‫يمكننا‬
‫المطلوبة‬.
7
Prolog
Facts
■‫الحقائق‬:
–‫مثال‬:‫في‬ ‫عنها‬ ‫ونعبر‬ ‫زرقاء‬ ‫السماء‬prolog‫بالشكل‬:blue (sky).
–‫أن‬ ‫حيث‬blue‫بينما‬ ‫العالقة‬ ‫هي‬sky‫العالقة‬ ‫هذه‬ ‫أغراض‬ ‫هي‬.
–‫بنقطة‬ ً‫دائما‬ ‫الحقيقة‬ ‫تنتهي‬.
–‫صغيرة‬ ‫بأحرف‬ ‫تكتب‬ ‫العالقة‬ ‫وأغراض‬ ‫العالقة‬ ‫أسماء‬ ً‫دائما‬.
–‫امثلة‬:
■‫زيد‬ ‫بن‬ ‫أسامة‬:son(ousama, zaid).
■‫القراءة‬ ‫يحب‬ ‫أسامة‬:like(ousama, reading).
■‫الخيل‬ ‫ركوب‬ ‫يحب‬ ‫أسامة‬:like(ousama, horse_riding).
–‫ع‬ ‫نحصل‬ ‫طريقها‬ ‫عن‬ ‫والتي‬ ‫للحل‬ ‫الالزمة‬ ‫البيانات‬ ‫قاعدة‬ ‫شكلنا‬ ‫قد‬ ‫نكون‬ ‫وبذلك‬‫لى‬
‫الحل‬.
8
Prolog
Facts Examples
■ Lina is daughter of Ahmad:
– daughter(lina, ahmad).
■ Ahmad likes reading:
– like(ahmad, reading).
9
Prolog
Queries
■‫التساؤالت‬:
–‫بنقطة‬ ً‫دائما‬ ‫التساؤل‬ ‫تنتهي‬.
–‫إما‬ ‫أدخلناها‬ ‫التي‬ ‫المعلومات‬ ‫على‬ ‫بناء‬ ‫الجواب‬ ‫يكون‬Yes‫او‬No.
–‫أمثلة‬
■‫القراءة؟‬ ‫أسامة‬ ‫يحب‬ ‫هل‬?- like(ousama, reading).
■‫القراءة؟‬ ‫زيد‬ ‫يحب‬ ‫هل‬?- like(zaid, reading).
10
Prolog
Queries Examples
■ Facts:
– like(lina, horse_riding).
– like(ahmad, reading).
■ Query1: ?- like(lina, horse_riding).
– result: Yes.
■ Query2: ?- like(lina, reading).
– result: No.
11
Prolog
Variables
■‫المتحوالت‬:
–‫أسامة؟‬ ‫يحبه‬ ‫الذي‬ ‫الشيء‬ ‫هو‬ ‫ما‬?- like(ousama, X).
■‫هو‬ ‫متحول‬ ‫استخدمنا‬ ‫أننا‬ ‫هنا‬ ‫نالحظ‬X‫هي‬ ‫اإلجابة‬ ‫ستكون‬ ‫وبذلك‬X = reading
–‫ماذا؟‬ ‫يحب‬ ‫من‬.?- like (X, Y)
■‫هو‬ ‫الجواب‬ ‫فيكون‬:X = ousama, Y = reading
■‫ندخل‬ ‫ثم‬;‫على‬ ‫لنحصل‬:X = ousama, Y = horse_riding
12
Prolog
Variables Examples
■ Facts:
– like(lina,horse_riding).
– like(ahmad, reading).
■ Query1: ?- like(lina, Y). Y is variable “What does lina like?”
– Result: Y=horse_riding
■ Query2: ?-like(X, reading).
– Result: X=ahmad
13
Prolog
Rules
■‫القواعد‬:
–‫البرنامج‬ ‫في‬ ‫جزء‬ ‫أهم‬ ‫هي‬.
–‫الشكل‬ ‫تأخذ‬:A :- B1, B2, …, Bn .
–‫حيث‬A‫القاعدة‬ ‫رأس‬ ‫وهو‬ ‫األيسر‬ ‫الطرف‬ ‫هو‬.
–‫أخرى‬ ‫لقواعد‬ ‫استخدام‬ ‫أو‬ ‫حقائق‬ ‫هو‬ ‫األيمن‬ ‫الطرف‬ ‫بينما‬.
–‫عالقة‬ ‫إلى‬ ‫الفاصلة‬ ‫ترمز‬ ً‫دائما‬and‫عالقة‬ ‫إلى‬ ‫المنقوطة‬ ‫الفاصلة‬ ‫و‬or.
–‫األي‬ ‫الطرف‬ ‫يكون‬ ‫أن‬ ‫يجب‬ ً‫صحيحا‬ ‫األيسر‬ ‫الطرف‬ ‫يكون‬ ‫حتى‬ ‫السابق‬ ‫المثال‬ ‫في‬‫من‬
‫صحيح‬ ‫كله‬.
–‫حقيقة‬ ‫القاعدة‬ ‫تصبح‬ ‫عندها‬ ‫موجود‬ ‫غير‬ ‫اليميني‬ ‫الطرف‬ ‫كان‬ ‫إذا‬.
14
Prolog
Rules Examples
■ Facts:
– father(ibrahim, ammar).
– father(suliaman, rose).
– father(abdullah, suliaman).
■ Rule:
– grandFather(X,Y):- father(X,Z), father(Z,Y).
■ Query1: grandFather(abdullah,Y).
– Result: Y= rose.
■ Query2: grandFather(X,Y).
– Result: X=abdullah ,Y= rose.
■ Query3: grandFather(x,y).
– Result: false.
15
Prolog
Exercises
■ Uncle:
– uncle(X,Y):- brother(X,Z),father(Z,Y).
– uncle(X,Y):- brother(X,Z),mother(Z,Y).
■ Aunt:
– aunt(X,Y):- sister(X,Z), father(Z,Y).
– aunt(X,Y):- sister(X,Z), mother(Z,Y).
16
Prolog
Cut
■‫القطع‬ ‫ة‬ّ‫ي‬‫عمل‬! :
■‫التالية‬ ‫القواعد‬ ‫و‬ ‫الحقائق‬ ‫لدي‬ ‫ليكن‬:
–‫الحقائق‬:
– q(A). q(B). r(A). a(A). a(B).
–‫القواعد‬:
– p1(X) :- q(X) , ! , r (X) .
– p1(X) :- a(X) .
– p2(X) :- q(X) , r(X) , ! .
– p2(X) :- a(X) .
17
Prolog
Cut
■‫التساؤل‬ ‫وضعنا‬ ‫لو‬p1(A).
–‫ب‬ ‫نقوم‬matching‫التساؤل‬ ‫و‬ ‫القواعد‬ ‫بين‬.
–‫هل‬q‫أجل‬ ‫من‬A،‫قة‬ّ‫ق‬‫مح‬ ‫ها‬ّ‫ن‬‫أ‬ ‫نجد‬ ‫الحقائق‬ ‫من‬ ‫قة؟‬ّ‫ق‬‫مح‬
–‫الـ‬ ‫ة‬ّ‫ي‬‫عمل‬ ‫هي‬ ‫تي‬ّ‫ال‬ ‫و‬ ‫القاعدة‬ ‫من‬ ‫الثانية‬ ‫للعبارة‬ ‫ننتقل‬ ‫قة‬ّ‫ق‬‫مح‬ ‫ها‬ّ‫ن‬‫أ‬ ‫بما‬cut !،
–‫أخرى‬ ‫قاعدة‬ ‫أي‬ ‫في‬ ‫النظر‬ ‫دون‬ ‫القاعدة‬ ‫هذه‬ ‫إتمام‬ ‫بعد‬ ّ‫ل‬‫الح‬ ‫عن‬ ‫ف‬ّ‫التوق‬ ‫معناها‬ ‫و‬
–‫الـ‬ ‫بعد‬ ‫و‬!ِ‫ـ‬‫ل‬ ‫سينتقل‬r(X)،‫هل‬r‫أجل‬ ‫من‬A‫؟‬ ‫قة‬ّ‫ق‬‫مح‬
–‫بالنتيجة‬ ً‫إذا‬ ،‫قة‬ّ‫ق‬‫مح‬ ‫ها‬ّ‫ن‬‫أ‬ ‫نجد‬ ‫الحقائق‬ ‫من‬:yes
–‫كانت‬ ‫لو‬q(X)‫الـ‬ ‫يرى‬ ‫لن‬ ‫و‬ ‫القاعدة‬ ‫يكمل‬ ‫لن‬ ،‫خاطئة‬!‫التالي‬ ‫للقاعدة‬ ‫سينتقل‬ ‫و‬‫ة‬..
18
Prolog
Cut
■‫التساؤل‬ ‫وضعنا‬ ‫لو‬p1(B).
–ّ‫ن‬‫أل‬ ‫لكن‬ ‫و‬ ‫األسلوب‬ ‫بنفس‬r(B)‫سيعطي‬ ‫قة‬ّ‫ق‬‫مح‬ ‫غير‬no
■‫التساؤل‬ ‫وضعنا‬ ‫لو‬p2(A).
–q‫أجل‬ ‫من‬Aِ‫ـ‬‫ل‬ ‫سينتقل‬ ،‫قة‬ّ‫ق‬‫مح‬r(X)‫و‬r‫أجل‬ ‫من‬a‫لـ‬ ‫بعدها‬ ‫وينتقل‬ ،‫قة‬ّ‫ق‬‫مح‬!ً‫إذا‬ ،
‫النتيجة‬ ‫سيعطي‬yes‫ف‬ّ‫يتوق‬ ‫و‬.
■‫التساؤل‬ ‫وضعنا‬ ‫لو‬p2(B).
–q‫أجل‬ ‫من‬Bّ‫ن‬‫لك‬ ،‫قة‬ّ‫ق‬‫مح‬r‫أجل‬ ‫من‬ ‫قة‬ّ‫ق‬‫مح‬ ‫غير‬B،‫الـ‬ ‫يرى‬ ‫لن‬ ً‫إذا‬!‫للقاعدة‬ ‫يذهب‬ ،
4‫فالجواب‬ ،‫قة‬ّ‫ق‬‫مح‬ ‫ويجدها‬yes
19
Prolog
Exercises
■ Add Two Numbers:
– add(X,0,X):-!.
– add(X,Y,Z):-Y1 is Y-1,add(X,Y1,Z1),Zis Z1+1.
■ GCD:
– gcd(X,X,X):-!.
– gcd(X,Y,Z):- X>Y,W is X-Y,gcd(W,Y,Z),!.
– gcd(X,Y,Z):- X<Y,W is Y-X,gcd(X,W,Z).
20
Prolog
Exercises
■ What is the type of this code:
– f(0,1).
– f(N,X):-N>0,N1 is N-1, f(N1,S), X is S*N.
– Factorial
■ What is the type of this code:
– p(_,0,1):-!.
– p(X,1,X):-!.
– p(X,N,Result):- N1 = N-1 , p(X,N1,XN1), Result= X * XN1.
– Power
21
Prolog
List
■ [1,2,3]
■ Empty list [ ]
■ List with one Item [X]
– Ex: [1], [name]
■ General representation:
– [X|Y]: X is the head, Y is the list of the tail
■ Ex: [2,4,6,6] 2 is the head. [4,6,6] is the tail
22
Prolog
List Example
■ Find element in a list:
– find(X,[X|Y]):-!.
– find(X,[Z|Y]):-not(X=Z),find(X,Y).
■ Count the element of a list:
– count(0,[]):-!.
– count(W,[X|Y]):-count(Z,Y),W is X+Z.
■ Delete element from list:
– delete(X,[],[]):-!.
– delete(X,[X|Y],Z):-delete(X,Y,Z),!.
– delete(X,[Y|Z],[Y|W1]):-not(X=Y),delete(X,Z,W1).
23
Note
■ Rule:
– x(0,[]).
– x(N,[N|L]):- x(N-2,L).
■ Need a stop condition!!!
24
Question 1
■ What is a fact?
A. A term followed by a period.
B. A term.
C. A structurefollowed by a period.
25
Question 1
■ What is a fact?
A. A term followed by a period.
B. A term.
C. A structurefollowed by a period.
26
Question 2
■ Can the term in a fact be a variable?
A. Yes.
B. No.
27
Question 2
■ Can the term in a fact be a variable?
A. Yes.
B. No.
28
Question 3
■ Which of the following is not a query? (I.e., which of the following does not conform
to the syntax of queries?)
A. ?- student(Lisa, 5).
B. ?- student(Lisa, X), student(Abraham,X).
C. ?- student(Abraham, X)
29
Question 3
■ Which of the following is not a query? (I.e., which of the following does not conform
to the syntax of queries?)
A. ?- student(Lisa, 5).
B. ?- student(Lisa, X), student(Abraham,X).
C. ?- student(Abraham, X)
30
Question 4
■ Can a query be made up of more than one subgoal?
A. Yes.
B. No.
31
Question 4
■ Can a query be made up of more than one subgoal?
A. Yes.
B. No.
32
Question 5
■ What is a free variable?
A. A variable which has not been given a value.
B. A variable which has been given a value.
33
Question 5
■ What is a free variable?
A. A variable which has not been given a value.
B. A variable which has been given a value.
34
Question 6
■ What is a bound variable?
A. A variable which has not been given a value.
B. A variable which has been given a value.
35
Question 6
■ What is a bound variable?
A. A variable which has not been given a value.
B. A variable which has been given a value.
36
Question 7
■ Rules:
– check(x):- console::write(one).
– check(x):- ! , console::write(two).
■ What is the output of this query? check(1).
A. one
B. two
C. one two
D. else
37
Question 7
■ Rules:
– check(x):- console::write(one).
– check(x):- ! , console::write(two).
■ What is the output of this query? check(1).
A. one
B. two
C. one two
D. else
38
SMART SEARCH
ALGORITHMS
‫الذكية‬ ‫البحث‬ ‫خوارزميات‬
39
Smart Search Algorithms
(‫الذكية‬ ‫البحث‬ ‫)خوارزميات‬
■‫امثلة‬:
–‫المتجول‬ ‫البائع‬ ‫مسألة‬:
■‫ال‬ ‫باستخدام‬ ‫المسألة‬ ‫هذه‬ ‫حل‬ ‫يمكن‬Back Tracking‫خيار‬ ‫المسألة‬ ‫خيارات‬ ‫بمعالجة‬ ‫قمنا‬ ‫واذا‬
‫رتبة‬ ‫من‬ ‫المسألة‬ ‫تعقيد‬ ‫سيكون‬ ‫األخير‬ ‫الخيار‬ ‫هو‬ ‫الحل‬ ‫وكان‬ ‫اآلخر‬ ‫تلو‬N!
–‫للجامعة‬ ‫األسبوعي‬ ‫البرنامج‬ ‫إعداد‬ ‫مسألة‬:
■‫بشرية‬ ‫معامالت‬ ‫عدة‬ ‫بسبب‬ ‫معقدة‬ ‫أنها‬ ‫إال‬ ‫بسيطة‬ ‫المسألة‬ ‫هذه‬ ‫تبدو‬ ‫قد‬.
–‫ال‬ ‫مسألة‬:Spanning Tree
■‫ممكن‬ ‫كبل‬ ‫بأصغر‬ ‫حواسيب‬ ‫عدة‬ ‫توصيل‬ ‫وهي‬.
–‫الويب‬:
■‫بيان‬ ‫يعتبر‬ ‫الويب‬ ‫فضاء‬ ‫كل‬Graph‫ال‬ ‫خوارزميات‬ ‫وكل‬Graph‫فيه‬ ‫محققة‬.
–‫مواسير‬ ‫ضمن‬ ‫المياه‬ ‫ضخ‬:
■‫معين‬ ‫مياه‬ ‫ضغط‬ ‫وتتحمل‬ ‫محدد‬ ‫قطر‬ ‫لها‬ ‫يكون‬ ‫المواسير‬ ‫هذه‬ ‫من‬ ‫واحدة‬ ‫كل‬.
40
Smart Search Algorithms
(‫الذكية‬ ‫البحث‬ ‫)خوارزميات‬
■‫يلي‬ ‫ما‬ ‫خالل‬ ‫من‬ ‫ذلك‬ ‫يتم‬ ،‫بحث‬ ‫مسألة‬ ‫هي‬ ‫ما‬ ‫مسألة‬ ‫أن‬ ‫نعتبر‬ ‫أن‬ ‫لنا‬ ‫كيف‬ ‫إذا‬:
.I‫المسألة‬ ‫من‬ ‫الهدف‬ ‫تحديد‬.
.II‫المسألة‬ ‫هذه‬ ‫حاالت‬ ‫تحديد‬.
.III‫العمليات‬ ‫تعريف‬(‫الحاالت‬ ‫بين‬ ‫المسموحة‬ ‫االنتقاالت‬.)
.IV‫وتنته‬ ‫االبتدائية‬ ‫الحالة‬ ‫من‬ ‫تبدأ‬ ‫التي‬ ‫العمليات‬ ‫من‬ ‫مجموعة‬ ‫عن‬ ‫عبارة‬ ‫هو‬ ‫الحل‬‫ي‬
‫الهدف‬ ‫مع‬.
■‫الحافة‬(Fringe:)
–‫بعد‬ ‫زيارتها‬ ‫تتم‬ ‫لم‬ ‫ولكن‬ ‫اكتشافها‬ ‫تم‬ ‫التي‬ ‫العقد‬ ‫مجموعة‬ ‫هي‬.
–‫الب‬ ‫استراتيجيات‬ ‫باختالف‬ ‫تختلف‬ ‫معطيات‬ ‫بنية‬ ‫ضمن‬ ‫العقد‬ ‫هذه‬ ‫تخزين‬ ‫يتم‬‫ضمن‬ ‫حث‬
‫الشجرة‬.
41
Search Strategies
(‫الخوارزميات‬ ‫مقارنة‬ ‫معايير‬)
■ A search strategy is defined by picking the order of node expansion.
■ Strategies are evaluated along the following dimensions:
– Completeness:
■ does it always find a solution if one exists?
– Optimality:
■ does it always find a least-cost solution?
– Time complexity:
■ number of nodes generated.
– Space complexity:
■ maximum number of nodes in memory.
42
Search Strategies
(‫الخوارزميات‬ ‫مقارنة‬ ‫معايير‬)
■ Time and space complexity are measured in terms of:
– b (‫التفرع‬ ‫:)عامل‬
■ maximum branching factor of the search tree.
– d (‫البحث‬ ‫شجرة‬ ‫ضمن‬ ‫الحل‬ ‫:)عمق‬
■ depth of the least-cost solution.
– m (‫البحث‬ ‫شجرة‬ ‫:)عمق‬
■ maximum length of any path in the state space (may be infinite).
43
Smart Search Algorithms
(‫الذكية‬ ‫البحث‬ ‫)خوارزميات‬
■‫صنفين‬ ‫ضمن‬ ‫البحث‬ ‫خوارزميات‬ ‫تصنف‬:
–‫العمياء‬ ‫البحث‬ ‫خوارزميات‬( :Uninformed Search Algorithm)
■‫بدون‬ ‫الكالسيكية‬ ‫البحث‬ ‫خوارزميات‬ ‫باستخدام‬ ‫بالبحث‬ ‫تقوم‬ ‫بالبحث‬ ‫تقوم‬ ‫عندما‬
‫بمعالجتها‬ ‫نقوم‬ ‫التي‬ ‫المشكلة‬ ‫عن‬ ‫معلومات‬ ‫أي‬ ‫استخدام‬.
–‫التجريبية‬ ‫البحث‬ ‫خوارزميات‬( :Informed Search Algorithm)
■‫التجريبيات‬ ‫على‬ ‫تعتمد‬Heuristic‫معلومات‬ ‫على‬ ‫المسائل‬ ‫من‬ ‫مسألة‬ ‫بأي‬ ‫تعتمد‬ ‫والتي‬
‫األفضل‬ ‫للحل‬ ‫الوصول‬ ‫إلى‬ ‫وتؤدي‬ ‫المسألة‬ ‫طبيعة‬ ‫من‬ ‫مشتقة‬.
44
Uninformed Search Strategies
(‫العمياء‬ ‫البحث‬ ‫)خوارزميات‬
■ Uninformed search strategies (Blind Search) use only the information available in
the problem definition.
■ Types:
1. Breadth-first search.
2. Uniform-cost search.
3. Depth-first search.
4. Iterative deepening search.
…
45
Uninformed Search Strategies
(‫العمياء‬ ‫البحث‬ ‫)خوارزميات‬
■Nodes‫و‬State:
–‫الحالة‬(state:)
■‫معين‬ ‫وضع‬ ‫في‬ ‫المشكلة‬ ‫تمثل‬ ‫أنها‬ ‫أي‬ ‫الفيزيائي‬ ‫الوضع‬ ‫تمثيل‬ ‫هي‬.
■‫الموجو‬ ‫المدينة‬ ‫بتحديد‬ ‫الحالة‬ ‫عن‬ ‫التعبير‬ ‫بمكن‬ ‫الجوال‬ ‫البائع‬ ‫مسألة‬ ‫في‬ ً‫فمثال‬‫فيها‬ ‫دين‬.
–‫العقدة‬(node:)
■‫االنتقال‬ ‫إلى‬ ‫أدى‬ ‫الذي‬ ‫الحدث‬ ،‫األب‬ ‫العقدة‬ ،‫الحالة‬ ‫تتضمن‬ ‫حيث‬ ‫البنية‬ ‫عن‬ ‫عبارة‬ ‫هي‬
‫إليها‬ ‫الوصول‬ ‫وكلفة‬ ‫الحالة‬ ‫إلى‬.
46
Uninformed Search Strategies
Breadth First Search
■ً‫أوال‬ ‫بالعرض‬ ‫البحث‬ ‫خوارزمية‬Breadth First Search :
–‫الغير‬ ‫العقد‬ ‫بزيارة‬ ‫الخوارزمية‬ ‫هذه‬ ‫تقوم‬‫مزارة‬ً‫عمقا‬ ‫األقل‬.
■‫غير‬ ‫العقد‬ ‫جميع‬ ‫تزور‬ ‫أنها‬ ‫أي‬‫المزارة‬‫تبعد‬ ‫التي‬k‫غير‬ ‫العقد‬ ‫تزور‬ ‫أن‬ ‫قبل‬ ‫الحالية‬ ‫العقد‬ ‫عن‬
‫المزراة‬‫تبعد‬ ‫والتي‬k+1
–‫تت‬ ‫لم‬ ‫والتي‬ ‫المكتشفة‬ ‫العقد‬ ‫تخزين‬ ‫طريق‬ ‫عن‬ ‫الخوارزمية‬ ‫هذه‬ ‫تحقيق‬ ‫يمكن‬‫م‬
‫رتل‬ ‫في‬ ‫بعد‬ ‫زيارتها‬.
–‫نسخة‬ ‫يوجد‬ ‫ال‬ ‫حيث‬ ‫فقط‬ ‫عودي‬ ‫غير‬ ‫بشكل‬ ‫الخوارزمية‬ ‫كتابة‬ ‫نستطيع‬‫عودية‬‫ل‬‫ها‬
‫االستدعاءات‬ ‫أن‬ ‫طالما‬‫العودية‬‫ارتال‬ ‫ضمن‬ ‫تخزن‬.
47
Uninformed Search Strategies
Breadth First Search
48
Uninformed Search Strategies
Breadth First Search
■ Complete?
– Yes (if branchingfactor b is finite).
■ Optimal?
– Yes, if cost = 1 per step
■ Time?
– O(bd)
■ Space?
– O(bd)
– Space is the bigger problem (more than time)
49
Uninformed Search Strategies
Uniform Cost Search
■‫ال‬ ‫خوارزمية‬:Uniformed Cost Search
–‫غير‬ ‫العقد‬ ‫بزيارة‬ ‫تقوم‬ ‫عام‬ ‫بشكل‬‫المزارة‬‫األقل‬ ‫الكلفة‬ ‫ذات‬.
–‫والغير‬ ‫المكتشفة‬ ‫العقد‬ ‫تخزين‬ ‫طريق‬ ‫عن‬ ‫المنهجية‬ ‫هذه‬ ‫تحقيق‬ ‫يمكن‬‫مزارة‬‫ض‬‫من‬
Priority queue‫الطريق‬ ‫كلفة‬ ‫على‬ ‫هنا‬ ‫األولوية‬ ‫فكرة‬ ‫وتعتمد‬(‫االكبر‬ ‫الى‬ ‫األصغر‬.)
–‫مالحظة‬:
■‫ال‬ ‫مفهوم‬ ‫بتطبيق‬ ‫نقوم‬ ‫ال‬ ‫المنهجية‬ ‫هذه‬ ‫في‬ ‫الطريق‬ ‫كلفة‬ ‫أهمية‬ ‫بسبب‬visited‫كما‬
‫خوارزمية‬ ‫في‬BFS‫و‬DFS‫المتب‬ ‫المسارات‬ ‫فحص‬ ‫وعند‬ ‫األقصر‬ ‫الطريق‬ ‫تخزين‬ ‫سيتم‬ ‫بل‬‫قية‬
‫به‬ ‫االحتفاظ‬ ‫يتم‬ ‫المخزن‬ ‫الطريق‬ ‫من‬ ‫أقصر‬ ‫آخر‬ ‫طريق‬ ‫هناك‬ ‫كان‬ ‫اذا‬ ‫الحلول‬ ‫فضاء‬ ‫ضمن‬
‫القديم‬ ‫الحل‬ ‫وإهمال‬.
50
Uninformed Search Strategies
Uniform Cost Search
51
Uninformed Search Strategies
Uniform Cost Search
■ Notes:
– Expand least-cost unexpanded node.
– Equivalent to breadth-first if step costs all equal.
■ Complete?
– Yes, if step cost is greater than some positive constant ε
■ Optimal?
– Yes , nodes expanded in increasing order of path cost.
■ Time?
– O(bc/ε)
–c‫و‬ ،‫األمثل‬ ‫الحل‬ ‫كلفة‬ ‫هي‬𝜀‫الخطوة‬ ‫كلفة‬ ‫وسطي‬.
– This can be greater than O(bd): the search can explore long paths consisting of small steps before
exploring shorter paths consisting of larger steps
■ Space?
– O(bc/ε)
52
Uninformed Search Strategies
Depth First Search
■ً‫أوال‬ ‫بالعمق‬ ‫البحث‬ ‫خوارزمية‬:First Search-Depth
–‫غير‬ ‫عقدة‬ ‫أعمق‬ ‫بزيارة‬ ‫الخوارزمية‬ ‫هذه‬ ‫تقوم‬‫مزارة‬‫الشجرة‬ ‫من‬.
–‫مكدس‬ ‫استخدام‬ ‫طريق‬ ‫عن‬ ‫المنهجية‬ ‫هذه‬ ‫تحقيق‬ ‫يمكن‬.
–‫عودي‬ ‫غير‬ ‫أو‬ ‫عودي‬ ‫بشكل‬ ‫الخوارزمية‬ ‫كتابة‬ ‫نستطيع‬.
53
Uninformed Search Strategies
Depth First Search
54
Uninformed Search Strategies
Depth First Search
■ Complete?
– Fails in infinite-depth spaces.
– complete in finite spaces.
■ Optimal?
– No, returns the first solution it finds.
■ Time?
– O(bm)
■ Space?
– O(bm)
55
Uninformed Search Strategies
Iterative Deepening Search
■ Use DFS as a subroutine:
1. Check the root.
2. Do a DFS searchingfor a path of length 1
3. If there is no path of length 1, do a DFS searchingfor a path of length 2
4. If there is no path of length 2, do a DFS searchingfor a path of length 3…
56
Uninformed Search Strategies
Iterative Deepening Search
57
Uninformed Search Strategies
Iterative Deepening Search
58
Uninformed Search Strategies
Iterative Deepening Search
59
Uninformed Search Strategies
Iterative Deepening Search
60
Uninformed Search Strategies
Iterative Deepening Search
61
Uninformed Search Strategies
Iterative Deepening Search
■ Complete?
– Yes
■ Optimal?
– Yes, if step cost = 1
■ Time?
– (d+1) b0 + d b1 + (d-1) b2 + … + bd = O(bd)
■ Space?
– O(bd)
62
Informed Search
( ‫التجريبية‬ ‫البحث‬ ‫خوارزميات‬-‫المطلعة‬ )
■ Idea:
– Give the algorithm “hints” about the desirability of different states.
– Use an evaluation function to rank nodes and select the most promising one for
expansion.
■ Types:
1. Greedy best-first search.
2. A* search.
63
Informed Search
Heuristic Function
■‫التجريبة‬( :Heuristic)
–‫الهدف‬ ‫من‬ ‫الحالة‬ ‫هذه‬ ‫قرب‬ ‫يقدر‬ ‫رقم‬ ‫يعيد‬ ‫حالة‬ ‫على‬ ‫يطبق‬ ‫عندما‬ ‫تابع‬ ‫هي‬.
–‫المعلومات‬ ‫من‬ ‫مجموعة‬ ‫على‬ ً‫اعتمادا‬ ‫المسائل‬ ‫بحل‬ ‫الخوارزميات‬ ‫هذه‬ ‫تقوم‬
‫بالتجريبية‬ ‫ندعوها‬ ‫المعلومات‬ ‫وهذه‬ ‫المسألة‬ ‫طبيعة‬ ‫من‬ ‫المستنبطة‬.
–‫تبخس‬ ‫ان‬ ‫يمكن‬‫التجريبة‬‫الهدف‬ ‫عن‬ ‫البعد‬ ‫تقدير‬ ‫في‬ ‫تغالي‬ ‫أو‬.
64
Informed Search
Heuristic Function
■‫امثلة‬:
–‫طريق‬ ‫اقصر‬.
■‫التجريبة‬‫الهدف‬ ‫والمدينة‬ ‫ما‬ ‫مدينة‬ ‫بين‬ ‫النظر‬ ‫خط‬ ‫هي‬.
–‫لعبة‬‫التاكوتان‬.
■‫التجريبة‬‫الصحيح‬ ‫مكانها‬ ‫غير‬ ‫في‬ ‫الموجودة‬ ‫الخانات‬ ‫عدد‬ ‫هي‬(‫الفراغ‬ ‫عدا‬ ‫ما‬)
■‫التجريبة‬‫خانة‬ ‫لكل‬ ‫مانهاتن‬ ‫مسافة‬ ‫حساب‬ ‫هي‬.
65
Informed Search
Greedy best-first search
■ Expand the node that has the lowest value of the heuristic function h(n)
66
Informed Search
Greedy best-first search Example
67
Informed Search
Greedy best-first search Example
68
Informed Search
Greedy best-first search Example
69
Informed Search
Greedy best-first search Example
70
Informed Search
Greedy best-first search Properties
■ Complete?
– No, can get stuck in loops
■ Optimal?
– No
■ Time?
– Worst case: O(bm)
– Best case: O(bd)
■ If h(n) is 100% accurate
■ Space?
– Worst case: O(bm)
start
goal
71
Hill Climbing Search
(‫التلة‬ ‫تسلق‬ ‫)خوارزمية‬
■‫التابع‬ ‫لدينا‬ ‫ليكن‬H(n)‫من‬ ً‫انطالقا‬ ‫للهدف‬ ‫الوصول‬ ‫ككلفة‬ ‫التقديرية‬ ‫القيمة‬ ‫يرد‬ ‫والذي‬‫العقدة‬
‫الحالية‬.
■‫للتابع‬ ‫األقل‬ ‫القيمة‬ ‫ذات‬ ‫العقدة‬ ‫اختيار‬ ‫على‬ ‫تعتمد‬ ‫التلة‬ ‫تسلق‬ ‫خوارزمية‬ ‫إن‬H(n)
"‫طموحة‬ ‫خوارزمية‬."
■ Is it complete/optimal?
– No – can get stuck in local optima
■ Example:
– local optimum for the 8-queens problem
72
The State Space
(Landscape)
■ How to escape local maxima?
– Randomrestart hill-climbing
73
Hill Climbing Search
(‫التلة‬ ‫تسلق‬ ‫)خوارزمية‬
■‫ال‬ ‫خوارزمية‬ ‫بين‬ ‫الفرق‬Hill Climbing‫وخوارزمية‬Uninformed Cost Search
–Hill Climbing‫أما‬ ‫الهدف‬ ‫عن‬ ‫العقدة‬ ‫لبعد‬ ‫التقديرية‬ ‫بالكلفة‬ ‫نهتم‬Uninformed Cost
Search‫الحالية‬ ‫العقدة‬ ‫إلى‬ ‫الوصول‬ ‫بالتكلفة‬ ‫نهتم‬.
–Hill Climbing‫ال‬ ‫أما‬ ً‫جدا‬ ‫سريعة‬ ‫خوارزمية‬Uninformed Cost Search‫خوارزمية‬ ‫فهي‬
ً‫جدا‬ ‫بطيئة‬.
–Hill Climbingً‫حال‬ ‫تعطي‬ ‫ال‬‫أمثليا‬(not optimal)‫مكتملة‬ ‫وغير‬(not complete)‫أما‬
Uninformed Cost Search‫فهيا‬(optimal & complete.)
–‫أمثلي‬ ‫خوارزمية‬ ‫إلى‬ ‫للوصول‬ ً‫معا‬ ‫الخوارزميتين‬ ‫هاتين‬ ‫بدمج‬ ‫نقوم‬ ‫ال‬ ‫لماذا‬ ‫ولكن‬‫ه‬
‫الوقت‬ ‫بنفس‬ ‫وسريعة‬.‫خوارزمية‬ ‫وهي‬A*
74
Informed Search
A* Search
■ Idea:
– avoid expanding paths that are already expensive.
■ The evaluation function f(n) is the estimated total cost of the path through node n to
the goal:
■ f(n) = g(n) + h(n)
– g(n): cost so far to reach n (path cost)
– h(n): estimated cost from n to goal (heuristic)
75
Informed Search
A* Search
■‫مالحظات‬:
–‫ال‬ ‫نضع‬ ‫أن‬ ‫وهو‬ ‫العمياء‬ ‫البحث‬ ‫خوارزميات‬ ‫في‬ ‫اتبعناه‬ ‫الذي‬ ‫األسلوب‬ ‫استخدام‬ ‫يمكننا‬‫عقد‬
‫معينة‬ ‫بنية‬ ‫ضمن‬ ‫نزرها‬ ‫ولم‬ ‫اكتشفناها‬ ‫التي‬.
■‫ال‬ ‫في‬Depth First‫ال‬ ‫نستخدم‬ ‫كنا‬Stack (LIFO)
■‫ال‬ ‫في‬Breadth First‫ال‬ ‫نستخدم‬ ‫كنا‬Queue (FIFO)
■‫ال‬ ‫في‬Uniform Cost‫ال‬ ‫نستخدم‬ ‫كنا‬Priority Queue‫ال‬ ‫حسب‬Cost
■‫ال‬ ‫خوارزمية‬ ‫في‬ ‫أما‬A*‫على‬ ‫سنعتمد‬Priority Queue‫ال‬ ‫قيمة‬ ‫حسب‬ ‫األفضلية‬ ‫وستكون‬F(n)
–‫التجريبية‬ ‫قيمة‬ ‫كانت‬ ‫حال‬ ‫في‬H=0‫إلى‬ ‫الخوارزمية‬ ‫ستتحول‬ ‫عندها‬Uniform Cost
‫الحلول‬ ‫كل‬ ‫بسبر‬ ‫نقوم‬ ‫أن‬ ‫بعد‬ ‫ولكن‬ ‫أمثلي‬ ‫لحل‬ ‫سنصل‬ ‫وبالتالي‬.
–‫ال‬ ‫كانت‬ ‫اذا‬H‫ف‬ ‫بسبر‬ ‫نقوم‬ ‫ولن‬ ً‫جدا‬ ‫سريع‬ ‫األداء‬ ‫سيكون‬ ‫الحقيقية‬ ‫الكلفة‬ ‫تساوي‬‫ضاء‬
ً‫كامال‬ ‫الحلول‬.
–‫إلى‬ ‫الوصول‬ ‫تسريع‬ ‫هو‬ ‫والهدف‬ ‫باألداء‬ ‫األساسي‬ ‫العامل‬ ‫هو‬ ‫التجريبية‬ ‫اختيار‬ ‫حسن‬
‫الحلول‬ ‫فضاء‬ ‫كل‬ ‫سبر‬ ‫دون‬ ‫للهدف‬.
–‫ال‬ ‫خوارزمية‬ ‫في‬A*‫حل‬ ‫تعطي‬ ‫خوارزمية‬ ‫فإن‬ ‫متفائلة‬ ‫التجريبية‬ ‫كانت‬ ‫اذا‬Optimal‫دائم‬.
76
Informed Search
A* Search
■‫المولدة‬ ‫العقد‬:‫زيارتها‬ ‫علينا‬ ‫التي‬ ‫العقد‬.
■‫العقد‬‫المزارة‬:‫المطورة‬ ‫العقد‬ ‫أي‬ ‫أبناءها‬ ‫ولدنا‬ ‫التي‬.
■‫مالحظة‬:
–‫التابع‬ ‫قيم‬ ‫تساوت‬ ‫اذا‬F‫أي‬ ‫الهدف‬ ‫إلى‬ ‫األقرب‬ ‫العقدة‬ ‫باختيار‬ ‫سنقوم‬ ‫عقدة‬ ‫من‬ ‫ألكثر‬
‫قيمة‬ ‫أصغر‬ ‫ذات‬‫لل‬H
77
A* Search Example
78
A* Search Example
79
A* Search Example
80
A* Search Example
81
A* Search Example
82
A* Search Example
83
Informed Search
A* Search Properties
■ Complete?
– Yes, unless there are infinitely many nodes with f(n) ≤ C*
■ Optimal?
– Yes
■ Time?
– Number of nodes for which f(n) ≤ C* (exponential)
■ Space?
– Exponential
84
Informed Search
A* Search Exercise 2
■‫في‬ ‫المطورة‬ ‫العقد‬ ‫ترتيب‬ ‫وما‬ ‫المطورة‬ ‫والعقد‬ ‫المولدة‬ ‫العقد‬ ‫عدد‬ ‫هو‬ ‫ما‬
■‫التالي‬ ‫المثال‬:
85
Informed Search
A* Search Exercise 2
■‫التالي‬ ‫الشكل‬ ‫على‬ ‫الحل‬ ‫سيكون‬:
86
Informed Search
A* Search Exercise 2
■‫الحل‬ ‫عن‬ ‫مالحظات‬:
–‫العقدة‬ ‫عند‬1‫أقل‬ ‫كلفة‬ ‫ذات‬ ‫أوراق‬ ‫وجود‬ ‫بسبب‬ ‫الوراء‬ ‫إلى‬ ‫تراجعنا‬.
–‫العقدة‬ ‫عند‬3‫للعقدة‬ ‫نصل‬ ‫أن‬ ‫بإمكاننا‬ ‫كان‬1‫استطعنا‬ ‫ألننا‬ ‫بإهمالها‬ ‫قمنا‬ ‫ولكننا‬
‫أقل‬ ‫وبكلفة‬ ‫آخر‬ ‫طريق‬ ‫من‬ ‫إليها‬ ‫الوصول‬.
–‫ضمن‬ ‫العقد‬ ‫بوضع‬ ‫نقوم‬ ‫أننا‬ ‫وبما‬Queue‫نستطيع‬ ‫وال‬ ‫ضمنها‬ ‫من‬ ‫الهدف‬ ‫سيكون‬ ‫مرتبة‬
‫ال‬ ‫رأس‬ ‫في‬ ‫الهدف‬ ‫يكون‬ ‫أن‬ ‫إلى‬ ‫الشجرة‬ ‫عقد‬ ‫وتطوير‬ ‫توليد‬ ‫عن‬ ‫التوقف‬Queue(‫أي‬
‫األقل‬ ‫الكلفة‬ ‫ذات‬ ‫لعقدة‬ ‫هي‬ ‫الهدف‬ ‫عقدة‬.)
–‫هو‬ ‫المطورة‬ ‫العقد‬ ‫ترتيب‬ ‫وسيكون‬:
–‫هو‬ ‫وعددها‬6‫هو‬ ‫فعددها‬ ‫المولدة‬ ‫العقد‬ ‫أما‬ ‫مطورة‬ ‫عقد‬9
87
Comparison of search strategies
Algorithm Complete? Optimal?
Time
Complexity
Space
Complexity
BFS Yes
If all step costs
are equal
O(bd) O(bd)
UCS Yes Yes
O(bc/ε)
Number of nodes with g(n) ≤ C*
DFS No No O(bm) O(bm)
IDS Yes
If all step costs
are equal
O(bd) O(bd)
Greedy No No
Worst case: O(bm)
Best case: O(bd)
A* Yes Yes Number of nodes with g(n)+h(n) ≤ C*
88
Question 1
■ Which search strategy is also called as blind search?
A. Uninformed search.
B. Informed search.
C. Simple reflex search.
D. All of the mentioned.
89
Question 1
■ Which search strategy is also called as blind search?
A. Uninformed search.
B. Informed search.
C. Simple reflex search.
D. All of the mentioned.
90
Question 2
■ How many types are available in uninformed search method?
A. 3.
B. 4.
C. 5.
D. 6.
91
Question 2
■ How many types are available in uninformed search method?
A. 3.
B. 4.
C. 5.
D. 6.
■ Explanation:
– The five types of uninformed search method are:
■ Breadth-first, Uniform-cost, Depth-first, Depth-limited and Bidirectional search.
92
Question 3
■ Which search is implemented with an empty first-in-first-out queue?
A. Depth-first search.
B. Breadth-first search.
C. Bidirectional search.
D. None of the mentioned.
93
Question 3
■ Which search is implemented with an empty first-in-first-out queue?
A. Depth-first search.
B. Breadth-first search.
C. Bidirectional search.
D. None of the mentioned.
94
Question 4
■ When is breadth-firstsearch is optimal?
A. When there is less number of nodes.
B. When all step costs are equal.
C. When all step costs are unequal.
D. None of the mentioned.
95
Question 4
■ When is breadth-firstsearch is optimal?
A. When there is less number of nodes.
B. When all step costs are equal.
C. When all step costs are unequal.
D. None of the mentioned.
96
Question 5
■ What is the space complexity of Depth-first search?
A. O(b).
B. O(bl).
C. O(m).
D. O(bm).
97
Question 5
■ What is the space complexity of Depth-first search?
A. O(b).
B. O(bl).
C. O(m).
D. O(bm).
98
Question 6
■ How many parts does a problem consists of?
A. 1.
B. 2.
C. 3.
D. 4.
99
Question 6
■ How many parts does a problem consists of?
A. 1.
B. 2.
C. 3.
D. 4.
■ Explanation:
– The four parts of the problem are:
■ initial state, set of actions, goal test and path cost.
100
Question 7
■ Which algorithm is used to solve any kind of problem?
A. Breath-first algorithm.
B. Tree algorithm.
C. Bidirectional search algorithm.
D. None of the mentioned.
101
Question 7
■ Which algorithm is used to solve any kind of problem?
A. Breath-first algorithm.
B. Tree algorithm.
C. Bidirectional search algorithm.
D. None of the mentioned.
■ Explanation:
– Tree algorithm is used because specific variants of the algorithm embed
different strategies.
102
Question 8
■ Which search algorithm imposes a fixed depth limit on nodes?
A. Depth-limited search.
B. Depth-first search.
C. Iterative deepening search.
D. Bidirectional search.
103
Question 8
■ Which search algorithm imposes a fixed depth limit on nodes?
A. Depth-limited search.
B. Depth-first search.
C. Iterative deepening search.
D. Bidirectional search.
104
Question 9
■ Which search implements stack operation for searchingthe states?
A. Depth-limited search.
B. Depth-first search.
C. Breadth-first search.
D. None of the mentioned.
105
Question 9
■ Which search implements stack operation for searchingthe states?
A. Depth-limited search.
B. Depth-first search.
C. Breadth-first search.
D. None of the mentioned.
106
Question 10
■ Which of the following is/are Uninformed Search technique/techniques
A. Breath First Search (BFS).
B. Depth First Search (DFS).
C. Bi-directional Search.
D. All of the mentioned.
107
Question 10
■ Which of the following is/are Uninformed Search technique/techniques
A. Breath First Search (BFS).
B. Depth First Search (DFS).
C. Bi-directional Search.
D. All of the mentioned.
108
Question 11
■ The time and space complexity of BFS
A. O(bd+1) and O(bd+1).
B. O(b2) and O(d2).
C. O(d2) and O(b2).
D. O(d2) and O(d2).
109
Question 11
■ The time and space complexity of BFS
A. O(bd+1) and O(bd+1).
B. O(b2) and O(d2).
C. O(d2) and O(b2).
D. O(d2) and O(d2).
110
Question 12
■ What is the heuristic function of greedy best-first search?
A. f(n) != h(n)
B. f(n) < h(n)
C. f(n) = h(n)
D. f(n) > h(n)
111
Question 12
■ What is the heuristic function of greedy best-first search?
A. f(n) != h(n)
B. f(n) < h(n)
C. f(n) = h(n)
D. f(n) > h(n)
112
Question 13
■ Heuristic function h(n) is ____
A. Lowest path cost
B. Cheapest path from root to goal node
C. Estimated cost of cheapest path from root to goal node
D. Average path cost
113
Question 13
■ Heuristic function h(n) is ____
A. Lowest path cost
B. Cheapest path from root to goal node
C. Estimated cost of cheapest path from root to goal node
D. Average path cost
114
Question 14
■‫من‬ ‫االنتقال‬ ‫المطلوب‬ ‫وحيث‬ ‫التالي‬ ‫البيان‬ ‫ليكن‬A‫الى‬E‫كل‬ ‫باعتماد‬ ‫الناتج‬ ‫سيكون‬ ‫ماذا‬
‫التالية‬ ‫الخوارزميات‬ ‫من‬:‫أوال‬ ‫العمق‬–‫أوال‬ ‫العرض‬–‫المنتظمة‬ ‫الكلفة‬.
115
Question 14
■‫من‬ ‫االنتقال‬ ‫المطلوب‬ ‫وحيث‬ ‫التالي‬ ‫البيان‬ ‫ليكن‬A‫الى‬E‫كل‬ ‫باعتماد‬ ‫الناتج‬ ‫سيكون‬ ‫ماذا‬
‫التالية‬ ‫الخوارزميات‬ ‫من‬:‫أوال‬ ‫العمق‬–‫أوال‬ ‫العرض‬–‫المنتظمة‬ ‫الكلفة‬.
■‫الحل‬:
116
Question 15
■‫وخوارزمية‬ ‫التلة‬ ‫تسلق‬ ‫خوارزمية‬ ‫باستخدام‬ ‫الناتج‬ ‫سيكون‬ ‫ماذا‬A*‫تقدير‬ ‫لدينا‬ ‫بأن‬ ‫علما‬
‫والعقدة‬ ‫عقدة‬ ‫كل‬ ‫بين‬ ‫للمسافة‬E‫يلي‬ ‫كما‬:
117
Question 15
■‫وخوارزمية‬ ‫التلة‬ ‫تسلق‬ ‫خوارزمية‬ ‫باستخدام‬ ‫الناتج‬ ‫سيكون‬ ‫ماذا‬A*‫تقدير‬ ‫لدينا‬ ‫بأن‬ ‫علما‬
‫والعقدة‬ ‫عقدة‬ ‫كل‬ ‫بين‬ ‫للمسافة‬E‫يلي‬ ‫كما‬:
■‫الحل‬:
118
GAMES
‫االلعاب‬ ‫مسائل‬
119
Games
(‫)األلعاب‬
■‫لمحورين‬ ً‫وفقا‬ ‫األلعاب‬ ‫نصنف‬ ‫أن‬ ‫نستطيع‬:
–‫األول‬ ‫المحور‬( :Perfect Information - Imperfect Information)
■Perfect Information
–‫ك‬ ‫قبل‬ ‫من‬ ً‫مسبقا‬ ‫معلومة‬ ‫الالعبين‬ ‫لكال‬ ‫المتاحة‬ ‫االمكانيات‬ ‫فيها‬ ‫تكون‬ ‫ألعاب‬ ‫وهي‬ٍ‫ل‬
‫منهما‬.
■Imperfect Information
–‫خصمي‬ ‫وإمكانيات‬ ‫قدرات‬ ‫عن‬ ‫معلومة‬ ‫أي‬ ‫أمتلك‬ ‫ال‬ ‫أي‬ ‫سابقتها‬ ‫عكس‬ ‫وهي‬.
–‫الثاني‬ ‫المحور‬( :Deterministic - Chance)
■Deterministic
–‫بذكاء‬ ‫إحداها‬ ‫اختيار‬ ‫يجب‬ ‫وعديدة‬ ‫محددة‬ ‫خطوات‬ ‫لدينا‬ ‫يوجد‬ ‫حيث‬ ‫الذكاء‬ ‫ألعاب‬ ‫وهي‬
‫للربح‬ ‫للوصول‬.
■Chance
–‫غير‬ ‫ال‬ ‫فقط‬ ‫الحظ‬ ‫على‬ ‫يعتمد‬ ‫النمط‬ ‫هذا‬.
120
Games
(‫)األلعاب‬
■‫أصن‬ ‫أربعة‬ ‫أنها‬ ‫على‬ ‫السابقين‬ ‫للمحورين‬ ً‫وفقا‬ ‫األلعاب‬ ‫نصنف‬ ‫أن‬ ‫يمكن‬ ‫وبالتالي‬‫اف‬:
121
Deterministic Stochastic
Perfect Information
(fully observable)
Chess, checkers,go
Backgammon,
monopoly
Imperfect Information
(partially observable)
Battleships Scrabble, poker, bridge
Games V.S Search Problems
■‫واأللعاب‬ ‫العادية‬ ‫البحث‬ ‫مشاكل‬ ‫بين‬ ‫الفرق‬:
–‫الخصم‬ ‫خطوات‬ ‫على‬ ‫مبنية‬ ‫بها‬ ‫نقوم‬ ‫التي‬ ‫الخطوة‬ ‫األلعاب‬ ‫في‬.
–‫الزمن‬ ‫عائق‬ ‫لدينا‬ ‫األلعاب‬ ‫في‬Time Limit‫اللعبة‬ ‫حل‬ ‫خوارزمية‬ ‫تكون‬ ‫أن‬ ‫يجب‬ ‫حيث‬
‫بسرعة‬ ‫القرار‬ ‫اتخاذ‬ ‫على‬ ‫قادرة‬.
122
Min Max Algorithm
3 2 2
3
123
Min Max Algorithm
4,3,2 7,4,1
4,3,2
1,5,2 7,7,1
1,5,2
4,3,2
124
Alpha Beta Cutoff
■‫البحث‬ ‫شجرة‬ ‫تقليم‬:
–‫مبدأ‬ ‫من‬" :‫مدى‬ ‫معرفة‬ ‫على‬ ‫وقتنا‬ ‫نضيع‬ ‫لن‬ ‫فأننا‬ ‫سيئة‬ ‫فكرة‬ ‫لدينا‬ ‫كانت‬ ‫إذا‬‫س‬‫وءها‬"
■‫أساسية‬ ‫فكرة‬:
–‫خوارزمية‬ ‫به‬ ‫تقوم‬ ‫الذي‬ ‫البحث‬ ‫شجرة‬ ‫في‬ ‫التجوال‬ ‫إن‬MinMax‫ترتيب‬ ‫وفق‬ ‫يتم‬
"‫أوال‬ ‫بالعمق‬ ‫البحث‬."
125
Alpha Beta Pruning
126
Alpha Beta Pruning
127
Alpha Beta Pruning
128
Alpha Beta Pruning
129
3
3
2 14
Alpha Beta Pruning
130
3
3
2 5
Alpha Beta Pruning
131
3
3
2 2
Alpha Beta Pruning
■ Pruning does not affect final result.
■ Amount of pruning depends on move ordering:
– Should start with the “best” moves (highest-value for MAX or
lowest-value for MIN)
– For chess, can try captures first, then threats, then forward
moves, then backward moves.
– Can also try to remember “killer moves” from other branches of
the tree
■ With perfect ordering, branching factor can be cut in two, or
depth of search effectively doubled.
132
Question 1
■ Which search is equal to minimax search but eliminates the branches that can’t
influence the final decision?
A. Depth-first search
B. Breadth-first search
C. Alpha-beta pruning
D. None of the mentioned
133
Question 1
■ Which search is equal to minimax search but eliminates the branches that can’t
influence the final decision?
A. Depth-first search
B. Breadth-first search
C. Alpha-beta pruning
D. None of the mentioned
■ Explanation:
– The alpha-beta search computes the same optimal moves as minimax, but
eliminates the branches that can’t influence the final decision.
134
Question 2
■ Which search is similar to minimax search?
A. Hill-climbing search
B. Depth-first search
C. Breadth-first search
D. All of the mentioned
135
Question 2
■ Which search is similar to minimax search?
A. Hill-climbing search
B. Depth-first search
C. Breadth-first search
D. All of the mentioned
■ Explanation:
– The minimax search is depth-first search, So at one time we just have to
consider the nodes along a single path in the tree.
136
Question 3
■‫العبين‬ ‫بثالثة‬ ‫التالية‬ ‫اللعبة‬ ‫لدينا‬ ‫ليكن‬:‫قرص‬ ‫األول‬ ‫البرج‬ ‫يحوي‬ ‫أبراج‬ ‫ثالثة‬ ‫يوجد‬‫قرص‬ ‫والثاني‬
‫قرصين‬ ‫والثالث‬.‫البرج‬ ‫نفس‬ ‫من‬ ‫إنما‬ ‫أكثر‬ ‫أو‬ ‫قرص‬ ‫يأخذ‬ ‫أن‬ ‫لالعب‬ ‫يمكن‬.‫يرب‬ ‫الذي‬ ‫الالعب‬‫هو‬ ‫ح‬
‫اللعبة‬ ‫يجع‬ ‫أي‬ ‫األبراج‬ ‫في‬ ‫قرص‬ ‫أي‬ ‫يبقى‬ ‫ال‬ ‫يلعب‬ ‫أن‬ ‫بعد‬ ‫الذي‬ ‫الالعب‬(0,0,0.)‫إذا‬ ‫تكون‬
‫هي‬ ‫االبتدائية‬ ‫الحالة‬(1,1,2)‫الثالث‬ ‫الحاالت‬ ‫أحد‬ ‫إلى‬ ‫اللعبة‬ ‫ينقل‬ ‫أن‬ ‫األول‬ ‫لالعب‬ ‫يمكن‬ ‫ومنها‬
‫التالية‬:
–(2,1,0)‫قرص‬ ‫يحوي‬ ‫برج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬.
–(0,1,1)‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرصين‬ ‫يأخذ‬.
–(1,1,1)‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬.
‫النهاية‬ ‫في‬ ‫يربح‬ ‫كي‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يلعب‬ ‫أن‬ ‫يجب‬ ‫ماذا‬:
.A‫قرص‬ ‫يحوي‬ ‫برج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬.
.B‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬.
.C‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرصين‬ ‫يأخذ‬.
.D‫سبق‬ ‫مما‬ ‫خيار‬ ‫وال‬.
137
Question 3
■‫العبين‬ ‫بثالثة‬ ‫التالية‬ ‫اللعبة‬ ‫لدينا‬ ‫ليكن‬:‫قرص‬ ‫األول‬ ‫البرج‬ ‫يحوي‬ ‫أبراج‬ ‫ثالثة‬ ‫يوجد‬‫قرص‬ ‫والثاني‬
‫قرصين‬ ‫والثالث‬.‫البرج‬ ‫نفس‬ ‫من‬ ‫إنما‬ ‫أكثر‬ ‫أو‬ ‫قرص‬ ‫يأخذ‬ ‫أن‬ ‫لالعب‬ ‫يمكن‬.‫يرب‬ ‫الذي‬ ‫الالعب‬‫هو‬ ‫ح‬
‫اللعبة‬ ‫يجع‬ ‫أي‬ ‫األبراج‬ ‫في‬ ‫قرص‬ ‫أي‬ ‫يبقى‬ ‫ال‬ ‫يلعب‬ ‫أن‬ ‫بعد‬ ‫الذي‬ ‫الالعب‬(0,0,0.)‫إذا‬ ‫تكون‬
‫هي‬ ‫االبتدائية‬ ‫الحالة‬(1,1,2)‫الثالث‬ ‫الحاالت‬ ‫أحد‬ ‫إلى‬ ‫اللعبة‬ ‫ينقل‬ ‫أن‬ ‫األول‬ ‫لالعب‬ ‫يمكن‬ ‫ومنها‬
‫التالية‬:
–(2,1,0)‫قرص‬ ‫يحوي‬ ‫برج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬.
–(0,1,1)‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرصين‬ ‫يأخذ‬.
–(1,1,1)‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬.
‫النهاية‬ ‫في‬ ‫يربح‬ ‫كي‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يلعب‬ ‫أن‬ ‫يجب‬ ‫ماذا‬:
.A‫قرص‬ ‫يحوي‬ ‫برج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬.
.B‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬.
.C‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرصين‬ ‫يأخذ‬.
.D‫سبق‬ ‫مما‬ ‫خيار‬ ‫وال‬.
138
Question 4
■‫الالعب‬ ‫أن‬ ‫وحيث‬ ‫التالية‬ ‫اللعب‬ ‫شجرة‬ ‫لتكن‬MAX‫يبدأ‬ ‫الذي‬ ‫هو‬.‫ألفا‬ ‫الخوارزمية‬ ‫تقوم‬-‫بيتا‬
‫التالية‬ ‫األوراق‬ ‫قيم‬ ‫بحساب‬:
.AP, Q, R, T, U, V, X, Y, Z, BB, CC, DD
.BP, Q, R, T, U, X, Y, Z, BB, CC
.CP, Q, R, T, U, V, X, Y, Z, BB
139
Question 4
■‫الالعب‬ ‫أن‬ ‫وحيث‬ ‫التالية‬ ‫اللعب‬ ‫شجرة‬ ‫لتكن‬MAX‫يبدأ‬ ‫الذي‬ ‫هو‬.‫ألفا‬ ‫الخوارزمية‬ ‫تقوم‬-‫بيتا‬
‫التالية‬ ‫األوراق‬ ‫قيم‬ ‫بحساب‬:
.AP, Q, R, T, U, V, X, Y, Z, BB, CC, DD
.BP, Q, R, T, U, X, Y, Z, BB, CC
.CP, Q, R, T, U, V, X, Y, Z, BB
140
Question 5
■‫الق‬ ‫تحيقي‬ ‫نستطيع‬ ‫كي‬ ‫لألوراق‬ ‫قيم‬ ‫إيجاد‬ ‫والمطلوب‬ ‫التالية‬ ‫اللعب‬ ‫شجرة‬ ‫لتكن‬‫طعين‬
‫المبينين‬:
.A‫األوراق‬ ‫جميع‬ ‫في‬ ‫متساوية‬ ‫قيم‬ ‫نضع‬.
.B‫لعقد‬ ‫تنازلي‬ ‫بترتيب‬ ‫قيم‬ ‫نضع‬Max‫لعقد‬ ‫تصاعدي‬ ‫وبترتيب‬Min.
.C‫لعقد‬ ‫تنازلي‬ ‫بترتيب‬ ‫قيم‬ ‫نضع‬Min‫لعقد‬ ‫تصاعدي‬ ‫وبترتيب‬Max.
.D‫السابقة‬ ‫الخيارات‬ ‫من‬ ‫خيار‬ ‫وال‬.
141
Question 5
■‫الق‬ ‫تحيقي‬ ‫نستطيع‬ ‫كي‬ ‫لألوراق‬ ‫قيم‬ ‫إيجاد‬ ‫والمطلوب‬ ‫التالية‬ ‫اللعب‬ ‫شجرة‬ ‫لتكن‬‫طعين‬
‫المبينين‬:
.A‫األوراق‬ ‫جميع‬ ‫في‬ ‫متساوية‬ ‫قيم‬ ‫نضع‬.
.B‫لعقد‬ ‫تنازلي‬ ‫بترتيب‬ ‫قيم‬ ‫نضع‬Max‫لعقد‬ ‫تصاعدي‬ ‫وبترتيب‬Min.
.C‫لعقد‬ ‫تنازلي‬ ‫بترتيب‬ ‫قيم‬ ‫نضع‬Min‫لعقد‬ ‫تصاعدي‬ ‫وبترتيب‬Max.
.D‫السابقة‬ ‫الخيارات‬ ‫من‬ ‫خيار‬ ‫وال‬.
142
Question 6
■‫الصحيحة‬ ‫العبارة‬ ‫حدد‬:
.A‫عقد‬ ‫قي‬ ‫تختلف‬ ‫ال‬Min‫و‬Max‫خوارزميتي‬ ‫في‬Min-Max‫و‬Alpha-Beta
.B‫خوارزمية‬ ‫فعالية‬ ‫على‬ ‫األوراق‬ ‫ترتيب‬ ‫يؤثر‬ ‫ال‬Alpha-Beta
.C‫الخوارزمية‬ ‫فعالية‬ ‫تتأثر‬ ‫ال‬Alpha-Beta‫الخصم‬ ‫بمستوى‬
.D‫سبق‬ ‫مما‬ ‫خيار‬ ‫وال‬
143
Question 6
■‫الصحيحة‬ ‫العبارة‬ ‫حدد‬:
.A‫عقد‬ ‫قي‬ ‫تختلف‬ ‫ال‬Min‫و‬Max‫خوارزميتي‬ ‫في‬Min-Max‫و‬Alpha-Beta
.B‫خوارزمية‬ ‫فعالية‬ ‫على‬ ‫األوراق‬ ‫ترتيب‬ ‫يؤثر‬ ‫ال‬Alpha-Beta
.C‫الخوارزمية‬ ‫فعالية‬ ‫تتأثر‬ ‫ال‬Alpha-Beta‫الخصم‬ ‫بمستوى‬
.D‫سبق‬ ‫مما‬ ‫خيار‬ ‫وال‬
144
Question 7
■‫التالية‬ ‫اللعبة‬ ‫لدينا‬ ‫ليكن‬:‫من‬ ‫كومة‬ ‫يوجد‬n‫قطعة‬.‫على‬ ‫بأخذ‬ ‫دوره‬ ‫يأتي‬ ‫حين‬ ‫الالعب‬ ‫يقوم‬
‫األكثر‬ ‫وعلى‬ ‫واحدة‬ ‫قطعة‬ ‫األقل‬m‫الكومة‬ ‫من‬ ‫قطعة‬.‫قطعة‬ ‫أخر‬ ‫يأخذ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬
‫الكومة‬ ‫من‬.‫يلي‬ ‫فيما‬ ‫الصحيحة‬ ‫الجملة‬ ‫حدد‬:
.A‫دائما‬ ‫باللعب‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬
.B‫دائما‬ ‫باللعب‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يخسر‬
.C‫كانت‬ ‫إذا‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬n‫مضاعفات‬ ‫من‬m
.D‫كانت‬ ‫إذا‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬n‫مضاعفات‬ ‫من‬ ‫ليست‬m+1
145
Question 7
■‫التالية‬ ‫اللعبة‬ ‫لدينا‬ ‫ليكن‬:‫من‬ ‫كومة‬ ‫يوجد‬n‫قطعة‬.‫على‬ ‫بأخذ‬ ‫دوره‬ ‫يأتي‬ ‫حين‬ ‫الالعب‬ ‫يقوم‬
‫األكثر‬ ‫وعلى‬ ‫واحدة‬ ‫قطعة‬ ‫األقل‬m‫الكومة‬ ‫من‬ ‫قطعة‬.‫قطعة‬ ‫أخر‬ ‫يأخذ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬
‫الكومة‬ ‫من‬.‫يلي‬ ‫فيما‬ ‫الصحيحة‬ ‫الجملة‬ ‫حدد‬:
.A‫دائما‬ ‫باللعب‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬
.B‫دائما‬ ‫باللعب‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يخسر‬
.C‫كانت‬ ‫إذا‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬n‫مضاعفات‬ ‫من‬m
.D‫كانت‬ ‫إذا‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬n‫مضاعفات‬ ‫من‬ ‫ليست‬m+1
■‫توضيح‬:
–‫مثال‬ ‫كانت‬ ‫إذا‬n=20‫و‬m=3‫أو‬ ‫اثنتين‬ ‫أو‬ ‫قطعة‬ ‫يأخذ‬ ‫أن‬ ‫يمكن‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫فإن‬
‫ثالثة‬.‫قطعة‬ ‫الكومة‬ ‫في‬ ‫يكون‬ ‫دوره‬ ‫يأتي‬ ‫حين‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬(‫فيأخذها‬)‫أو‬
‫قطعتين‬(‫فيأخذهما‬)‫قطع‬ ‫ثالثة‬ ‫أو‬(‫فيأخذهم‬.)
146
AND OR GRAPH
147
And Or Graph
■ Problem Reduction:
– So far we have consideredsearch strategies for OR graphs through which we
want to find a single path to a goal.
– Such structurerepresent the fact that we know how to get from a node to a
goal state if we can discover how to get from that node to a goal state along any
one of the branches leaving it.
148
And Or Graph
■ AND-OR (Graph or Tree)
– It is useful for representing the solution of problems that can solved by
decomposingthem into a set of smaller problems, all of which must then be
solved.
– This decomposition, or reduction, generates arcs that we call AND arcs.
– One AND arc may point to any number of successornodes, all of which must be
solved in order for the arc to point to a solution.
– Just as in an OR graph, several arcs may emerge from a single node, indicating
a variety of ways in which the original problem might be solved.
– This is why the structureis called not simply an AND-graph but rather an AND-
OR graph (which also happens to be an AND-OR tree).
149
And Or Graph
Example
150
And Or Graph
■‫تمثل‬ ‫العقد‬Sub Problems
■And‫ه‬ ‫تجميع‬ ‫ثم‬ ‫ومن‬ ‫جميعها‬ ‫حلها‬ ‫يجب‬ ‫الجزئية‬ ‫السائل‬ ‫من‬ ‫مجموعة‬ ‫لدينا‬ ‫أنه‬ ‫تعني‬‫ذه‬
‫الحلول‬.
■OR‫إحداها‬ ‫نختار‬ ‫أن‬ ‫يجب‬ ‫التي‬ ‫الخيارات‬ ‫من‬ ‫مجموعة‬ ‫لدينا‬ ‫أنه‬ ‫تعني‬.
■Start Node‫ال‬ ‫هي‬Initial Problem
■Terminal Nodes (Leafs)‫محلولة‬ ‫تكون‬ ‫قد‬ ‫بسيطة‬ ‫مسائل‬ ‫هي‬.
■Solution‫هو‬Sub Graph‫من‬AND/OR Graph‫ب‬ ‫يبدأ‬Start Node‫ال‬ ‫وكل‬Terminal
Nodes‫محلولة‬ ‫جزئية‬ ‫مسائل‬ ‫هي‬ ‫فيه‬,‫على‬ ‫يحتوي‬ ‫كان‬ ‫اذا‬And‫كافة‬ ‫تكون‬ ‫أن‬ ‫يجب‬
‫الجزئية‬ ‫المسائل‬(‫الخيارات‬)‫على‬ ‫يحتوي‬ ‫كان‬ ‫واذا‬ ،ً‫معا‬ ‫حلولها‬ ‫نجمع‬ ‫أن‬ ‫ويجب‬ ‫محلولة‬OR
‫محلول‬ ‫قل‬ٌ‫األ‬ ‫على‬ ‫واحد‬ ‫خيار‬ ‫لدينا‬ ‫يكون‬ ‫أن‬ ‫يجب‬.
151
AO* Algorithm
■‫خوارزمية‬ ‫بين‬ ‫الرئيسي‬ ‫الفرق‬A*‫و‬AO*
–‫ال‬ ‫أن‬ ‫هو‬A*‫خوارزمية‬ ‫هي‬‫لل‬OR Graph‫فقط‬.
–‫ال‬ ‫أما‬AO*‫خوارزمية‬ ‫هي‬‫لل‬AND-OR Graph‫فقط‬.
152
A
B C D
38
E F G H I J
17 9 27
(5) (10) (3) (4) (15) (10)
A
B
C
D(3)
(4)
(5)
(9)
AO* Algorithm
Example 1
153
AO* Algorithm
Example 1
A(8)
154
AO* Algorithm
Example 1
C
DB
A
(8)(1)
(2)
[12]
4 5
5
[13]
155
AO* Algorithm
Example 1
C
DB
A
(8)(4)
(2)
[15]
4 5
5
[13]
2
156
AO* Algorithm
Example 1
C
DB
A
(3)(4)
F
E
(2)
(1)
(0)
[15]
4 5
5
2
2
4
[8]
157
AO* Algorithm
Example 1
C
DB
A
(4)(4)
F
E
(2)
(3)
(0)
[15]
4 5
5
2
2
2
4
[9]
3
158
AO* Algorithm
Example 1
C
DB
A
(4)
F
E
(2)
(3)
(0)
[15]
4 5
5
2
2
2
4
Solved
3
Solved
Solved
159
AO* Algorithm
Example 2
■‫التالية‬ ‫القواعد‬ ‫مجموعة‬ ‫لدينا‬ ‫لتكن‬:
– 𝐴 → 𝑂𝑃0 𝑄 & 𝑅
– 𝐴 → 𝑂𝑃1 𝐵& 𝐶
– 𝐴 → 𝑂𝑃2 𝐷
– 𝐴 → 𝑂𝑃3 𝐸&𝐹
– 𝐶 → 𝑂𝑃4 𝑃&𝐾
– 𝐷 → 𝑂𝑃5 𝐺&𝐻
– 𝐷 → 𝑂𝑃6 𝐼& 𝐽
– 𝐸 → 𝑂𝑃7 𝐾
– 𝐸 → 𝑂𝑃8 𝐿&𝑀
– 𝐾 → 𝑂𝑃9 𝑁&𝑂&𝐺
– 𝑅 → 𝑂𝑃10 𝑆&𝑇
– 𝑅 → 𝑂𝑃11 𝑈&𝑉
160
AO* Algorithm
Example 2
■‫المعامالت‬ ‫كلفة‬ ‫ستكون‬ ‫حيث‬:
■‫الكلف‬ ‫تقديرات‬ ‫وستكون‬:
■‫المحلولة‬ ‫النهائية‬ ‫المسائل‬:
–B,F,G,N,O,P,Q,S
161
AO* Algorithm
Example 2
■‫ال‬ ‫شجرة‬ ‫تحوي‬AND/OR‫المسألة‬ ‫لحل‬A:
■‫للمسألة‬ ‫حل‬ ‫تعطينا‬ ‫التي‬ ‫الخيارات‬ ‫إحدى‬ ‫من‬ ‫نكمل‬ ‫أن‬ ‫يجب‬A‫ال‬ ‫نختار‬ ‫لذلك‬Min‫بين‬
‫وهو‬ ‫الخيارات‬ ‫تلك‬ ‫كلف‬20‫من‬ ‫فنكمل‬R
162
AO* Algorithm
Example 2
163
AO* Algorithm
Example 2
■‫في‬ ‫االكمال‬ ‫عند‬R‫ال‬ ‫الكلفة‬ ‫فنرفع‬ ‫المسألة‬ ‫هذه‬ ‫لحل‬ ‫خيارين‬ ‫يوجد‬ ‫أنه‬ ‫نجد‬Min‫من‬
‫وهي‬ ‫األب‬ ‫العقدة‬ ‫معلومات‬ ‫على‬ ‫لنعدل‬ ‫الخيارين‬ ‫هذين‬ ‫كلفة‬A‫الذي‬ ‫الخيار‬ ‫كلفة‬ ‫فتصبح‬
‫هي‬ ً‫مسبقا‬ ‫اخترناه‬60+10=70‫خيارات‬ ‫من‬ ‫أخر‬ ‫خيار‬ ‫اختيار‬ ‫نعيد‬ ‫أن‬ ‫علينا‬ ‫يجب‬ ‫وبالتالي‬
‫حل‬A‫ال‬ ‫هي‬ ‫كلفته‬ ‫تكون‬ ‫بحيث‬Min‫هي‬ ‫والتي‬47‫المسألة‬ ‫مع‬ ‫فنكمل‬D
164
AO* Algorithm
Example 2
165
AO* Algorithm
Example 2
■‫العقدة‬ ‫عند‬ ‫الحال‬ ‫كانت‬ ‫كما‬R‫العقدة‬ ‫عند‬ ‫ستكون‬D‫في‬ ‫تغير‬ ‫إلى‬ ‫أدى‬ ‫التعديل‬ ‫أن‬ ‫ونالحظ‬
‫ال‬ ‫قيمة‬Min‫ستكون‬ ‫والتي‬48‫لذلك‬ ‫خيار‬ ‫أخر‬ ‫اختيار‬ ‫من‬ ‫المتوقعة‬ ‫التكلفة‬ ‫عن‬ ‫تعبر‬ ‫وهي‬
‫مع‬ ‫سنكمل‬E
166
AO* Algorithm
Example 2
167
AO* Algorithm
Example 2
■‫ع‬ ‫المتوقعة‬ ‫التكلفة‬ ‫قيمة‬ ‫تغير‬ ‫إلى‬ ‫تؤدي‬ ‫لم‬ ‫األبناء‬ ‫حول‬ ‫المعلومات‬ ‫زيادة‬ ‫أن‬ ‫نالحظ‬‫األب‬ ‫ند‬
‫للعقدة‬ ‫وننتقل‬ ‫األخير‬ ‫الخيار‬ ‫معالجة‬ ‫في‬ ‫نكمل‬ ‫لذلك‬K
168
AO* Algorithm
Example 2
169
AO* Algorithm
Example 2
■‫المسألة‬ ‫حل‬ ‫تكلفة‬ ‫أن‬ ‫نالحظ‬K‫هي‬55‫توقعنا‬ ‫كما‬ ‫وليست‬30‫المعلومات‬ ‫نعدل‬ ‫لذلك‬
‫السابقة‬ ‫بالشجرة‬ ‫موضح‬ ‫هو‬ ‫كما‬ ‫الجذر‬ ‫باتجاه‬.‫نستط‬ ‫التعديل‬ ‫عملية‬ ‫استكمال‬ ‫عند‬‫أن‬ ‫يع‬
‫ال‬ ‫التكلفة‬ ‫قيمة‬ ‫أن‬ ‫نالحظ‬Min‫للعقدة‬ ‫المتاحة‬ ‫للخيارات‬A‫هي‬55‫من‬ ‫سنكمل‬ ‫لذلك‬
‫العقدة‬C
170
AO* Algorithm
Example 2
171
AO* Algorithm
Example 2
■‫العقدة‬ ‫عند‬ ‫الحال‬ ‫كانت‬ ‫كما‬E‫العقدة‬ ‫عند‬ ‫الحال‬ ‫هي‬C‫في‬ ‫التعديل‬ ‫أن‬ ‫الفرق‬ ‫مالحظة‬ ‫مع‬
‫التقديري‬ ‫الكلفة‬ ‫تغيير‬ ‫إلى‬ ‫يؤدي‬ ‫لم‬ ‫الجذر‬ ‫إلى‬ ً‫وصوال‬ ‫أب‬ ‫عقدة‬ ‫كل‬ ‫عند‬ ‫المعلومات‬‫لهذا‬ ‫ة‬
‫نستط‬ ‫الخيار‬ ‫هذا‬ ‫من‬ ‫وبالتالي‬ ‫األقل‬ ‫هي‬ ‫بقيت‬ ‫تكلفته‬ ‫أن‬ ‫ونالحظ‬ ‫الجذر‬ ‫عند‬ ‫الخيار‬‫أن‬ ‫يع‬
‫الحل‬ ‫أن‬ ‫نقول‬‫األمثلي‬‫التالي‬ ‫بالشكل‬ ‫تمثيله‬ ‫يمكن‬:
172
AO* Algorithm
Example 2
■‫هي‬ ‫الحل‬ ‫لهذا‬ ‫المقابلة‬ ‫التكلفة‬ ‫وستكون‬55
173
PROPOSITIONAL
CALCULUS
‫الفرضيات‬ ‫حساب‬
174
Syntax
(‫اللغة‬ ‫)مكونات‬
■‫الذرات‬( :Atoms)
–‫السالسل‬ ‫من‬ ‫مجموعة‬‫المحرفية‬‫كبير‬ ‫بحرف‬ ‫تبدأ‬ ‫التي‬.
–‫مثل‬:P, Q, R, P1, ON_A_B
■‫الروابط‬( :Connectors)
–∨‫تدعى‬ ‫والتي‬or
–∧‫تدعى‬ ‫والتي‬and
–⏋‫تدعى‬ ‫والتي‬not
–⇒‫تدعى‬ ‫والتي‬implies‫اقتضاء‬ ‫او‬
■‫التركيب‬ ‫جيدة‬ ‫الصيغ‬( :Well Formed Formulas WFF)
–W1 ∨ W2
–W1 ∧ W2
–W1 ⇒ W2
–⏋W1
175
Semantic
(‫)الداللة‬
176
Equivalence
(‫)التكافؤ‬
■‫من‬ ‫نفسها‬ ‫الحقيقة‬ ‫قيم‬ ‫لهما‬ ‫كانت‬ ‫وفقط‬ ‫اذا‬ ‫متكافئتان‬ ‫انهما‬ ‫صيغتين‬ ‫عن‬ ‫نقول‬‫كل‬ ‫اجل‬
‫التفاسير‬.
■‫قوانين‬‫دومرغان‬:
■‫اإليجاب‬ ‫عكس‬ ‫قانون‬:
177
Rules
178
Validity and Satisfiability
■ A sentenceis valid if it is true in all models
– e.g., True, A A, A  A, (A  (A  B))  B
■ Validity is connected to inference via the Deduction Theorem:
– KB ╞ α if and only if (KB  α) is valid
■ A sentenceis satisfiable if it is true in some model
– e.g., A B, C
■ A sentenceis unsatisfiable if it is true in no models
– e.g., AA
■ Satisfiability is connected to inference via the following:
– KB ╞ α if and only if (KB α) is unsatisfiable
179
Conjunctive Normal Form (CNF)
(‫النظامي‬ ‫)الشكل‬
■‫مجموعات‬ ‫عدة‬ ‫من‬ ‫مؤلفة‬ ‫تكون‬ ‫عندما‬ ‫النظامي‬ ‫بالشكل‬ ‫الصيغة‬ ‫أن‬ ‫نقول‬,‫ذر‬ ‫بين‬ ‫يوجد‬‫ات‬
‫الواحدة‬ ‫المجموعة‬‫متتاليتين‬ ‫مجموعتين‬ ‫كل‬ ‫وبين‬
■ً‫مثال‬( :q3q2q1)(p3q3)(p1p1q1q2)
180
Conjunctive Normal Form (CNF)
(‫النظامي‬ ‫)الشكل‬
■‫النظامي‬ ‫الشكل‬ ‫إلى‬ ‫التحويل‬ ‫خطوات‬:
–‫بينهما‬ ‫اقتضاءين‬ ‫إلى‬ ‫بتحويله‬ ‫التكافؤ‬ ‫من‬ ‫التخلص‬
–‫العالقة‬ ‫طريق‬ ‫عن‬ ‫االقتضاء‬ ‫من‬ ‫التخلص‬:p  q   p  q
–‫م‬ ‫والتخلص‬ ‫أقواس‬ ‫على‬ ‫وليس‬ ‫فقط‬ ‫ذرات‬ ‫على‬ ‫بجعله‬ ‫وذلك‬ ‫النفي‬ ‫مجال‬ ‫تقليص‬‫ن‬
‫المتتاليين‬ ‫النفيين‬
–‫النظامي‬ ‫الشكل‬ ‫على‬ ‫للحصول‬ ‫التجميع‬ ‫قوانين‬ ‫تطبيق‬
–‫بينها‬ ‫ألن‬ ‫واحدة‬ ‫مجموعة‬ ‫في‬ ‫المتشابهة‬ ‫الذرات‬ ‫اختزال‬ ‫يمكننا‬‫حذف‬ ‫يمكننا‬ ‫وكذلك‬
‫على‬ ‫الحاوي‬ ‫الحد‬ً‫دوما‬ ‫محقق‬ ‫يكون‬ ‫ألنه‬ ‫ونفيها‬ ‫ذرة‬ ‫بين‬
181
Conjunctive Normal Form (CNF)
(‫النظامي‬ ‫)الشكل‬
■‫مثال‬:
–‫النظامي‬ ‫الشكل‬ ‫إلى‬ ‫التالية‬ ‫الصيغة‬ ‫لنحول‬:(p  q)  (R  q)
■‫الحل‬:
–‫االقتضاءين‬ ‫من‬ ‫نتخلص‬ ً‫أوال‬: ( p  q )  ( R  q)
–‫النفي‬ ‫بإدخال‬ ‫نقوم‬ ‫ثم‬:(p   q )   R  q
–‫التوزيعية‬ ‫الخاصة‬ ‫نستخدم‬:(p   R  p) (q   R  q)
–‫والمتناقضة‬ ‫المتشابهة‬ ‫الذرات‬ ‫نختزل‬:p   R
182
Conjunctive Normal Form (CNF)
(‫النظامي‬ ‫)الشكل‬
■‫الضرورية‬ ‫المفاهيم‬ ‫بعض‬:
–‫صيغة‬ ‫لكل‬ ‫أن‬ ‫هنا‬ ‫لنالحظ‬WFF‫الصحة‬ ‫جهة‬ ‫من‬ ‫حاالت‬ ‫ثالث‬:
–ً‫دوما‬ ‫صحيحة‬ ‫تكون‬ ‫فقد‬satisfiable(valid)‫مثل‬pp
–ً‫دوما‬ ‫خاطئة‬ ‫تكون‬ ‫أو‬unsatisfiable‫مثل‬pp
–‫شرطية‬ ‫تكون‬ ‫أو‬conditional‫مثل‬p
–ً‫تفسيرا‬ ‫ندعو‬interpretation‫كل‬model(‫لدينا‬ ‫التي‬ ‫المتحوالت‬ ‫قيم‬ ‫من‬ ‫تركيبة‬)
‫المعرفة‬ ‫قاعدة‬ ‫في‬ ‫الموجودة‬ ‫الحقائق‬ ‫جميع‬ ‫تكون‬ ‫بحيث‬knowledgebase‫صحيحة‬
ً‫معا‬
183
From WFF to CNF
(Conjunctive Normal Form)
184
From WFF to CNF
(Conjunctive Normal Form)
185
Resolution Refutations
(‫بالنقض‬ ‫)الحل‬
■‫لدي‬ ‫التي‬ ‫المعلومات‬ ‫قاعدة‬ ‫إلى‬ ‫نضيفها‬ ‫ثم‬ ‫برهانها‬ ‫المطلوب‬ ‫القضية‬ ‫نفي‬ ‫نأخذ‬ ‫هنا‬‫نا‬
■‫المعلومات‬ ‫قاعدة‬ ‫في‬ ‫القضايا‬ ‫نحول‬(‫برهانها‬ ‫المطلوب‬ ‫القضية‬ ‫نفي‬ ‫فيها‬ ‫بما‬)‫ا‬ ‫إلى‬‫لشكل‬
‫النظامي‬
■‫ن‬ ‫نضيف‬ ‫حيث‬ ‫النظامي‬ ‫الشكل‬ ‫إلى‬ ‫المحولة‬ ‫المعلومات‬ ‫قاعدة‬ ‫على‬ ‫الحل‬ ‫قاعدة‬ ‫نطبق‬‫اتج‬
‫قابل‬ ‫عبارات‬ ‫لدينا‬ ‫يبقى‬ ‫ال‬ ‫حتى‬ ‫الكرة‬ ‫ونعاود‬ ‫مرة‬ ‫كل‬ ‫في‬ ‫المعطيات‬ ‫قاعدة‬ ‫إلى‬ ‫الحل‬‫ة‬
‫للحل‬(‫خاطئة‬ ‫المبرهنة‬ ‫أن‬ ‫نقول‬ ‫عندها‬)‫الخالية‬ ‫المجموعة‬ ‫إلى‬ ‫نصل‬ ‫أو‬nil(‫نقول‬ ‫عندها‬
‫صحيحة‬ ‫المبرهنة‬ ‫أن‬)
186
Resolution Refutations Example
(‫بالنقض‬ ‫)الحل‬
■‫البطاري‬ ‫حالة‬ ‫تحسس‬ ‫ويمكنه‬ ‫األشياء‬ ‫بحمل‬ ‫يقوم‬ ‫آلي‬ ‫إنسان‬ ‫ذراع‬ ‫ذلك‬ ‫على‬ ‫كمثال‬ ‫لنأخذ‬‫إذا‬ ‫ة‬
‫ال‬ ‫أم‬ ‫فارغة‬ ‫كانت‬B‫ال‬ ‫أو‬ ‫تتحرك‬ ‫كانت‬ ‫إذا‬ ‫الذراع‬ ‫تحسس‬ ‫يمكنه‬ ‫أنه‬ ‫كما‬M‫القضية‬ ‫ولدينا‬L‫التي‬
‫ذلك‬ ‫تحسس‬ ‫يمكننه‬ ‫ال‬ ‫اآللي‬ ‫اإلنسان‬ ‫ولكن‬ ‫ال‬ ‫أم‬ ‫للحمل‬ ‫قابل‬ ‫الجسم‬ ‫أن‬ ‫على‬ ‫تدل‬(‫ألنه‬‫لن‬
‫بالطبع‬ ‫حملها‬ ‫قبل‬ ‫األجسام‬ ‫بوزن‬ ‫يقوم‬)!!
■‫التالية‬ ‫العبارات‬ ‫لدينا‬ ‫كان‬ ‫فإذا‬:
–B‫مليئة‬ ‫البطارية‬
– M‫يتحرك‬ ‫ال‬ ‫الذراع‬
–B  L  M‫الذراع‬ ‫تتحرك‬ ‫أن‬ ‫يجب‬ ‫للحمل‬ ‫قابل‬ ‫والجسم‬ ‫مليئة‬ ‫البطارية‬ ‫كان‬ ‫إذا‬
■‫برهان‬ ‫والمطلوب‬ L‫حمله‬ ‫يمكن‬ ‫ال‬ ‫الجسم‬ ‫أن‬ ‫أي‬
–‫على‬ ‫لنحصل‬ ‫المبرهنة‬ ‫بنفي‬ ً‫أوال‬ ‫فنقوم‬ ‫بالنقض‬ ‫الحل‬ ‫طريقة‬ ‫باستخدام‬ ‫لنحل‬L
–‫على‬ ‫فنحصل‬ ‫النظامي‬ ‫الشكل‬ ‫إلى‬ ‫الثالثة‬ ‫العبارة‬ ‫نحول‬ ‫ثم‬: B   L  M
–‫شجرة‬ ‫شكل‬ ‫على‬ ‫نرسمها‬ ‫أن‬ ‫يفضل‬ ‫والتي‬ ‫الحل‬ ‫طريقة‬ ‫نطبق‬ ‫ثم‬:
187
Resolution Refutations Example
(‫بالنقض‬ ‫)الحل‬
188
Example
■‫االستنتاج‬ ‫ثم‬ ‫االستتباع‬ ‫باستخدام‬ ‫ونحله‬ ‫التالي‬ ‫المثال‬ ‫لنأخذ‬:
–‫أن‬ ‫برهن‬(A  (A  B))  B‫هي‬valid(ً‫دوما‬ ‫صحيحة‬)
189
Example
■‫االستتباع‬:‫الحقيقة‬ ‫جدول‬ ‫نستخدم‬:
■‫الحاالت‬ ‫جميع‬ ‫أجل‬ ‫من‬ ‫صحيحة‬ ‫برهانها‬ ‫المطلوب‬ ‫القضية‬ ‫أن‬ ‫الحقيقة‬ ‫جدول‬ ‫من‬ ‫نالحظ‬
190
(A  (A  B))  BA  (A  B)A  BBA
10100
10110
10001
11111
Example
■‫االستنتاج‬:‫النظامي‬ ‫الشكل‬ ‫إلى‬ ‫العبارة‬ ‫لنحول‬:
– (A  (A  B))  B ➔
–  (A  ( A  B))  B ➔
– A  ( A  B)  B ➔
– A  (A   B)  B ➔
– ((A  A)  (A   B))  B ➔
– (A   B)  B ➔
– A  true ➔
– true
191
MCQ
192
Question 1
■‫العمياء‬ ‫البحث‬ ‫خوارزميات‬ ‫من‬ ‫ليست‬ ‫يلي‬ ‫مما‬ ‫واحدة‬(Uninformed:)
.ABFS
.Bcost search
.CDFS
.DA*
193
Question 1
■‫العمياء‬ ‫البحث‬ ‫خوارزميات‬ ‫من‬ ‫ليست‬ ‫يلي‬ ‫مما‬ ‫واحدة‬(Uninformed:)
.ABFS
.Bcost search
.CDFS
.DA*
194
Question 2
■‫المعرفة‬ ‫قاعدة‬ ‫تحتوي‬:
.A‫فقط‬ ‫حقائق‬
.B‫فقط‬ ‫قواعد‬
.C‫وقواعد‬ ‫حقائق‬
.D‫صحيحة‬ ‫إجابة‬ ‫وال‬
195
Question 2
■‫المعرفة‬ ‫قاعدة‬ ‫تحتوي‬:
.A‫فقط‬ ‫حقائق‬
.B‫فقط‬ ‫قواعد‬
.C‫وقواعد‬ ‫حقائق‬
.D‫صحيحة‬ ‫إجابة‬ ‫وال‬
196
Question 3
■‫ال‬ ‫حالة‬ ‫في‬ ‫االستدالل‬ ‫تطبيق‬ ‫يمكن‬ ‫ال‬Uncertainly:
.A‫صح‬
.B‫خطأ‬
.C‫الحاالت‬ ‫بعض‬ ‫في‬
.D‫حالة‬ ‫في‬Fuzzy Logic
197
Question 3
■‫ال‬ ‫حالة‬ ‫في‬ ‫االستدالل‬ ‫تطبيق‬ ‫يمكن‬ ‫ال‬Uncertainly:
.A‫صح‬
.B‫خطأ‬
.C‫الحاالت‬ ‫بعض‬ ‫في‬
.D‫حالة‬ ‫في‬Fuzzy Logic
198
Question 4
■‫اآللي‬ ‫بالتعليم‬ ‫يتعلق‬ ‫فيما‬:
.A‫المراقب‬ ‫وغير‬ ‫المراقب‬ ‫هما‬ ‫فقط‬ ‫التعليم‬ ‫من‬ ‫نوعين‬ ‫هناك‬.
.B‫راجعة‬ ‫تغذية‬ ‫وجود‬ ‫يتضمن‬ ‫المراقب‬ ‫التعليم‬.
.C‫األلعاب‬ ‫في‬ ‫يستخدم‬ ‫المراقب‬ ‫غير‬ ‫التعليم‬.
.Da&b
199
Question 4
■‫اآللي‬ ‫بالتعليم‬ ‫يتعلق‬ ‫فيما‬:
.A‫المراقب‬ ‫وغير‬ ‫المراقب‬ ‫هما‬ ‫فقط‬ ‫التعليم‬ ‫من‬ ‫نوعين‬ ‫هناك‬.
.B‫راجعة‬ ‫تغذية‬ ‫وجود‬ ‫يتضمن‬ ‫المراقب‬ ‫التعليم‬.
.C‫األلعاب‬ ‫في‬ ‫يستخدم‬ ‫المراقب‬ ‫غير‬ ‫التعليم‬.
.Da&b
200
Question 5
■‫ال‬Classification‫هو‬:
.A‫القيمة‬ ‫متقطع‬ ‫تعليم‬ ‫تابع‬.
.B‫القيمة‬ ‫مستمر‬ ‫تعليم‬ ‫تابع‬.
.C‫بالتعليم‬ ‫له‬ ‫عالقة‬ ‫ال‬.
.D‫نفسه‬ ‫هو‬Regression
201
Question 5
■‫ال‬Classification‫هو‬:
.A‫القيمة‬ ‫متقطع‬ ‫تعليم‬ ‫تابع‬.
.B‫القيمة‬ ‫مستمر‬ ‫تعليم‬ ‫تابع‬.
.C‫بالتعليم‬ ‫له‬ ‫عالقة‬ ‫ال‬.
.D‫نفسه‬ ‫هو‬Regression
202
Question 6
■‫ال‬Regression‫هو‬:
.A‫القيمة‬ ‫متقطع‬ ‫تعليم‬ ‫تابع‬.
.B‫القيمة‬ ‫مستمر‬ ‫تعليم‬ ‫تابع‬.
.C‫بالتعليم‬ ‫له‬ ‫عالقة‬ ‫ال‬.
.D‫نفسه‬ ‫هو‬Classification
203
Question 6
■‫ال‬Regression‫هو‬:
.A‫القيمة‬ ‫متقطع‬ ‫تعليم‬ ‫تابع‬.
.B‫القيمة‬ ‫مستمر‬ ‫تعليم‬ ‫تابع‬.
.C‫بالتعليم‬ ‫له‬ ‫عالقة‬ ‫ال‬.
.D‫نفسه‬ ‫هو‬Classification
204
Question 7
■‫يعتبر‬ ‫التالي‬ ‫من‬ ‫أي‬Model‫للقضية‬ ‫بالنسبة‬:P∨Q ⇒ ¬P∧Q¬
.AP=false,Q=false
.BP=false,Q=true
.CP=true,Q=false
.DP=true,Q=true
205
Question 7
■‫يعتبر‬ ‫التالي‬ ‫من‬ ‫أي‬Model‫للقضية‬ ‫بالنسبة‬:P∨Q ⇒ ¬P∧Q¬
.AP=false,Q=false
.BP=false,Q=true
.CP=true,Q=false
.DP=true,Q=true
206
Question 8
■‫التالية‬ ‫البحث‬ ‫شجرة‬ ‫لدينا‬ ‫بفرض‬:‫تط‬ ‫عند‬ ‫زيارتها‬ ‫يتم‬ ‫لن‬ ‫التالية‬ ‫العقد‬ ‫من‬ ‫واحدة‬‫قطع‬ ‫بيق‬
‫ألفا‬-‫بيتا‬:
.AD
.BF
.CC
.DD&F
207
Question 8
■‫التالية‬ ‫البحث‬ ‫شجرة‬ ‫لدينا‬ ‫بفرض‬:‫تط‬ ‫عند‬ ‫زيارتها‬ ‫يتم‬ ‫لن‬ ‫التالية‬ ‫العقد‬ ‫من‬ ‫واحدة‬‫قطع‬ ‫بيق‬
‫ألفا‬-‫بيتا‬:
.AD
.BF
.CC
.DD&F
208
Question 9
■‫مسألة‬ ‫تعتبر‬BFS:
.Aً‫دوما‬ ‫الحل‬ ‫وأمثليه‬ ‫منتهية‬.
.B‫موجبة‬ ‫األدنى‬ ‫للعقد‬ ‫االنتقال‬ ‫تكلفة‬ ‫كانت‬ ‫إذا‬ ‫وأمثليه‬ ً‫دوما‬ ‫منتهية‬.
.Cً‫دوما‬ ‫منتهية‬.
.D‫صحيحة‬ ‫إجابة‬ ‫وال‬.
209
Question 9
■‫مسألة‬ ‫تعتبر‬BFS:
.Aً‫دوما‬ ‫الحل‬ ‫وأمثليه‬ ‫منتهية‬.
.B‫موجبة‬ ‫األدنى‬ ‫للعقد‬ ‫االنتقال‬ ‫تكلفة‬ ‫كانت‬ ‫إذا‬ ‫وأمثليه‬ ً‫دوما‬ ‫منتهية‬.
.Cً‫دوما‬ ‫منتهية‬.
.D‫صحيحة‬ ‫إجابة‬ ‫وال‬.
210
Question 10
■‫مسألة‬ ‫تعتبر‬DFS:
.Aً‫دوما‬ ‫الحل‬ ‫وأمثليه‬ ‫منتهية‬.
.B‫أمثليه‬ ‫وغير‬ ً‫دوما‬ ‫منتهية‬ ‫غير‬.
.Cً‫دوما‬ ‫منتهية‬ ‫غير‬.
.D‫صحيحة‬ ‫إجابة‬ ‫وال‬.
211
Question 10
■‫مسألة‬ ‫تعتبر‬DFS:
.Aً‫دوما‬ ‫الحل‬ ‫وأمثليه‬ ‫منتهية‬.
.B‫أمثليه‬ ‫وغير‬ ً‫دوما‬ ‫منتهية‬ ‫غير‬.
.Cً‫دوما‬ ‫منتهية‬ ‫غير‬.
.D‫صحيحة‬ ‫إجابة‬ ‫وال‬.
212
Question 11
■‫إل‬ ‫األورانج‬ ‫العقدة‬ ‫من‬ ‫للوصول‬ ‫التالي‬ ‫البيان‬ ‫على‬ ‫مسار‬ ‫أقصر‬ ‫خوارزمية‬ ‫تطبيق‬ ‫عند‬‫ى‬
‫التكلفة‬ ‫تكون‬ ،‫األزرق‬:
.A10.5
.B1.5
.C7
.D‫ذلك‬ ‫غير‬
213
Question 11
■‫إل‬ ‫األورانج‬ ‫العقدة‬ ‫من‬ ‫للوصول‬ ‫التالي‬ ‫البيان‬ ‫على‬ ‫مسار‬ ‫أقصر‬ ‫خوارزمية‬ ‫تطبيق‬ ‫عند‬‫ى‬
‫التكلفة‬ ‫تكون‬ ،‫األزرق‬:
.A10.5
.B1.5
.C7
.D‫ذلك‬ ‫غير‬
214
Question 13
■‫بالنظام‬ ‫ملونة‬ ‫صورة‬RGB،‫قياسها‬200*200‫شبكة‬ ‫عبر‬ ‫إرسالها‬ ‫نريد‬ ،PSTN‫عرض‬
‫حزمتها‬64KBPS‫اإلرسال؟‬ ‫يتم‬ ‫لكي‬ ‫الالزم‬ ‫الزمن‬ ‫هو‬ ‫ما‬
.A15‫ثانية‬
.B‫من‬ ‫أكثر‬15‫ثانية‬
.C‫من‬ ‫أقل‬15‫ثانية‬
.D‫اإلرسال‬ ‫يتم‬ ‫لن‬
215
Question 13
■‫بالنظام‬ ‫ملونة‬ ‫صورة‬RGB،‫قياسها‬200*200‫شبكة‬ ‫عبر‬ ‫إرسالها‬ ‫نريد‬ ،PSTN‫عرض‬
‫حزمتها‬64KBPS‫اإلرسال؟‬ ‫يتم‬ ‫لكي‬ ‫الالزم‬ ‫الزمن‬ ‫هو‬ ‫ما‬
.A15‫ثانية‬
.B‫من‬ ‫أكثر‬15‫ثانية‬
.C‫من‬ ‫أقل‬15‫ثانية‬
.D‫اإلرسال‬ ‫يتم‬ ‫لن‬
216
CONTACT INFO

Contenu connexe

Tendances

Reinforcement learning, Q-Learning
Reinforcement learning, Q-LearningReinforcement learning, Q-Learning
Reinforcement learning, Q-LearningKuppusamy P
 
Introduction Artificial Intelligence a modern approach by Russel and Norvig 1
Introduction Artificial Intelligence a modern approach by Russel and Norvig 1Introduction Artificial Intelligence a modern approach by Russel and Norvig 1
Introduction Artificial Intelligence a modern approach by Russel and Norvig 1Garry D. Lasaga
 
Machine Learning
Machine LearningMachine Learning
Machine LearningRahul Kumar
 
Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...
Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...
Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...Simplilearn
 
Deep Belief Networks
Deep Belief NetworksDeep Belief Networks
Deep Belief NetworksHasan H Topcu
 
best presentation Artitficial Intelligence
best presentation Artitficial Intelligencebest presentation Artitficial Intelligence
best presentation Artitficial Intelligencejennifer joe
 
Uninformed Search technique
Uninformed Search techniqueUninformed Search technique
Uninformed Search techniqueKapil Dahal
 
Deep Learning for Natural Language Processing
Deep Learning for Natural Language ProcessingDeep Learning for Natural Language Processing
Deep Learning for Natural Language ProcessingDevashish Shanker
 
Deep Learning for Computer Vision: Recurrent Neural Networks (UPC 2016)
Deep Learning for Computer Vision: Recurrent Neural Networks (UPC 2016)Deep Learning for Computer Vision: Recurrent Neural Networks (UPC 2016)
Deep Learning for Computer Vision: Recurrent Neural Networks (UPC 2016)Universitat Politècnica de Catalunya
 
Deep Learning: Towards General Artificial Intelligence
Deep Learning: Towards General Artificial IntelligenceDeep Learning: Towards General Artificial Intelligence
Deep Learning: Towards General Artificial IntelligenceRukshan Batuwita
 
Optimization for Deep Learning
Optimization for Deep LearningOptimization for Deep Learning
Optimization for Deep LearningSebastian Ruder
 
AI search techniques
AI search techniquesAI search techniques
AI search techniquesOmar Isaid
 
Deep Learning - Overview of my work II
Deep Learning - Overview of my work IIDeep Learning - Overview of my work II
Deep Learning - Overview of my work IIMohamed Loey
 
AI Heuristic Search - Beam Search - Simulated Annealing
AI Heuristic Search - Beam Search - Simulated AnnealingAI Heuristic Search - Beam Search - Simulated Annealing
AI Heuristic Search - Beam Search - Simulated AnnealingAhmed Gad
 

Tendances (20)

Greedy algorithm
Greedy algorithmGreedy algorithm
Greedy algorithm
 
Reinforcement learning, Q-Learning
Reinforcement learning, Q-LearningReinforcement learning, Q-Learning
Reinforcement learning, Q-Learning
 
Introduction Artificial Intelligence a modern approach by Russel and Norvig 1
Introduction Artificial Intelligence a modern approach by Russel and Norvig 1Introduction Artificial Intelligence a modern approach by Russel and Norvig 1
Introduction Artificial Intelligence a modern approach by Russel and Norvig 1
 
Machine Learning
Machine LearningMachine Learning
Machine Learning
 
Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...
Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...
Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...
 
Deep Q-Learning
Deep Q-LearningDeep Q-Learning
Deep Q-Learning
 
Deep Belief Networks
Deep Belief NetworksDeep Belief Networks
Deep Belief Networks
 
Minimax
MinimaxMinimax
Minimax
 
best presentation Artitficial Intelligence
best presentation Artitficial Intelligencebest presentation Artitficial Intelligence
best presentation Artitficial Intelligence
 
Uninformed Search technique
Uninformed Search techniqueUninformed Search technique
Uninformed Search technique
 
Deep Learning for Natural Language Processing
Deep Learning for Natural Language ProcessingDeep Learning for Natural Language Processing
Deep Learning for Natural Language Processing
 
Deep Learning for Computer Vision: Recurrent Neural Networks (UPC 2016)
Deep Learning for Computer Vision: Recurrent Neural Networks (UPC 2016)Deep Learning for Computer Vision: Recurrent Neural Networks (UPC 2016)
Deep Learning for Computer Vision: Recurrent Neural Networks (UPC 2016)
 
Greedy Algorihm
Greedy AlgorihmGreedy Algorihm
Greedy Algorihm
 
Artificial Intelligence Algorithms
Artificial Intelligence AlgorithmsArtificial Intelligence Algorithms
Artificial Intelligence Algorithms
 
Deep Learning: Towards General Artificial Intelligence
Deep Learning: Towards General Artificial IntelligenceDeep Learning: Towards General Artificial Intelligence
Deep Learning: Towards General Artificial Intelligence
 
Optimization for Deep Learning
Optimization for Deep LearningOptimization for Deep Learning
Optimization for Deep Learning
 
AI search techniques
AI search techniquesAI search techniques
AI search techniques
 
AI_Unit I notes .pdf
AI_Unit I notes .pdfAI_Unit I notes .pdf
AI_Unit I notes .pdf
 
Deep Learning - Overview of my work II
Deep Learning - Overview of my work IIDeep Learning - Overview of my work II
Deep Learning - Overview of my work II
 
AI Heuristic Search - Beam Search - Simulated Annealing
AI Heuristic Search - Beam Search - Simulated AnnealingAI Heuristic Search - Beam Search - Simulated Annealing
AI Heuristic Search - Beam Search - Simulated Annealing
 

Plus de Joud Khattab

Customer Engagement Management
Customer Engagement ManagementCustomer Engagement Management
Customer Engagement ManagementJoud Khattab
 
Design thinking and Role Playing
Design thinking and Role PlayingDesign thinking and Role Playing
Design thinking and Role PlayingJoud Khattab
 
Algorithms and Data Structure 2020
Algorithms and Data Structure 2020Algorithms and Data Structure 2020
Algorithms and Data Structure 2020Joud Khattab
 
Automata and Compiler 2020
Automata and Compiler 2020Automata and Compiler 2020
Automata and Compiler 2020Joud Khattab
 
Software Engineering 2020
Software Engineering 2020Software Engineering 2020
Software Engineering 2020Joud Khattab
 
Software Engineering 2018
Software Engineering 2018Software Engineering 2018
Software Engineering 2018Joud Khattab
 
Automate and Compiler 2018
Automate and Compiler 2018Automate and Compiler 2018
Automate and Compiler 2018Joud Khattab
 
Algorithms and Data Structure 2018
Algorithms and Data Structure 2018Algorithms and Data Structure 2018
Algorithms and Data Structure 2018Joud Khattab
 
Geospatial Information Management
Geospatial Information ManagementGeospatial Information Management
Geospatial Information ManagementJoud Khattab
 
Big Data for Development
Big Data for DevelopmentBig Data for Development
Big Data for DevelopmentJoud Khattab
 
Personality Detection via MBTI Test
Personality Detection via MBTI TestPersonality Detection via MBTI Test
Personality Detection via MBTI TestJoud Khattab
 
Optimization Techniques
Optimization TechniquesOptimization Techniques
Optimization TechniquesJoud Khattab
 
Network Address Translation (NAT)
Network Address Translation (NAT)Network Address Translation (NAT)
Network Address Translation (NAT)Joud Khattab
 
From Image Processing To Computer Vision
From Image Processing To Computer VisionFrom Image Processing To Computer Vision
From Image Processing To Computer VisionJoud Khattab
 

Plus de Joud Khattab (20)

Customer Engagement Management
Customer Engagement ManagementCustomer Engagement Management
Customer Engagement Management
 
Design thinking and Role Playing
Design thinking and Role PlayingDesign thinking and Role Playing
Design thinking and Role Playing
 
Algorithms and Data Structure 2020
Algorithms and Data Structure 2020Algorithms and Data Structure 2020
Algorithms and Data Structure 2020
 
Automata and Compiler 2020
Automata and Compiler 2020Automata and Compiler 2020
Automata and Compiler 2020
 
Database 2020
Database 2020Database 2020
Database 2020
 
Software Engineering 2020
Software Engineering 2020Software Engineering 2020
Software Engineering 2020
 
Software Engineering 2018
Software Engineering 2018Software Engineering 2018
Software Engineering 2018
 
Database 2018
Database 2018Database 2018
Database 2018
 
Automate and Compiler 2018
Automate and Compiler 2018Automate and Compiler 2018
Automate and Compiler 2018
 
Algorithms and Data Structure 2018
Algorithms and Data Structure 2018Algorithms and Data Structure 2018
Algorithms and Data Structure 2018
 
Data Storytelling
Data StorytellingData Storytelling
Data Storytelling
 
Geospatial Information Management
Geospatial Information ManagementGeospatial Information Management
Geospatial Information Management
 
Big Data for Development
Big Data for DevelopmentBig Data for Development
Big Data for Development
 
Personality Detection via MBTI Test
Personality Detection via MBTI TestPersonality Detection via MBTI Test
Personality Detection via MBTI Test
 
Fog Computing
Fog ComputingFog Computing
Fog Computing
 
Seasonal ARIMA
Seasonal ARIMASeasonal ARIMA
Seasonal ARIMA
 
Optimization Techniques
Optimization TechniquesOptimization Techniques
Optimization Techniques
 
Network Address Translation (NAT)
Network Address Translation (NAT)Network Address Translation (NAT)
Network Address Translation (NAT)
 
From Image Processing To Computer Vision
From Image Processing To Computer VisionFrom Image Processing To Computer Vision
From Image Processing To Computer Vision
 
Spark SQL
Spark SQLSpark SQL
Spark SQL
 

Artificial Intelligence 2018

  • 2. Content ■ Overview. ■ Prolog. ■ Search Algorithms. – Uniformed Search Algorithm. – Informed Search Algorithm. ■ Games Algorithms. – Min Max. – Alpha Beta. ■ And Or Graph. ■ Logic. ■ MCQ. 2
  • 4. Overview ■‫الصنعي‬ ‫الذكاء‬ ‫تعريف‬: –‫مثل‬ ‫التفكير‬ ‫أو‬ ‫اإلنسان‬ ‫مثل‬ ‫التصرف‬ ‫أنه‬ ‫على‬ ‫الصنعي‬ ‫الذكاء‬ ‫تعريف‬ ‫يمكننا‬‫اإلنسان‬. ‫أن‬ ‫على‬ ‫الصنعي‬ ‫الذكاء‬ ‫تعريف‬ ‫يمكننا‬ ‫لذلك‬ ‫األخطاء‬ ‫في‬ ‫يقع‬ ‫قد‬ ‫اإلنسان‬ ‫ولكن‬‫ه‬ ‫وعقالني‬ ‫منطقي‬ ‫بشكل‬ ‫التفكير‬ ‫أو‬ ‫التصرف‬. –‫تعريف‬Turing‫غرف‬ ‫في‬ ‫حاسب‬ ‫مع‬ ‫إنسان‬ ‫وضعنا‬ ‫إذا‬ ‫بأنه‬ ‫عرفه‬ ‫والذي‬ ‫الصنعي‬ ‫للذكاء‬‫ة‬ ‫اإلنسان‬ ‫وأخذ‬ ‫لوحده‬ ‫وحاسب‬ ‫حاسب‬ ‫مع‬ ‫إنسان‬ ‫له‬ ‫مجاورة‬ ‫غرفة‬ ‫في‬ ‫ووضعنا‬ ،‫واحدة‬ ‫يعرف‬ ‫أن‬ ‫يستطع‬ ‫لم‬ ‫فإذا‬ ‫الثانية‬ ‫الغرفة‬ ‫مع‬ ‫يتخاطب‬ ‫األولى‬ ‫الغرفة‬ ‫في‬ ‫الموجود‬‫مصدر‬ ‫أنها‬ ‫اآللة‬ ‫هذه‬ ‫عن‬ ‫نقول‬ ‫عندها‬ ‫اآللة‬ ‫أو‬ ‫اآلخر‬ ‫اإلنسان‬ ‫هو‬ ‫هل‬ ‫له‬ ‫القادمة‬ ‫األجوبة‬ ‫ذكية‬. 4
  • 5. Overview ■‫الصنعي‬ ‫الذكاء‬ ‫استخدامات‬: –‫الطبيعية‬ ‫اللغات‬ ‫معالجة‬ ■‫الحاسب‬ ‫مع‬ ‫للتخاطب‬ ‫الصوت‬ ‫استخدام‬ ‫أو‬ ‫مكتوب‬ ‫نص‬ ‫إلى‬ ‫الكالم‬ ‫تحويل‬. –‫الرؤيا‬ ‫مسألة‬: ■‫الوجوه‬ ‫واكتشاف‬ ‫الصور‬ ‫معالجة‬ ،‫آلي‬ ‫بشكل‬ ‫السيارة‬ ‫قيادة‬ ‫أو‬ ‫اآللي‬ ‫الطيار‬. –‫الروبوت‬ –‫المعطيات‬ ‫عن‬ ‫التنقيب‬ ■‫جديدة‬ ‫معلومات‬ ‫على‬ ‫للحصول‬ ‫المعطيات‬ ‫قاعدة‬ ‫في‬ ‫المخزنة‬ ‫المعطيات‬ ‫من‬ ‫يستفيد‬ ■‫المخابر‬ ‫أحد‬ ‫معطيات‬ ‫قاعدة‬ ‫خالل‬ ‫من‬ ‫ال‬ ‫أو‬ ‫وباء‬ ‫وجود‬ ‫استنتاج‬ ‫مثل‬. –... 5
  • 7. Prolog ■‫المنطقية‬ ‫البرمجة‬ ‫على‬ ‫تعتمد‬ ‫لغة‬ ‫هي‬: –‫المهم‬ ‫لينجز‬ ‫المستثمر‬ ‫قبل‬ ‫من‬ ‫للحاسب‬ ‫عطى‬ُ‫ت‬ ‫والقواعد‬ ‫الحقائق‬ ‫من‬ ‫مجموعة‬‫ة‬ ‫منه‬ ‫المطلوبة‬. ■‫المنطقي‬ ‫البرنامج‬ ‫أقسام‬ ‫هي‬ ‫والتي‬ ‫اللغة‬ ‫أقسام‬: –‫الحقائق‬(facts:)‫إلنجاز‬ ‫للحاسب‬ ‫المستخدم‬ ‫يعطيها‬ ‫التي‬ ‫المعلومات‬ ‫مجموعة‬ ‫وهي‬ ‫منه‬ ‫المطلوبة‬ ‫المهمة‬. –‫التساؤالت‬(queries:)‫المعلومات‬ ‫على‬ ‫الحصول‬ ‫طريقها‬ ‫عن‬ ‫نستطيع‬. –‫المتحوالت‬(variables.) –‫القواعد‬(rules:)‫المهمة‬ ‫إلنجاز‬ ‫قواعد‬ ‫لتشكيل‬ ‫الحقائق‬ ‫على‬ ‫االعتماد‬ ‫يمكننا‬ ‫المطلوبة‬. 7
  • 8. Prolog Facts ■‫الحقائق‬: –‫مثال‬:‫في‬ ‫عنها‬ ‫ونعبر‬ ‫زرقاء‬ ‫السماء‬prolog‫بالشكل‬:blue (sky). –‫أن‬ ‫حيث‬blue‫بينما‬ ‫العالقة‬ ‫هي‬sky‫العالقة‬ ‫هذه‬ ‫أغراض‬ ‫هي‬. –‫بنقطة‬ ً‫دائما‬ ‫الحقيقة‬ ‫تنتهي‬. –‫صغيرة‬ ‫بأحرف‬ ‫تكتب‬ ‫العالقة‬ ‫وأغراض‬ ‫العالقة‬ ‫أسماء‬ ً‫دائما‬. –‫امثلة‬: ■‫زيد‬ ‫بن‬ ‫أسامة‬:son(ousama, zaid). ■‫القراءة‬ ‫يحب‬ ‫أسامة‬:like(ousama, reading). ■‫الخيل‬ ‫ركوب‬ ‫يحب‬ ‫أسامة‬:like(ousama, horse_riding). –‫ع‬ ‫نحصل‬ ‫طريقها‬ ‫عن‬ ‫والتي‬ ‫للحل‬ ‫الالزمة‬ ‫البيانات‬ ‫قاعدة‬ ‫شكلنا‬ ‫قد‬ ‫نكون‬ ‫وبذلك‬‫لى‬ ‫الحل‬. 8
  • 9. Prolog Facts Examples ■ Lina is daughter of Ahmad: – daughter(lina, ahmad). ■ Ahmad likes reading: – like(ahmad, reading). 9
  • 10. Prolog Queries ■‫التساؤالت‬: –‫بنقطة‬ ً‫دائما‬ ‫التساؤل‬ ‫تنتهي‬. –‫إما‬ ‫أدخلناها‬ ‫التي‬ ‫المعلومات‬ ‫على‬ ‫بناء‬ ‫الجواب‬ ‫يكون‬Yes‫او‬No. –‫أمثلة‬ ■‫القراءة؟‬ ‫أسامة‬ ‫يحب‬ ‫هل‬?- like(ousama, reading). ■‫القراءة؟‬ ‫زيد‬ ‫يحب‬ ‫هل‬?- like(zaid, reading). 10
  • 11. Prolog Queries Examples ■ Facts: – like(lina, horse_riding). – like(ahmad, reading). ■ Query1: ?- like(lina, horse_riding). – result: Yes. ■ Query2: ?- like(lina, reading). – result: No. 11
  • 12. Prolog Variables ■‫المتحوالت‬: –‫أسامة؟‬ ‫يحبه‬ ‫الذي‬ ‫الشيء‬ ‫هو‬ ‫ما‬?- like(ousama, X). ■‫هو‬ ‫متحول‬ ‫استخدمنا‬ ‫أننا‬ ‫هنا‬ ‫نالحظ‬X‫هي‬ ‫اإلجابة‬ ‫ستكون‬ ‫وبذلك‬X = reading –‫ماذا؟‬ ‫يحب‬ ‫من‬.?- like (X, Y) ■‫هو‬ ‫الجواب‬ ‫فيكون‬:X = ousama, Y = reading ■‫ندخل‬ ‫ثم‬;‫على‬ ‫لنحصل‬:X = ousama, Y = horse_riding 12
  • 13. Prolog Variables Examples ■ Facts: – like(lina,horse_riding). – like(ahmad, reading). ■ Query1: ?- like(lina, Y). Y is variable “What does lina like?” – Result: Y=horse_riding ■ Query2: ?-like(X, reading). – Result: X=ahmad 13
  • 14. Prolog Rules ■‫القواعد‬: –‫البرنامج‬ ‫في‬ ‫جزء‬ ‫أهم‬ ‫هي‬. –‫الشكل‬ ‫تأخذ‬:A :- B1, B2, …, Bn . –‫حيث‬A‫القاعدة‬ ‫رأس‬ ‫وهو‬ ‫األيسر‬ ‫الطرف‬ ‫هو‬. –‫أخرى‬ ‫لقواعد‬ ‫استخدام‬ ‫أو‬ ‫حقائق‬ ‫هو‬ ‫األيمن‬ ‫الطرف‬ ‫بينما‬. –‫عالقة‬ ‫إلى‬ ‫الفاصلة‬ ‫ترمز‬ ً‫دائما‬and‫عالقة‬ ‫إلى‬ ‫المنقوطة‬ ‫الفاصلة‬ ‫و‬or. –‫األي‬ ‫الطرف‬ ‫يكون‬ ‫أن‬ ‫يجب‬ ً‫صحيحا‬ ‫األيسر‬ ‫الطرف‬ ‫يكون‬ ‫حتى‬ ‫السابق‬ ‫المثال‬ ‫في‬‫من‬ ‫صحيح‬ ‫كله‬. –‫حقيقة‬ ‫القاعدة‬ ‫تصبح‬ ‫عندها‬ ‫موجود‬ ‫غير‬ ‫اليميني‬ ‫الطرف‬ ‫كان‬ ‫إذا‬. 14
  • 15. Prolog Rules Examples ■ Facts: – father(ibrahim, ammar). – father(suliaman, rose). – father(abdullah, suliaman). ■ Rule: – grandFather(X,Y):- father(X,Z), father(Z,Y). ■ Query1: grandFather(abdullah,Y). – Result: Y= rose. ■ Query2: grandFather(X,Y). – Result: X=abdullah ,Y= rose. ■ Query3: grandFather(x,y). – Result: false. 15
  • 16. Prolog Exercises ■ Uncle: – uncle(X,Y):- brother(X,Z),father(Z,Y). – uncle(X,Y):- brother(X,Z),mother(Z,Y). ■ Aunt: – aunt(X,Y):- sister(X,Z), father(Z,Y). – aunt(X,Y):- sister(X,Z), mother(Z,Y). 16
  • 17. Prolog Cut ■‫القطع‬ ‫ة‬ّ‫ي‬‫عمل‬! : ■‫التالية‬ ‫القواعد‬ ‫و‬ ‫الحقائق‬ ‫لدي‬ ‫ليكن‬: –‫الحقائق‬: – q(A). q(B). r(A). a(A). a(B). –‫القواعد‬: – p1(X) :- q(X) , ! , r (X) . – p1(X) :- a(X) . – p2(X) :- q(X) , r(X) , ! . – p2(X) :- a(X) . 17
  • 18. Prolog Cut ■‫التساؤل‬ ‫وضعنا‬ ‫لو‬p1(A). –‫ب‬ ‫نقوم‬matching‫التساؤل‬ ‫و‬ ‫القواعد‬ ‫بين‬. –‫هل‬q‫أجل‬ ‫من‬A،‫قة‬ّ‫ق‬‫مح‬ ‫ها‬ّ‫ن‬‫أ‬ ‫نجد‬ ‫الحقائق‬ ‫من‬ ‫قة؟‬ّ‫ق‬‫مح‬ –‫الـ‬ ‫ة‬ّ‫ي‬‫عمل‬ ‫هي‬ ‫تي‬ّ‫ال‬ ‫و‬ ‫القاعدة‬ ‫من‬ ‫الثانية‬ ‫للعبارة‬ ‫ننتقل‬ ‫قة‬ّ‫ق‬‫مح‬ ‫ها‬ّ‫ن‬‫أ‬ ‫بما‬cut !، –‫أخرى‬ ‫قاعدة‬ ‫أي‬ ‫في‬ ‫النظر‬ ‫دون‬ ‫القاعدة‬ ‫هذه‬ ‫إتمام‬ ‫بعد‬ ّ‫ل‬‫الح‬ ‫عن‬ ‫ف‬ّ‫التوق‬ ‫معناها‬ ‫و‬ –‫الـ‬ ‫بعد‬ ‫و‬!ِ‫ـ‬‫ل‬ ‫سينتقل‬r(X)،‫هل‬r‫أجل‬ ‫من‬A‫؟‬ ‫قة‬ّ‫ق‬‫مح‬ –‫بالنتيجة‬ ً‫إذا‬ ،‫قة‬ّ‫ق‬‫مح‬ ‫ها‬ّ‫ن‬‫أ‬ ‫نجد‬ ‫الحقائق‬ ‫من‬:yes –‫كانت‬ ‫لو‬q(X)‫الـ‬ ‫يرى‬ ‫لن‬ ‫و‬ ‫القاعدة‬ ‫يكمل‬ ‫لن‬ ،‫خاطئة‬!‫التالي‬ ‫للقاعدة‬ ‫سينتقل‬ ‫و‬‫ة‬.. 18
  • 19. Prolog Cut ■‫التساؤل‬ ‫وضعنا‬ ‫لو‬p1(B). –ّ‫ن‬‫أل‬ ‫لكن‬ ‫و‬ ‫األسلوب‬ ‫بنفس‬r(B)‫سيعطي‬ ‫قة‬ّ‫ق‬‫مح‬ ‫غير‬no ■‫التساؤل‬ ‫وضعنا‬ ‫لو‬p2(A). –q‫أجل‬ ‫من‬Aِ‫ـ‬‫ل‬ ‫سينتقل‬ ،‫قة‬ّ‫ق‬‫مح‬r(X)‫و‬r‫أجل‬ ‫من‬a‫لـ‬ ‫بعدها‬ ‫وينتقل‬ ،‫قة‬ّ‫ق‬‫مح‬!ً‫إذا‬ ، ‫النتيجة‬ ‫سيعطي‬yes‫ف‬ّ‫يتوق‬ ‫و‬. ■‫التساؤل‬ ‫وضعنا‬ ‫لو‬p2(B). –q‫أجل‬ ‫من‬Bّ‫ن‬‫لك‬ ،‫قة‬ّ‫ق‬‫مح‬r‫أجل‬ ‫من‬ ‫قة‬ّ‫ق‬‫مح‬ ‫غير‬B،‫الـ‬ ‫يرى‬ ‫لن‬ ً‫إذا‬!‫للقاعدة‬ ‫يذهب‬ ، 4‫فالجواب‬ ،‫قة‬ّ‫ق‬‫مح‬ ‫ويجدها‬yes 19
  • 20. Prolog Exercises ■ Add Two Numbers: – add(X,0,X):-!. – add(X,Y,Z):-Y1 is Y-1,add(X,Y1,Z1),Zis Z1+1. ■ GCD: – gcd(X,X,X):-!. – gcd(X,Y,Z):- X>Y,W is X-Y,gcd(W,Y,Z),!. – gcd(X,Y,Z):- X<Y,W is Y-X,gcd(X,W,Z). 20
  • 21. Prolog Exercises ■ What is the type of this code: – f(0,1). – f(N,X):-N>0,N1 is N-1, f(N1,S), X is S*N. – Factorial ■ What is the type of this code: – p(_,0,1):-!. – p(X,1,X):-!. – p(X,N,Result):- N1 = N-1 , p(X,N1,XN1), Result= X * XN1. – Power 21
  • 22. Prolog List ■ [1,2,3] ■ Empty list [ ] ■ List with one Item [X] – Ex: [1], [name] ■ General representation: – [X|Y]: X is the head, Y is the list of the tail ■ Ex: [2,4,6,6] 2 is the head. [4,6,6] is the tail 22
  • 23. Prolog List Example ■ Find element in a list: – find(X,[X|Y]):-!. – find(X,[Z|Y]):-not(X=Z),find(X,Y). ■ Count the element of a list: – count(0,[]):-!. – count(W,[X|Y]):-count(Z,Y),W is X+Z. ■ Delete element from list: – delete(X,[],[]):-!. – delete(X,[X|Y],Z):-delete(X,Y,Z),!. – delete(X,[Y|Z],[Y|W1]):-not(X=Y),delete(X,Z,W1). 23
  • 24. Note ■ Rule: – x(0,[]). – x(N,[N|L]):- x(N-2,L). ■ Need a stop condition!!! 24
  • 25. Question 1 ■ What is a fact? A. A term followed by a period. B. A term. C. A structurefollowed by a period. 25
  • 26. Question 1 ■ What is a fact? A. A term followed by a period. B. A term. C. A structurefollowed by a period. 26
  • 27. Question 2 ■ Can the term in a fact be a variable? A. Yes. B. No. 27
  • 28. Question 2 ■ Can the term in a fact be a variable? A. Yes. B. No. 28
  • 29. Question 3 ■ Which of the following is not a query? (I.e., which of the following does not conform to the syntax of queries?) A. ?- student(Lisa, 5). B. ?- student(Lisa, X), student(Abraham,X). C. ?- student(Abraham, X) 29
  • 30. Question 3 ■ Which of the following is not a query? (I.e., which of the following does not conform to the syntax of queries?) A. ?- student(Lisa, 5). B. ?- student(Lisa, X), student(Abraham,X). C. ?- student(Abraham, X) 30
  • 31. Question 4 ■ Can a query be made up of more than one subgoal? A. Yes. B. No. 31
  • 32. Question 4 ■ Can a query be made up of more than one subgoal? A. Yes. B. No. 32
  • 33. Question 5 ■ What is a free variable? A. A variable which has not been given a value. B. A variable which has been given a value. 33
  • 34. Question 5 ■ What is a free variable? A. A variable which has not been given a value. B. A variable which has been given a value. 34
  • 35. Question 6 ■ What is a bound variable? A. A variable which has not been given a value. B. A variable which has been given a value. 35
  • 36. Question 6 ■ What is a bound variable? A. A variable which has not been given a value. B. A variable which has been given a value. 36
  • 37. Question 7 ■ Rules: – check(x):- console::write(one). – check(x):- ! , console::write(two). ■ What is the output of this query? check(1). A. one B. two C. one two D. else 37
  • 38. Question 7 ■ Rules: – check(x):- console::write(one). – check(x):- ! , console::write(two). ■ What is the output of this query? check(1). A. one B. two C. one two D. else 38
  • 40. Smart Search Algorithms (‫الذكية‬ ‫البحث‬ ‫)خوارزميات‬ ■‫امثلة‬: –‫المتجول‬ ‫البائع‬ ‫مسألة‬: ■‫ال‬ ‫باستخدام‬ ‫المسألة‬ ‫هذه‬ ‫حل‬ ‫يمكن‬Back Tracking‫خيار‬ ‫المسألة‬ ‫خيارات‬ ‫بمعالجة‬ ‫قمنا‬ ‫واذا‬ ‫رتبة‬ ‫من‬ ‫المسألة‬ ‫تعقيد‬ ‫سيكون‬ ‫األخير‬ ‫الخيار‬ ‫هو‬ ‫الحل‬ ‫وكان‬ ‫اآلخر‬ ‫تلو‬N! –‫للجامعة‬ ‫األسبوعي‬ ‫البرنامج‬ ‫إعداد‬ ‫مسألة‬: ■‫بشرية‬ ‫معامالت‬ ‫عدة‬ ‫بسبب‬ ‫معقدة‬ ‫أنها‬ ‫إال‬ ‫بسيطة‬ ‫المسألة‬ ‫هذه‬ ‫تبدو‬ ‫قد‬. –‫ال‬ ‫مسألة‬:Spanning Tree ■‫ممكن‬ ‫كبل‬ ‫بأصغر‬ ‫حواسيب‬ ‫عدة‬ ‫توصيل‬ ‫وهي‬. –‫الويب‬: ■‫بيان‬ ‫يعتبر‬ ‫الويب‬ ‫فضاء‬ ‫كل‬Graph‫ال‬ ‫خوارزميات‬ ‫وكل‬Graph‫فيه‬ ‫محققة‬. –‫مواسير‬ ‫ضمن‬ ‫المياه‬ ‫ضخ‬: ■‫معين‬ ‫مياه‬ ‫ضغط‬ ‫وتتحمل‬ ‫محدد‬ ‫قطر‬ ‫لها‬ ‫يكون‬ ‫المواسير‬ ‫هذه‬ ‫من‬ ‫واحدة‬ ‫كل‬. 40
  • 41. Smart Search Algorithms (‫الذكية‬ ‫البحث‬ ‫)خوارزميات‬ ■‫يلي‬ ‫ما‬ ‫خالل‬ ‫من‬ ‫ذلك‬ ‫يتم‬ ،‫بحث‬ ‫مسألة‬ ‫هي‬ ‫ما‬ ‫مسألة‬ ‫أن‬ ‫نعتبر‬ ‫أن‬ ‫لنا‬ ‫كيف‬ ‫إذا‬: .I‫المسألة‬ ‫من‬ ‫الهدف‬ ‫تحديد‬. .II‫المسألة‬ ‫هذه‬ ‫حاالت‬ ‫تحديد‬. .III‫العمليات‬ ‫تعريف‬(‫الحاالت‬ ‫بين‬ ‫المسموحة‬ ‫االنتقاالت‬.) .IV‫وتنته‬ ‫االبتدائية‬ ‫الحالة‬ ‫من‬ ‫تبدأ‬ ‫التي‬ ‫العمليات‬ ‫من‬ ‫مجموعة‬ ‫عن‬ ‫عبارة‬ ‫هو‬ ‫الحل‬‫ي‬ ‫الهدف‬ ‫مع‬. ■‫الحافة‬(Fringe:) –‫بعد‬ ‫زيارتها‬ ‫تتم‬ ‫لم‬ ‫ولكن‬ ‫اكتشافها‬ ‫تم‬ ‫التي‬ ‫العقد‬ ‫مجموعة‬ ‫هي‬. –‫الب‬ ‫استراتيجيات‬ ‫باختالف‬ ‫تختلف‬ ‫معطيات‬ ‫بنية‬ ‫ضمن‬ ‫العقد‬ ‫هذه‬ ‫تخزين‬ ‫يتم‬‫ضمن‬ ‫حث‬ ‫الشجرة‬. 41
  • 42. Search Strategies (‫الخوارزميات‬ ‫مقارنة‬ ‫معايير‬) ■ A search strategy is defined by picking the order of node expansion. ■ Strategies are evaluated along the following dimensions: – Completeness: ■ does it always find a solution if one exists? – Optimality: ■ does it always find a least-cost solution? – Time complexity: ■ number of nodes generated. – Space complexity: ■ maximum number of nodes in memory. 42
  • 43. Search Strategies (‫الخوارزميات‬ ‫مقارنة‬ ‫معايير‬) ■ Time and space complexity are measured in terms of: – b (‫التفرع‬ ‫:)عامل‬ ■ maximum branching factor of the search tree. – d (‫البحث‬ ‫شجرة‬ ‫ضمن‬ ‫الحل‬ ‫:)عمق‬ ■ depth of the least-cost solution. – m (‫البحث‬ ‫شجرة‬ ‫:)عمق‬ ■ maximum length of any path in the state space (may be infinite). 43
  • 44. Smart Search Algorithms (‫الذكية‬ ‫البحث‬ ‫)خوارزميات‬ ■‫صنفين‬ ‫ضمن‬ ‫البحث‬ ‫خوارزميات‬ ‫تصنف‬: –‫العمياء‬ ‫البحث‬ ‫خوارزميات‬( :Uninformed Search Algorithm) ■‫بدون‬ ‫الكالسيكية‬ ‫البحث‬ ‫خوارزميات‬ ‫باستخدام‬ ‫بالبحث‬ ‫تقوم‬ ‫بالبحث‬ ‫تقوم‬ ‫عندما‬ ‫بمعالجتها‬ ‫نقوم‬ ‫التي‬ ‫المشكلة‬ ‫عن‬ ‫معلومات‬ ‫أي‬ ‫استخدام‬. –‫التجريبية‬ ‫البحث‬ ‫خوارزميات‬( :Informed Search Algorithm) ■‫التجريبيات‬ ‫على‬ ‫تعتمد‬Heuristic‫معلومات‬ ‫على‬ ‫المسائل‬ ‫من‬ ‫مسألة‬ ‫بأي‬ ‫تعتمد‬ ‫والتي‬ ‫األفضل‬ ‫للحل‬ ‫الوصول‬ ‫إلى‬ ‫وتؤدي‬ ‫المسألة‬ ‫طبيعة‬ ‫من‬ ‫مشتقة‬. 44
  • 45. Uninformed Search Strategies (‫العمياء‬ ‫البحث‬ ‫)خوارزميات‬ ■ Uninformed search strategies (Blind Search) use only the information available in the problem definition. ■ Types: 1. Breadth-first search. 2. Uniform-cost search. 3. Depth-first search. 4. Iterative deepening search. … 45
  • 46. Uninformed Search Strategies (‫العمياء‬ ‫البحث‬ ‫)خوارزميات‬ ■Nodes‫و‬State: –‫الحالة‬(state:) ■‫معين‬ ‫وضع‬ ‫في‬ ‫المشكلة‬ ‫تمثل‬ ‫أنها‬ ‫أي‬ ‫الفيزيائي‬ ‫الوضع‬ ‫تمثيل‬ ‫هي‬. ■‫الموجو‬ ‫المدينة‬ ‫بتحديد‬ ‫الحالة‬ ‫عن‬ ‫التعبير‬ ‫بمكن‬ ‫الجوال‬ ‫البائع‬ ‫مسألة‬ ‫في‬ ً‫فمثال‬‫فيها‬ ‫دين‬. –‫العقدة‬(node:) ■‫االنتقال‬ ‫إلى‬ ‫أدى‬ ‫الذي‬ ‫الحدث‬ ،‫األب‬ ‫العقدة‬ ،‫الحالة‬ ‫تتضمن‬ ‫حيث‬ ‫البنية‬ ‫عن‬ ‫عبارة‬ ‫هي‬ ‫إليها‬ ‫الوصول‬ ‫وكلفة‬ ‫الحالة‬ ‫إلى‬. 46
  • 47. Uninformed Search Strategies Breadth First Search ■ً‫أوال‬ ‫بالعرض‬ ‫البحث‬ ‫خوارزمية‬Breadth First Search : –‫الغير‬ ‫العقد‬ ‫بزيارة‬ ‫الخوارزمية‬ ‫هذه‬ ‫تقوم‬‫مزارة‬ً‫عمقا‬ ‫األقل‬. ■‫غير‬ ‫العقد‬ ‫جميع‬ ‫تزور‬ ‫أنها‬ ‫أي‬‫المزارة‬‫تبعد‬ ‫التي‬k‫غير‬ ‫العقد‬ ‫تزور‬ ‫أن‬ ‫قبل‬ ‫الحالية‬ ‫العقد‬ ‫عن‬ ‫المزراة‬‫تبعد‬ ‫والتي‬k+1 –‫تت‬ ‫لم‬ ‫والتي‬ ‫المكتشفة‬ ‫العقد‬ ‫تخزين‬ ‫طريق‬ ‫عن‬ ‫الخوارزمية‬ ‫هذه‬ ‫تحقيق‬ ‫يمكن‬‫م‬ ‫رتل‬ ‫في‬ ‫بعد‬ ‫زيارتها‬. –‫نسخة‬ ‫يوجد‬ ‫ال‬ ‫حيث‬ ‫فقط‬ ‫عودي‬ ‫غير‬ ‫بشكل‬ ‫الخوارزمية‬ ‫كتابة‬ ‫نستطيع‬‫عودية‬‫ل‬‫ها‬ ‫االستدعاءات‬ ‫أن‬ ‫طالما‬‫العودية‬‫ارتال‬ ‫ضمن‬ ‫تخزن‬. 47
  • 49. Uninformed Search Strategies Breadth First Search ■ Complete? – Yes (if branchingfactor b is finite). ■ Optimal? – Yes, if cost = 1 per step ■ Time? – O(bd) ■ Space? – O(bd) – Space is the bigger problem (more than time) 49
  • 50. Uninformed Search Strategies Uniform Cost Search ■‫ال‬ ‫خوارزمية‬:Uniformed Cost Search –‫غير‬ ‫العقد‬ ‫بزيارة‬ ‫تقوم‬ ‫عام‬ ‫بشكل‬‫المزارة‬‫األقل‬ ‫الكلفة‬ ‫ذات‬. –‫والغير‬ ‫المكتشفة‬ ‫العقد‬ ‫تخزين‬ ‫طريق‬ ‫عن‬ ‫المنهجية‬ ‫هذه‬ ‫تحقيق‬ ‫يمكن‬‫مزارة‬‫ض‬‫من‬ Priority queue‫الطريق‬ ‫كلفة‬ ‫على‬ ‫هنا‬ ‫األولوية‬ ‫فكرة‬ ‫وتعتمد‬(‫االكبر‬ ‫الى‬ ‫األصغر‬.) –‫مالحظة‬: ■‫ال‬ ‫مفهوم‬ ‫بتطبيق‬ ‫نقوم‬ ‫ال‬ ‫المنهجية‬ ‫هذه‬ ‫في‬ ‫الطريق‬ ‫كلفة‬ ‫أهمية‬ ‫بسبب‬visited‫كما‬ ‫خوارزمية‬ ‫في‬BFS‫و‬DFS‫المتب‬ ‫المسارات‬ ‫فحص‬ ‫وعند‬ ‫األقصر‬ ‫الطريق‬ ‫تخزين‬ ‫سيتم‬ ‫بل‬‫قية‬ ‫به‬ ‫االحتفاظ‬ ‫يتم‬ ‫المخزن‬ ‫الطريق‬ ‫من‬ ‫أقصر‬ ‫آخر‬ ‫طريق‬ ‫هناك‬ ‫كان‬ ‫اذا‬ ‫الحلول‬ ‫فضاء‬ ‫ضمن‬ ‫القديم‬ ‫الحل‬ ‫وإهمال‬. 50
  • 52. Uninformed Search Strategies Uniform Cost Search ■ Notes: – Expand least-cost unexpanded node. – Equivalent to breadth-first if step costs all equal. ■ Complete? – Yes, if step cost is greater than some positive constant ε ■ Optimal? – Yes , nodes expanded in increasing order of path cost. ■ Time? – O(bc/ε) –c‫و‬ ،‫األمثل‬ ‫الحل‬ ‫كلفة‬ ‫هي‬𝜀‫الخطوة‬ ‫كلفة‬ ‫وسطي‬. – This can be greater than O(bd): the search can explore long paths consisting of small steps before exploring shorter paths consisting of larger steps ■ Space? – O(bc/ε) 52
  • 53. Uninformed Search Strategies Depth First Search ■ً‫أوال‬ ‫بالعمق‬ ‫البحث‬ ‫خوارزمية‬:First Search-Depth –‫غير‬ ‫عقدة‬ ‫أعمق‬ ‫بزيارة‬ ‫الخوارزمية‬ ‫هذه‬ ‫تقوم‬‫مزارة‬‫الشجرة‬ ‫من‬. –‫مكدس‬ ‫استخدام‬ ‫طريق‬ ‫عن‬ ‫المنهجية‬ ‫هذه‬ ‫تحقيق‬ ‫يمكن‬. –‫عودي‬ ‫غير‬ ‫أو‬ ‫عودي‬ ‫بشكل‬ ‫الخوارزمية‬ ‫كتابة‬ ‫نستطيع‬. 53
  • 55. Uninformed Search Strategies Depth First Search ■ Complete? – Fails in infinite-depth spaces. – complete in finite spaces. ■ Optimal? – No, returns the first solution it finds. ■ Time? – O(bm) ■ Space? – O(bm) 55
  • 56. Uninformed Search Strategies Iterative Deepening Search ■ Use DFS as a subroutine: 1. Check the root. 2. Do a DFS searchingfor a path of length 1 3. If there is no path of length 1, do a DFS searchingfor a path of length 2 4. If there is no path of length 2, do a DFS searchingfor a path of length 3… 56
  • 62. Uninformed Search Strategies Iterative Deepening Search ■ Complete? – Yes ■ Optimal? – Yes, if step cost = 1 ■ Time? – (d+1) b0 + d b1 + (d-1) b2 + … + bd = O(bd) ■ Space? – O(bd) 62
  • 63. Informed Search ( ‫التجريبية‬ ‫البحث‬ ‫خوارزميات‬-‫المطلعة‬ ) ■ Idea: – Give the algorithm “hints” about the desirability of different states. – Use an evaluation function to rank nodes and select the most promising one for expansion. ■ Types: 1. Greedy best-first search. 2. A* search. 63
  • 64. Informed Search Heuristic Function ■‫التجريبة‬( :Heuristic) –‫الهدف‬ ‫من‬ ‫الحالة‬ ‫هذه‬ ‫قرب‬ ‫يقدر‬ ‫رقم‬ ‫يعيد‬ ‫حالة‬ ‫على‬ ‫يطبق‬ ‫عندما‬ ‫تابع‬ ‫هي‬. –‫المعلومات‬ ‫من‬ ‫مجموعة‬ ‫على‬ ً‫اعتمادا‬ ‫المسائل‬ ‫بحل‬ ‫الخوارزميات‬ ‫هذه‬ ‫تقوم‬ ‫بالتجريبية‬ ‫ندعوها‬ ‫المعلومات‬ ‫وهذه‬ ‫المسألة‬ ‫طبيعة‬ ‫من‬ ‫المستنبطة‬. –‫تبخس‬ ‫ان‬ ‫يمكن‬‫التجريبة‬‫الهدف‬ ‫عن‬ ‫البعد‬ ‫تقدير‬ ‫في‬ ‫تغالي‬ ‫أو‬. 64
  • 65. Informed Search Heuristic Function ■‫امثلة‬: –‫طريق‬ ‫اقصر‬. ■‫التجريبة‬‫الهدف‬ ‫والمدينة‬ ‫ما‬ ‫مدينة‬ ‫بين‬ ‫النظر‬ ‫خط‬ ‫هي‬. –‫لعبة‬‫التاكوتان‬. ■‫التجريبة‬‫الصحيح‬ ‫مكانها‬ ‫غير‬ ‫في‬ ‫الموجودة‬ ‫الخانات‬ ‫عدد‬ ‫هي‬(‫الفراغ‬ ‫عدا‬ ‫ما‬) ■‫التجريبة‬‫خانة‬ ‫لكل‬ ‫مانهاتن‬ ‫مسافة‬ ‫حساب‬ ‫هي‬. 65
  • 66. Informed Search Greedy best-first search ■ Expand the node that has the lowest value of the heuristic function h(n) 66
  • 71. Informed Search Greedy best-first search Properties ■ Complete? – No, can get stuck in loops ■ Optimal? – No ■ Time? – Worst case: O(bm) – Best case: O(bd) ■ If h(n) is 100% accurate ■ Space? – Worst case: O(bm) start goal 71
  • 72. Hill Climbing Search (‫التلة‬ ‫تسلق‬ ‫)خوارزمية‬ ■‫التابع‬ ‫لدينا‬ ‫ليكن‬H(n)‫من‬ ً‫انطالقا‬ ‫للهدف‬ ‫الوصول‬ ‫ككلفة‬ ‫التقديرية‬ ‫القيمة‬ ‫يرد‬ ‫والذي‬‫العقدة‬ ‫الحالية‬. ■‫للتابع‬ ‫األقل‬ ‫القيمة‬ ‫ذات‬ ‫العقدة‬ ‫اختيار‬ ‫على‬ ‫تعتمد‬ ‫التلة‬ ‫تسلق‬ ‫خوارزمية‬ ‫إن‬H(n) "‫طموحة‬ ‫خوارزمية‬." ■ Is it complete/optimal? – No – can get stuck in local optima ■ Example: – local optimum for the 8-queens problem 72
  • 73. The State Space (Landscape) ■ How to escape local maxima? – Randomrestart hill-climbing 73
  • 74. Hill Climbing Search (‫التلة‬ ‫تسلق‬ ‫)خوارزمية‬ ■‫ال‬ ‫خوارزمية‬ ‫بين‬ ‫الفرق‬Hill Climbing‫وخوارزمية‬Uninformed Cost Search –Hill Climbing‫أما‬ ‫الهدف‬ ‫عن‬ ‫العقدة‬ ‫لبعد‬ ‫التقديرية‬ ‫بالكلفة‬ ‫نهتم‬Uninformed Cost Search‫الحالية‬ ‫العقدة‬ ‫إلى‬ ‫الوصول‬ ‫بالتكلفة‬ ‫نهتم‬. –Hill Climbing‫ال‬ ‫أما‬ ً‫جدا‬ ‫سريعة‬ ‫خوارزمية‬Uninformed Cost Search‫خوارزمية‬ ‫فهي‬ ً‫جدا‬ ‫بطيئة‬. –Hill Climbingً‫حال‬ ‫تعطي‬ ‫ال‬‫أمثليا‬(not optimal)‫مكتملة‬ ‫وغير‬(not complete)‫أما‬ Uninformed Cost Search‫فهيا‬(optimal & complete.) –‫أمثلي‬ ‫خوارزمية‬ ‫إلى‬ ‫للوصول‬ ً‫معا‬ ‫الخوارزميتين‬ ‫هاتين‬ ‫بدمج‬ ‫نقوم‬ ‫ال‬ ‫لماذا‬ ‫ولكن‬‫ه‬ ‫الوقت‬ ‫بنفس‬ ‫وسريعة‬.‫خوارزمية‬ ‫وهي‬A* 74
  • 75. Informed Search A* Search ■ Idea: – avoid expanding paths that are already expensive. ■ The evaluation function f(n) is the estimated total cost of the path through node n to the goal: ■ f(n) = g(n) + h(n) – g(n): cost so far to reach n (path cost) – h(n): estimated cost from n to goal (heuristic) 75
  • 76. Informed Search A* Search ■‫مالحظات‬: –‫ال‬ ‫نضع‬ ‫أن‬ ‫وهو‬ ‫العمياء‬ ‫البحث‬ ‫خوارزميات‬ ‫في‬ ‫اتبعناه‬ ‫الذي‬ ‫األسلوب‬ ‫استخدام‬ ‫يمكننا‬‫عقد‬ ‫معينة‬ ‫بنية‬ ‫ضمن‬ ‫نزرها‬ ‫ولم‬ ‫اكتشفناها‬ ‫التي‬. ■‫ال‬ ‫في‬Depth First‫ال‬ ‫نستخدم‬ ‫كنا‬Stack (LIFO) ■‫ال‬ ‫في‬Breadth First‫ال‬ ‫نستخدم‬ ‫كنا‬Queue (FIFO) ■‫ال‬ ‫في‬Uniform Cost‫ال‬ ‫نستخدم‬ ‫كنا‬Priority Queue‫ال‬ ‫حسب‬Cost ■‫ال‬ ‫خوارزمية‬ ‫في‬ ‫أما‬A*‫على‬ ‫سنعتمد‬Priority Queue‫ال‬ ‫قيمة‬ ‫حسب‬ ‫األفضلية‬ ‫وستكون‬F(n) –‫التجريبية‬ ‫قيمة‬ ‫كانت‬ ‫حال‬ ‫في‬H=0‫إلى‬ ‫الخوارزمية‬ ‫ستتحول‬ ‫عندها‬Uniform Cost ‫الحلول‬ ‫كل‬ ‫بسبر‬ ‫نقوم‬ ‫أن‬ ‫بعد‬ ‫ولكن‬ ‫أمثلي‬ ‫لحل‬ ‫سنصل‬ ‫وبالتالي‬. –‫ال‬ ‫كانت‬ ‫اذا‬H‫ف‬ ‫بسبر‬ ‫نقوم‬ ‫ولن‬ ً‫جدا‬ ‫سريع‬ ‫األداء‬ ‫سيكون‬ ‫الحقيقية‬ ‫الكلفة‬ ‫تساوي‬‫ضاء‬ ً‫كامال‬ ‫الحلول‬. –‫إلى‬ ‫الوصول‬ ‫تسريع‬ ‫هو‬ ‫والهدف‬ ‫باألداء‬ ‫األساسي‬ ‫العامل‬ ‫هو‬ ‫التجريبية‬ ‫اختيار‬ ‫حسن‬ ‫الحلول‬ ‫فضاء‬ ‫كل‬ ‫سبر‬ ‫دون‬ ‫للهدف‬. –‫ال‬ ‫خوارزمية‬ ‫في‬A*‫حل‬ ‫تعطي‬ ‫خوارزمية‬ ‫فإن‬ ‫متفائلة‬ ‫التجريبية‬ ‫كانت‬ ‫اذا‬Optimal‫دائم‬. 76
  • 77. Informed Search A* Search ■‫المولدة‬ ‫العقد‬:‫زيارتها‬ ‫علينا‬ ‫التي‬ ‫العقد‬. ■‫العقد‬‫المزارة‬:‫المطورة‬ ‫العقد‬ ‫أي‬ ‫أبناءها‬ ‫ولدنا‬ ‫التي‬. ■‫مالحظة‬: –‫التابع‬ ‫قيم‬ ‫تساوت‬ ‫اذا‬F‫أي‬ ‫الهدف‬ ‫إلى‬ ‫األقرب‬ ‫العقدة‬ ‫باختيار‬ ‫سنقوم‬ ‫عقدة‬ ‫من‬ ‫ألكثر‬ ‫قيمة‬ ‫أصغر‬ ‫ذات‬‫لل‬H 77
  • 84. Informed Search A* Search Properties ■ Complete? – Yes, unless there are infinitely many nodes with f(n) ≤ C* ■ Optimal? – Yes ■ Time? – Number of nodes for which f(n) ≤ C* (exponential) ■ Space? – Exponential 84
  • 85. Informed Search A* Search Exercise 2 ■‫في‬ ‫المطورة‬ ‫العقد‬ ‫ترتيب‬ ‫وما‬ ‫المطورة‬ ‫والعقد‬ ‫المولدة‬ ‫العقد‬ ‫عدد‬ ‫هو‬ ‫ما‬ ■‫التالي‬ ‫المثال‬: 85
  • 86. Informed Search A* Search Exercise 2 ■‫التالي‬ ‫الشكل‬ ‫على‬ ‫الحل‬ ‫سيكون‬: 86
  • 87. Informed Search A* Search Exercise 2 ■‫الحل‬ ‫عن‬ ‫مالحظات‬: –‫العقدة‬ ‫عند‬1‫أقل‬ ‫كلفة‬ ‫ذات‬ ‫أوراق‬ ‫وجود‬ ‫بسبب‬ ‫الوراء‬ ‫إلى‬ ‫تراجعنا‬. –‫العقدة‬ ‫عند‬3‫للعقدة‬ ‫نصل‬ ‫أن‬ ‫بإمكاننا‬ ‫كان‬1‫استطعنا‬ ‫ألننا‬ ‫بإهمالها‬ ‫قمنا‬ ‫ولكننا‬ ‫أقل‬ ‫وبكلفة‬ ‫آخر‬ ‫طريق‬ ‫من‬ ‫إليها‬ ‫الوصول‬. –‫ضمن‬ ‫العقد‬ ‫بوضع‬ ‫نقوم‬ ‫أننا‬ ‫وبما‬Queue‫نستطيع‬ ‫وال‬ ‫ضمنها‬ ‫من‬ ‫الهدف‬ ‫سيكون‬ ‫مرتبة‬ ‫ال‬ ‫رأس‬ ‫في‬ ‫الهدف‬ ‫يكون‬ ‫أن‬ ‫إلى‬ ‫الشجرة‬ ‫عقد‬ ‫وتطوير‬ ‫توليد‬ ‫عن‬ ‫التوقف‬Queue(‫أي‬ ‫األقل‬ ‫الكلفة‬ ‫ذات‬ ‫لعقدة‬ ‫هي‬ ‫الهدف‬ ‫عقدة‬.) –‫هو‬ ‫المطورة‬ ‫العقد‬ ‫ترتيب‬ ‫وسيكون‬: –‫هو‬ ‫وعددها‬6‫هو‬ ‫فعددها‬ ‫المولدة‬ ‫العقد‬ ‫أما‬ ‫مطورة‬ ‫عقد‬9 87
  • 88. Comparison of search strategies Algorithm Complete? Optimal? Time Complexity Space Complexity BFS Yes If all step costs are equal O(bd) O(bd) UCS Yes Yes O(bc/ε) Number of nodes with g(n) ≤ C* DFS No No O(bm) O(bm) IDS Yes If all step costs are equal O(bd) O(bd) Greedy No No Worst case: O(bm) Best case: O(bd) A* Yes Yes Number of nodes with g(n)+h(n) ≤ C* 88
  • 89. Question 1 ■ Which search strategy is also called as blind search? A. Uninformed search. B. Informed search. C. Simple reflex search. D. All of the mentioned. 89
  • 90. Question 1 ■ Which search strategy is also called as blind search? A. Uninformed search. B. Informed search. C. Simple reflex search. D. All of the mentioned. 90
  • 91. Question 2 ■ How many types are available in uninformed search method? A. 3. B. 4. C. 5. D. 6. 91
  • 92. Question 2 ■ How many types are available in uninformed search method? A. 3. B. 4. C. 5. D. 6. ■ Explanation: – The five types of uninformed search method are: ■ Breadth-first, Uniform-cost, Depth-first, Depth-limited and Bidirectional search. 92
  • 93. Question 3 ■ Which search is implemented with an empty first-in-first-out queue? A. Depth-first search. B. Breadth-first search. C. Bidirectional search. D. None of the mentioned. 93
  • 94. Question 3 ■ Which search is implemented with an empty first-in-first-out queue? A. Depth-first search. B. Breadth-first search. C. Bidirectional search. D. None of the mentioned. 94
  • 95. Question 4 ■ When is breadth-firstsearch is optimal? A. When there is less number of nodes. B. When all step costs are equal. C. When all step costs are unequal. D. None of the mentioned. 95
  • 96. Question 4 ■ When is breadth-firstsearch is optimal? A. When there is less number of nodes. B. When all step costs are equal. C. When all step costs are unequal. D. None of the mentioned. 96
  • 97. Question 5 ■ What is the space complexity of Depth-first search? A. O(b). B. O(bl). C. O(m). D. O(bm). 97
  • 98. Question 5 ■ What is the space complexity of Depth-first search? A. O(b). B. O(bl). C. O(m). D. O(bm). 98
  • 99. Question 6 ■ How many parts does a problem consists of? A. 1. B. 2. C. 3. D. 4. 99
  • 100. Question 6 ■ How many parts does a problem consists of? A. 1. B. 2. C. 3. D. 4. ■ Explanation: – The four parts of the problem are: ■ initial state, set of actions, goal test and path cost. 100
  • 101. Question 7 ■ Which algorithm is used to solve any kind of problem? A. Breath-first algorithm. B. Tree algorithm. C. Bidirectional search algorithm. D. None of the mentioned. 101
  • 102. Question 7 ■ Which algorithm is used to solve any kind of problem? A. Breath-first algorithm. B. Tree algorithm. C. Bidirectional search algorithm. D. None of the mentioned. ■ Explanation: – Tree algorithm is used because specific variants of the algorithm embed different strategies. 102
  • 103. Question 8 ■ Which search algorithm imposes a fixed depth limit on nodes? A. Depth-limited search. B. Depth-first search. C. Iterative deepening search. D. Bidirectional search. 103
  • 104. Question 8 ■ Which search algorithm imposes a fixed depth limit on nodes? A. Depth-limited search. B. Depth-first search. C. Iterative deepening search. D. Bidirectional search. 104
  • 105. Question 9 ■ Which search implements stack operation for searchingthe states? A. Depth-limited search. B. Depth-first search. C. Breadth-first search. D. None of the mentioned. 105
  • 106. Question 9 ■ Which search implements stack operation for searchingthe states? A. Depth-limited search. B. Depth-first search. C. Breadth-first search. D. None of the mentioned. 106
  • 107. Question 10 ■ Which of the following is/are Uninformed Search technique/techniques A. Breath First Search (BFS). B. Depth First Search (DFS). C. Bi-directional Search. D. All of the mentioned. 107
  • 108. Question 10 ■ Which of the following is/are Uninformed Search technique/techniques A. Breath First Search (BFS). B. Depth First Search (DFS). C. Bi-directional Search. D. All of the mentioned. 108
  • 109. Question 11 ■ The time and space complexity of BFS A. O(bd+1) and O(bd+1). B. O(b2) and O(d2). C. O(d2) and O(b2). D. O(d2) and O(d2). 109
  • 110. Question 11 ■ The time and space complexity of BFS A. O(bd+1) and O(bd+1). B. O(b2) and O(d2). C. O(d2) and O(b2). D. O(d2) and O(d2). 110
  • 111. Question 12 ■ What is the heuristic function of greedy best-first search? A. f(n) != h(n) B. f(n) < h(n) C. f(n) = h(n) D. f(n) > h(n) 111
  • 112. Question 12 ■ What is the heuristic function of greedy best-first search? A. f(n) != h(n) B. f(n) < h(n) C. f(n) = h(n) D. f(n) > h(n) 112
  • 113. Question 13 ■ Heuristic function h(n) is ____ A. Lowest path cost B. Cheapest path from root to goal node C. Estimated cost of cheapest path from root to goal node D. Average path cost 113
  • 114. Question 13 ■ Heuristic function h(n) is ____ A. Lowest path cost B. Cheapest path from root to goal node C. Estimated cost of cheapest path from root to goal node D. Average path cost 114
  • 115. Question 14 ■‫من‬ ‫االنتقال‬ ‫المطلوب‬ ‫وحيث‬ ‫التالي‬ ‫البيان‬ ‫ليكن‬A‫الى‬E‫كل‬ ‫باعتماد‬ ‫الناتج‬ ‫سيكون‬ ‫ماذا‬ ‫التالية‬ ‫الخوارزميات‬ ‫من‬:‫أوال‬ ‫العمق‬–‫أوال‬ ‫العرض‬–‫المنتظمة‬ ‫الكلفة‬. 115
  • 116. Question 14 ■‫من‬ ‫االنتقال‬ ‫المطلوب‬ ‫وحيث‬ ‫التالي‬ ‫البيان‬ ‫ليكن‬A‫الى‬E‫كل‬ ‫باعتماد‬ ‫الناتج‬ ‫سيكون‬ ‫ماذا‬ ‫التالية‬ ‫الخوارزميات‬ ‫من‬:‫أوال‬ ‫العمق‬–‫أوال‬ ‫العرض‬–‫المنتظمة‬ ‫الكلفة‬. ■‫الحل‬: 116
  • 117. Question 15 ■‫وخوارزمية‬ ‫التلة‬ ‫تسلق‬ ‫خوارزمية‬ ‫باستخدام‬ ‫الناتج‬ ‫سيكون‬ ‫ماذا‬A*‫تقدير‬ ‫لدينا‬ ‫بأن‬ ‫علما‬ ‫والعقدة‬ ‫عقدة‬ ‫كل‬ ‫بين‬ ‫للمسافة‬E‫يلي‬ ‫كما‬: 117
  • 118. Question 15 ■‫وخوارزمية‬ ‫التلة‬ ‫تسلق‬ ‫خوارزمية‬ ‫باستخدام‬ ‫الناتج‬ ‫سيكون‬ ‫ماذا‬A*‫تقدير‬ ‫لدينا‬ ‫بأن‬ ‫علما‬ ‫والعقدة‬ ‫عقدة‬ ‫كل‬ ‫بين‬ ‫للمسافة‬E‫يلي‬ ‫كما‬: ■‫الحل‬: 118
  • 120. Games (‫)األلعاب‬ ■‫لمحورين‬ ً‫وفقا‬ ‫األلعاب‬ ‫نصنف‬ ‫أن‬ ‫نستطيع‬: –‫األول‬ ‫المحور‬( :Perfect Information - Imperfect Information) ■Perfect Information –‫ك‬ ‫قبل‬ ‫من‬ ً‫مسبقا‬ ‫معلومة‬ ‫الالعبين‬ ‫لكال‬ ‫المتاحة‬ ‫االمكانيات‬ ‫فيها‬ ‫تكون‬ ‫ألعاب‬ ‫وهي‬ٍ‫ل‬ ‫منهما‬. ■Imperfect Information –‫خصمي‬ ‫وإمكانيات‬ ‫قدرات‬ ‫عن‬ ‫معلومة‬ ‫أي‬ ‫أمتلك‬ ‫ال‬ ‫أي‬ ‫سابقتها‬ ‫عكس‬ ‫وهي‬. –‫الثاني‬ ‫المحور‬( :Deterministic - Chance) ■Deterministic –‫بذكاء‬ ‫إحداها‬ ‫اختيار‬ ‫يجب‬ ‫وعديدة‬ ‫محددة‬ ‫خطوات‬ ‫لدينا‬ ‫يوجد‬ ‫حيث‬ ‫الذكاء‬ ‫ألعاب‬ ‫وهي‬ ‫للربح‬ ‫للوصول‬. ■Chance –‫غير‬ ‫ال‬ ‫فقط‬ ‫الحظ‬ ‫على‬ ‫يعتمد‬ ‫النمط‬ ‫هذا‬. 120
  • 121. Games (‫)األلعاب‬ ■‫أصن‬ ‫أربعة‬ ‫أنها‬ ‫على‬ ‫السابقين‬ ‫للمحورين‬ ً‫وفقا‬ ‫األلعاب‬ ‫نصنف‬ ‫أن‬ ‫يمكن‬ ‫وبالتالي‬‫اف‬: 121 Deterministic Stochastic Perfect Information (fully observable) Chess, checkers,go Backgammon, monopoly Imperfect Information (partially observable) Battleships Scrabble, poker, bridge
  • 122. Games V.S Search Problems ■‫واأللعاب‬ ‫العادية‬ ‫البحث‬ ‫مشاكل‬ ‫بين‬ ‫الفرق‬: –‫الخصم‬ ‫خطوات‬ ‫على‬ ‫مبنية‬ ‫بها‬ ‫نقوم‬ ‫التي‬ ‫الخطوة‬ ‫األلعاب‬ ‫في‬. –‫الزمن‬ ‫عائق‬ ‫لدينا‬ ‫األلعاب‬ ‫في‬Time Limit‫اللعبة‬ ‫حل‬ ‫خوارزمية‬ ‫تكون‬ ‫أن‬ ‫يجب‬ ‫حيث‬ ‫بسرعة‬ ‫القرار‬ ‫اتخاذ‬ ‫على‬ ‫قادرة‬. 122
  • 123. Min Max Algorithm 3 2 2 3 123
  • 124. Min Max Algorithm 4,3,2 7,4,1 4,3,2 1,5,2 7,7,1 1,5,2 4,3,2 124
  • 125. Alpha Beta Cutoff ■‫البحث‬ ‫شجرة‬ ‫تقليم‬: –‫مبدأ‬ ‫من‬" :‫مدى‬ ‫معرفة‬ ‫على‬ ‫وقتنا‬ ‫نضيع‬ ‫لن‬ ‫فأننا‬ ‫سيئة‬ ‫فكرة‬ ‫لدينا‬ ‫كانت‬ ‫إذا‬‫س‬‫وءها‬" ■‫أساسية‬ ‫فكرة‬: –‫خوارزمية‬ ‫به‬ ‫تقوم‬ ‫الذي‬ ‫البحث‬ ‫شجرة‬ ‫في‬ ‫التجوال‬ ‫إن‬MinMax‫ترتيب‬ ‫وفق‬ ‫يتم‬ "‫أوال‬ ‫بالعمق‬ ‫البحث‬." 125
  • 132. Alpha Beta Pruning ■ Pruning does not affect final result. ■ Amount of pruning depends on move ordering: – Should start with the “best” moves (highest-value for MAX or lowest-value for MIN) – For chess, can try captures first, then threats, then forward moves, then backward moves. – Can also try to remember “killer moves” from other branches of the tree ■ With perfect ordering, branching factor can be cut in two, or depth of search effectively doubled. 132
  • 133. Question 1 ■ Which search is equal to minimax search but eliminates the branches that can’t influence the final decision? A. Depth-first search B. Breadth-first search C. Alpha-beta pruning D. None of the mentioned 133
  • 134. Question 1 ■ Which search is equal to minimax search but eliminates the branches that can’t influence the final decision? A. Depth-first search B. Breadth-first search C. Alpha-beta pruning D. None of the mentioned ■ Explanation: – The alpha-beta search computes the same optimal moves as minimax, but eliminates the branches that can’t influence the final decision. 134
  • 135. Question 2 ■ Which search is similar to minimax search? A. Hill-climbing search B. Depth-first search C. Breadth-first search D. All of the mentioned 135
  • 136. Question 2 ■ Which search is similar to minimax search? A. Hill-climbing search B. Depth-first search C. Breadth-first search D. All of the mentioned ■ Explanation: – The minimax search is depth-first search, So at one time we just have to consider the nodes along a single path in the tree. 136
  • 137. Question 3 ■‫العبين‬ ‫بثالثة‬ ‫التالية‬ ‫اللعبة‬ ‫لدينا‬ ‫ليكن‬:‫قرص‬ ‫األول‬ ‫البرج‬ ‫يحوي‬ ‫أبراج‬ ‫ثالثة‬ ‫يوجد‬‫قرص‬ ‫والثاني‬ ‫قرصين‬ ‫والثالث‬.‫البرج‬ ‫نفس‬ ‫من‬ ‫إنما‬ ‫أكثر‬ ‫أو‬ ‫قرص‬ ‫يأخذ‬ ‫أن‬ ‫لالعب‬ ‫يمكن‬.‫يرب‬ ‫الذي‬ ‫الالعب‬‫هو‬ ‫ح‬ ‫اللعبة‬ ‫يجع‬ ‫أي‬ ‫األبراج‬ ‫في‬ ‫قرص‬ ‫أي‬ ‫يبقى‬ ‫ال‬ ‫يلعب‬ ‫أن‬ ‫بعد‬ ‫الذي‬ ‫الالعب‬(0,0,0.)‫إذا‬ ‫تكون‬ ‫هي‬ ‫االبتدائية‬ ‫الحالة‬(1,1,2)‫الثالث‬ ‫الحاالت‬ ‫أحد‬ ‫إلى‬ ‫اللعبة‬ ‫ينقل‬ ‫أن‬ ‫األول‬ ‫لالعب‬ ‫يمكن‬ ‫ومنها‬ ‫التالية‬: –(2,1,0)‫قرص‬ ‫يحوي‬ ‫برج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬. –(0,1,1)‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرصين‬ ‫يأخذ‬. –(1,1,1)‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬. ‫النهاية‬ ‫في‬ ‫يربح‬ ‫كي‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يلعب‬ ‫أن‬ ‫يجب‬ ‫ماذا‬: .A‫قرص‬ ‫يحوي‬ ‫برج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬. .B‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬. .C‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرصين‬ ‫يأخذ‬. .D‫سبق‬ ‫مما‬ ‫خيار‬ ‫وال‬. 137
  • 138. Question 3 ■‫العبين‬ ‫بثالثة‬ ‫التالية‬ ‫اللعبة‬ ‫لدينا‬ ‫ليكن‬:‫قرص‬ ‫األول‬ ‫البرج‬ ‫يحوي‬ ‫أبراج‬ ‫ثالثة‬ ‫يوجد‬‫قرص‬ ‫والثاني‬ ‫قرصين‬ ‫والثالث‬.‫البرج‬ ‫نفس‬ ‫من‬ ‫إنما‬ ‫أكثر‬ ‫أو‬ ‫قرص‬ ‫يأخذ‬ ‫أن‬ ‫لالعب‬ ‫يمكن‬.‫يرب‬ ‫الذي‬ ‫الالعب‬‫هو‬ ‫ح‬ ‫اللعبة‬ ‫يجع‬ ‫أي‬ ‫األبراج‬ ‫في‬ ‫قرص‬ ‫أي‬ ‫يبقى‬ ‫ال‬ ‫يلعب‬ ‫أن‬ ‫بعد‬ ‫الذي‬ ‫الالعب‬(0,0,0.)‫إذا‬ ‫تكون‬ ‫هي‬ ‫االبتدائية‬ ‫الحالة‬(1,1,2)‫الثالث‬ ‫الحاالت‬ ‫أحد‬ ‫إلى‬ ‫اللعبة‬ ‫ينقل‬ ‫أن‬ ‫األول‬ ‫لالعب‬ ‫يمكن‬ ‫ومنها‬ ‫التالية‬: –(2,1,0)‫قرص‬ ‫يحوي‬ ‫برج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬. –(0,1,1)‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرصين‬ ‫يأخذ‬. –(1,1,1)‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬. ‫النهاية‬ ‫في‬ ‫يربح‬ ‫كي‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يلعب‬ ‫أن‬ ‫يجب‬ ‫ماذا‬: .A‫قرص‬ ‫يحوي‬ ‫برج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬. .B‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرص‬ ‫يأخذ‬. .C‫قرصين‬ ‫يحوي‬ ‫الذي‬ ‫البرج‬ ‫من‬ ‫قرصين‬ ‫يأخذ‬. .D‫سبق‬ ‫مما‬ ‫خيار‬ ‫وال‬. 138
  • 139. Question 4 ■‫الالعب‬ ‫أن‬ ‫وحيث‬ ‫التالية‬ ‫اللعب‬ ‫شجرة‬ ‫لتكن‬MAX‫يبدأ‬ ‫الذي‬ ‫هو‬.‫ألفا‬ ‫الخوارزمية‬ ‫تقوم‬-‫بيتا‬ ‫التالية‬ ‫األوراق‬ ‫قيم‬ ‫بحساب‬: .AP, Q, R, T, U, V, X, Y, Z, BB, CC, DD .BP, Q, R, T, U, X, Y, Z, BB, CC .CP, Q, R, T, U, V, X, Y, Z, BB 139
  • 140. Question 4 ■‫الالعب‬ ‫أن‬ ‫وحيث‬ ‫التالية‬ ‫اللعب‬ ‫شجرة‬ ‫لتكن‬MAX‫يبدأ‬ ‫الذي‬ ‫هو‬.‫ألفا‬ ‫الخوارزمية‬ ‫تقوم‬-‫بيتا‬ ‫التالية‬ ‫األوراق‬ ‫قيم‬ ‫بحساب‬: .AP, Q, R, T, U, V, X, Y, Z, BB, CC, DD .BP, Q, R, T, U, X, Y, Z, BB, CC .CP, Q, R, T, U, V, X, Y, Z, BB 140
  • 141. Question 5 ■‫الق‬ ‫تحيقي‬ ‫نستطيع‬ ‫كي‬ ‫لألوراق‬ ‫قيم‬ ‫إيجاد‬ ‫والمطلوب‬ ‫التالية‬ ‫اللعب‬ ‫شجرة‬ ‫لتكن‬‫طعين‬ ‫المبينين‬: .A‫األوراق‬ ‫جميع‬ ‫في‬ ‫متساوية‬ ‫قيم‬ ‫نضع‬. .B‫لعقد‬ ‫تنازلي‬ ‫بترتيب‬ ‫قيم‬ ‫نضع‬Max‫لعقد‬ ‫تصاعدي‬ ‫وبترتيب‬Min. .C‫لعقد‬ ‫تنازلي‬ ‫بترتيب‬ ‫قيم‬ ‫نضع‬Min‫لعقد‬ ‫تصاعدي‬ ‫وبترتيب‬Max. .D‫السابقة‬ ‫الخيارات‬ ‫من‬ ‫خيار‬ ‫وال‬. 141
  • 142. Question 5 ■‫الق‬ ‫تحيقي‬ ‫نستطيع‬ ‫كي‬ ‫لألوراق‬ ‫قيم‬ ‫إيجاد‬ ‫والمطلوب‬ ‫التالية‬ ‫اللعب‬ ‫شجرة‬ ‫لتكن‬‫طعين‬ ‫المبينين‬: .A‫األوراق‬ ‫جميع‬ ‫في‬ ‫متساوية‬ ‫قيم‬ ‫نضع‬. .B‫لعقد‬ ‫تنازلي‬ ‫بترتيب‬ ‫قيم‬ ‫نضع‬Max‫لعقد‬ ‫تصاعدي‬ ‫وبترتيب‬Min. .C‫لعقد‬ ‫تنازلي‬ ‫بترتيب‬ ‫قيم‬ ‫نضع‬Min‫لعقد‬ ‫تصاعدي‬ ‫وبترتيب‬Max. .D‫السابقة‬ ‫الخيارات‬ ‫من‬ ‫خيار‬ ‫وال‬. 142
  • 143. Question 6 ■‫الصحيحة‬ ‫العبارة‬ ‫حدد‬: .A‫عقد‬ ‫قي‬ ‫تختلف‬ ‫ال‬Min‫و‬Max‫خوارزميتي‬ ‫في‬Min-Max‫و‬Alpha-Beta .B‫خوارزمية‬ ‫فعالية‬ ‫على‬ ‫األوراق‬ ‫ترتيب‬ ‫يؤثر‬ ‫ال‬Alpha-Beta .C‫الخوارزمية‬ ‫فعالية‬ ‫تتأثر‬ ‫ال‬Alpha-Beta‫الخصم‬ ‫بمستوى‬ .D‫سبق‬ ‫مما‬ ‫خيار‬ ‫وال‬ 143
  • 144. Question 6 ■‫الصحيحة‬ ‫العبارة‬ ‫حدد‬: .A‫عقد‬ ‫قي‬ ‫تختلف‬ ‫ال‬Min‫و‬Max‫خوارزميتي‬ ‫في‬Min-Max‫و‬Alpha-Beta .B‫خوارزمية‬ ‫فعالية‬ ‫على‬ ‫األوراق‬ ‫ترتيب‬ ‫يؤثر‬ ‫ال‬Alpha-Beta .C‫الخوارزمية‬ ‫فعالية‬ ‫تتأثر‬ ‫ال‬Alpha-Beta‫الخصم‬ ‫بمستوى‬ .D‫سبق‬ ‫مما‬ ‫خيار‬ ‫وال‬ 144
  • 145. Question 7 ■‫التالية‬ ‫اللعبة‬ ‫لدينا‬ ‫ليكن‬:‫من‬ ‫كومة‬ ‫يوجد‬n‫قطعة‬.‫على‬ ‫بأخذ‬ ‫دوره‬ ‫يأتي‬ ‫حين‬ ‫الالعب‬ ‫يقوم‬ ‫األكثر‬ ‫وعلى‬ ‫واحدة‬ ‫قطعة‬ ‫األقل‬m‫الكومة‬ ‫من‬ ‫قطعة‬.‫قطعة‬ ‫أخر‬ ‫يأخذ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬ ‫الكومة‬ ‫من‬.‫يلي‬ ‫فيما‬ ‫الصحيحة‬ ‫الجملة‬ ‫حدد‬: .A‫دائما‬ ‫باللعب‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬ .B‫دائما‬ ‫باللعب‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يخسر‬ .C‫كانت‬ ‫إذا‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬n‫مضاعفات‬ ‫من‬m .D‫كانت‬ ‫إذا‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬n‫مضاعفات‬ ‫من‬ ‫ليست‬m+1 145
  • 146. Question 7 ■‫التالية‬ ‫اللعبة‬ ‫لدينا‬ ‫ليكن‬:‫من‬ ‫كومة‬ ‫يوجد‬n‫قطعة‬.‫على‬ ‫بأخذ‬ ‫دوره‬ ‫يأتي‬ ‫حين‬ ‫الالعب‬ ‫يقوم‬ ‫األكثر‬ ‫وعلى‬ ‫واحدة‬ ‫قطعة‬ ‫األقل‬m‫الكومة‬ ‫من‬ ‫قطعة‬.‫قطعة‬ ‫أخر‬ ‫يأخذ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬ ‫الكومة‬ ‫من‬.‫يلي‬ ‫فيما‬ ‫الصحيحة‬ ‫الجملة‬ ‫حدد‬: .A‫دائما‬ ‫باللعب‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬ .B‫دائما‬ ‫باللعب‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يخسر‬ .C‫كانت‬ ‫إذا‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬n‫مضاعفات‬ ‫من‬m .D‫كانت‬ ‫إذا‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬n‫مضاعفات‬ ‫من‬ ‫ليست‬m+1 ■‫توضيح‬: –‫مثال‬ ‫كانت‬ ‫إذا‬n=20‫و‬m=3‫أو‬ ‫اثنتين‬ ‫أو‬ ‫قطعة‬ ‫يأخذ‬ ‫أن‬ ‫يمكن‬ ‫يبدأ‬ ‫الذي‬ ‫الالعب‬ ‫فإن‬ ‫ثالثة‬.‫قطعة‬ ‫الكومة‬ ‫في‬ ‫يكون‬ ‫دوره‬ ‫يأتي‬ ‫حين‬ ‫الذي‬ ‫الالعب‬ ‫يربح‬(‫فيأخذها‬)‫أو‬ ‫قطعتين‬(‫فيأخذهما‬)‫قطع‬ ‫ثالثة‬ ‫أو‬(‫فيأخذهم‬.) 146
  • 148. And Or Graph ■ Problem Reduction: – So far we have consideredsearch strategies for OR graphs through which we want to find a single path to a goal. – Such structurerepresent the fact that we know how to get from a node to a goal state if we can discover how to get from that node to a goal state along any one of the branches leaving it. 148
  • 149. And Or Graph ■ AND-OR (Graph or Tree) – It is useful for representing the solution of problems that can solved by decomposingthem into a set of smaller problems, all of which must then be solved. – This decomposition, or reduction, generates arcs that we call AND arcs. – One AND arc may point to any number of successornodes, all of which must be solved in order for the arc to point to a solution. – Just as in an OR graph, several arcs may emerge from a single node, indicating a variety of ways in which the original problem might be solved. – This is why the structureis called not simply an AND-graph but rather an AND- OR graph (which also happens to be an AND-OR tree). 149
  • 151. And Or Graph ■‫تمثل‬ ‫العقد‬Sub Problems ■And‫ه‬ ‫تجميع‬ ‫ثم‬ ‫ومن‬ ‫جميعها‬ ‫حلها‬ ‫يجب‬ ‫الجزئية‬ ‫السائل‬ ‫من‬ ‫مجموعة‬ ‫لدينا‬ ‫أنه‬ ‫تعني‬‫ذه‬ ‫الحلول‬. ■OR‫إحداها‬ ‫نختار‬ ‫أن‬ ‫يجب‬ ‫التي‬ ‫الخيارات‬ ‫من‬ ‫مجموعة‬ ‫لدينا‬ ‫أنه‬ ‫تعني‬. ■Start Node‫ال‬ ‫هي‬Initial Problem ■Terminal Nodes (Leafs)‫محلولة‬ ‫تكون‬ ‫قد‬ ‫بسيطة‬ ‫مسائل‬ ‫هي‬. ■Solution‫هو‬Sub Graph‫من‬AND/OR Graph‫ب‬ ‫يبدأ‬Start Node‫ال‬ ‫وكل‬Terminal Nodes‫محلولة‬ ‫جزئية‬ ‫مسائل‬ ‫هي‬ ‫فيه‬,‫على‬ ‫يحتوي‬ ‫كان‬ ‫اذا‬And‫كافة‬ ‫تكون‬ ‫أن‬ ‫يجب‬ ‫الجزئية‬ ‫المسائل‬(‫الخيارات‬)‫على‬ ‫يحتوي‬ ‫كان‬ ‫واذا‬ ،ً‫معا‬ ‫حلولها‬ ‫نجمع‬ ‫أن‬ ‫ويجب‬ ‫محلولة‬OR ‫محلول‬ ‫قل‬ٌ‫األ‬ ‫على‬ ‫واحد‬ ‫خيار‬ ‫لدينا‬ ‫يكون‬ ‫أن‬ ‫يجب‬. 151
  • 152. AO* Algorithm ■‫خوارزمية‬ ‫بين‬ ‫الرئيسي‬ ‫الفرق‬A*‫و‬AO* –‫ال‬ ‫أن‬ ‫هو‬A*‫خوارزمية‬ ‫هي‬‫لل‬OR Graph‫فقط‬. –‫ال‬ ‫أما‬AO*‫خوارزمية‬ ‫هي‬‫لل‬AND-OR Graph‫فقط‬. 152 A B C D 38 E F G H I J 17 9 27 (5) (10) (3) (4) (15) (10) A B C D(3) (4) (5) (9)
  • 159. AO* Algorithm Example 1 C DB A (4) F E (2) (3) (0) [15] 4 5 5 2 2 2 4 Solved 3 Solved Solved 159
  • 160. AO* Algorithm Example 2 ■‫التالية‬ ‫القواعد‬ ‫مجموعة‬ ‫لدينا‬ ‫لتكن‬: – 𝐴 → 𝑂𝑃0 𝑄 & 𝑅 – 𝐴 → 𝑂𝑃1 𝐵& 𝐶 – 𝐴 → 𝑂𝑃2 𝐷 – 𝐴 → 𝑂𝑃3 𝐸&𝐹 – 𝐶 → 𝑂𝑃4 𝑃&𝐾 – 𝐷 → 𝑂𝑃5 𝐺&𝐻 – 𝐷 → 𝑂𝑃6 𝐼& 𝐽 – 𝐸 → 𝑂𝑃7 𝐾 – 𝐸 → 𝑂𝑃8 𝐿&𝑀 – 𝐾 → 𝑂𝑃9 𝑁&𝑂&𝐺 – 𝑅 → 𝑂𝑃10 𝑆&𝑇 – 𝑅 → 𝑂𝑃11 𝑈&𝑉 160
  • 161. AO* Algorithm Example 2 ■‫المعامالت‬ ‫كلفة‬ ‫ستكون‬ ‫حيث‬: ■‫الكلف‬ ‫تقديرات‬ ‫وستكون‬: ■‫المحلولة‬ ‫النهائية‬ ‫المسائل‬: –B,F,G,N,O,P,Q,S 161
  • 162. AO* Algorithm Example 2 ■‫ال‬ ‫شجرة‬ ‫تحوي‬AND/OR‫المسألة‬ ‫لحل‬A: ■‫للمسألة‬ ‫حل‬ ‫تعطينا‬ ‫التي‬ ‫الخيارات‬ ‫إحدى‬ ‫من‬ ‫نكمل‬ ‫أن‬ ‫يجب‬A‫ال‬ ‫نختار‬ ‫لذلك‬Min‫بين‬ ‫وهو‬ ‫الخيارات‬ ‫تلك‬ ‫كلف‬20‫من‬ ‫فنكمل‬R 162
  • 164. AO* Algorithm Example 2 ■‫في‬ ‫االكمال‬ ‫عند‬R‫ال‬ ‫الكلفة‬ ‫فنرفع‬ ‫المسألة‬ ‫هذه‬ ‫لحل‬ ‫خيارين‬ ‫يوجد‬ ‫أنه‬ ‫نجد‬Min‫من‬ ‫وهي‬ ‫األب‬ ‫العقدة‬ ‫معلومات‬ ‫على‬ ‫لنعدل‬ ‫الخيارين‬ ‫هذين‬ ‫كلفة‬A‫الذي‬ ‫الخيار‬ ‫كلفة‬ ‫فتصبح‬ ‫هي‬ ً‫مسبقا‬ ‫اخترناه‬60+10=70‫خيارات‬ ‫من‬ ‫أخر‬ ‫خيار‬ ‫اختيار‬ ‫نعيد‬ ‫أن‬ ‫علينا‬ ‫يجب‬ ‫وبالتالي‬ ‫حل‬A‫ال‬ ‫هي‬ ‫كلفته‬ ‫تكون‬ ‫بحيث‬Min‫هي‬ ‫والتي‬47‫المسألة‬ ‫مع‬ ‫فنكمل‬D 164
  • 166. AO* Algorithm Example 2 ■‫العقدة‬ ‫عند‬ ‫الحال‬ ‫كانت‬ ‫كما‬R‫العقدة‬ ‫عند‬ ‫ستكون‬D‫في‬ ‫تغير‬ ‫إلى‬ ‫أدى‬ ‫التعديل‬ ‫أن‬ ‫ونالحظ‬ ‫ال‬ ‫قيمة‬Min‫ستكون‬ ‫والتي‬48‫لذلك‬ ‫خيار‬ ‫أخر‬ ‫اختيار‬ ‫من‬ ‫المتوقعة‬ ‫التكلفة‬ ‫عن‬ ‫تعبر‬ ‫وهي‬ ‫مع‬ ‫سنكمل‬E 166
  • 168. AO* Algorithm Example 2 ■‫ع‬ ‫المتوقعة‬ ‫التكلفة‬ ‫قيمة‬ ‫تغير‬ ‫إلى‬ ‫تؤدي‬ ‫لم‬ ‫األبناء‬ ‫حول‬ ‫المعلومات‬ ‫زيادة‬ ‫أن‬ ‫نالحظ‬‫األب‬ ‫ند‬ ‫للعقدة‬ ‫وننتقل‬ ‫األخير‬ ‫الخيار‬ ‫معالجة‬ ‫في‬ ‫نكمل‬ ‫لذلك‬K 168
  • 170. AO* Algorithm Example 2 ■‫المسألة‬ ‫حل‬ ‫تكلفة‬ ‫أن‬ ‫نالحظ‬K‫هي‬55‫توقعنا‬ ‫كما‬ ‫وليست‬30‫المعلومات‬ ‫نعدل‬ ‫لذلك‬ ‫السابقة‬ ‫بالشجرة‬ ‫موضح‬ ‫هو‬ ‫كما‬ ‫الجذر‬ ‫باتجاه‬.‫نستط‬ ‫التعديل‬ ‫عملية‬ ‫استكمال‬ ‫عند‬‫أن‬ ‫يع‬ ‫ال‬ ‫التكلفة‬ ‫قيمة‬ ‫أن‬ ‫نالحظ‬Min‫للعقدة‬ ‫المتاحة‬ ‫للخيارات‬A‫هي‬55‫من‬ ‫سنكمل‬ ‫لذلك‬ ‫العقدة‬C 170
  • 172. AO* Algorithm Example 2 ■‫العقدة‬ ‫عند‬ ‫الحال‬ ‫كانت‬ ‫كما‬E‫العقدة‬ ‫عند‬ ‫الحال‬ ‫هي‬C‫في‬ ‫التعديل‬ ‫أن‬ ‫الفرق‬ ‫مالحظة‬ ‫مع‬ ‫التقديري‬ ‫الكلفة‬ ‫تغيير‬ ‫إلى‬ ‫يؤدي‬ ‫لم‬ ‫الجذر‬ ‫إلى‬ ً‫وصوال‬ ‫أب‬ ‫عقدة‬ ‫كل‬ ‫عند‬ ‫المعلومات‬‫لهذا‬ ‫ة‬ ‫نستط‬ ‫الخيار‬ ‫هذا‬ ‫من‬ ‫وبالتالي‬ ‫األقل‬ ‫هي‬ ‫بقيت‬ ‫تكلفته‬ ‫أن‬ ‫ونالحظ‬ ‫الجذر‬ ‫عند‬ ‫الخيار‬‫أن‬ ‫يع‬ ‫الحل‬ ‫أن‬ ‫نقول‬‫األمثلي‬‫التالي‬ ‫بالشكل‬ ‫تمثيله‬ ‫يمكن‬: 172
  • 173. AO* Algorithm Example 2 ■‫هي‬ ‫الحل‬ ‫لهذا‬ ‫المقابلة‬ ‫التكلفة‬ ‫وستكون‬55 173
  • 175. Syntax (‫اللغة‬ ‫)مكونات‬ ■‫الذرات‬( :Atoms) –‫السالسل‬ ‫من‬ ‫مجموعة‬‫المحرفية‬‫كبير‬ ‫بحرف‬ ‫تبدأ‬ ‫التي‬. –‫مثل‬:P, Q, R, P1, ON_A_B ■‫الروابط‬( :Connectors) –∨‫تدعى‬ ‫والتي‬or –∧‫تدعى‬ ‫والتي‬and –⏋‫تدعى‬ ‫والتي‬not –⇒‫تدعى‬ ‫والتي‬implies‫اقتضاء‬ ‫او‬ ■‫التركيب‬ ‫جيدة‬ ‫الصيغ‬( :Well Formed Formulas WFF) –W1 ∨ W2 –W1 ∧ W2 –W1 ⇒ W2 –⏋W1 175
  • 177. Equivalence (‫)التكافؤ‬ ■‫من‬ ‫نفسها‬ ‫الحقيقة‬ ‫قيم‬ ‫لهما‬ ‫كانت‬ ‫وفقط‬ ‫اذا‬ ‫متكافئتان‬ ‫انهما‬ ‫صيغتين‬ ‫عن‬ ‫نقول‬‫كل‬ ‫اجل‬ ‫التفاسير‬. ■‫قوانين‬‫دومرغان‬: ■‫اإليجاب‬ ‫عكس‬ ‫قانون‬: 177
  • 179. Validity and Satisfiability ■ A sentenceis valid if it is true in all models – e.g., True, A A, A  A, (A  (A  B))  B ■ Validity is connected to inference via the Deduction Theorem: – KB ╞ α if and only if (KB  α) is valid ■ A sentenceis satisfiable if it is true in some model – e.g., A B, C ■ A sentenceis unsatisfiable if it is true in no models – e.g., AA ■ Satisfiability is connected to inference via the following: – KB ╞ α if and only if (KB α) is unsatisfiable 179
  • 180. Conjunctive Normal Form (CNF) (‫النظامي‬ ‫)الشكل‬ ■‫مجموعات‬ ‫عدة‬ ‫من‬ ‫مؤلفة‬ ‫تكون‬ ‫عندما‬ ‫النظامي‬ ‫بالشكل‬ ‫الصيغة‬ ‫أن‬ ‫نقول‬,‫ذر‬ ‫بين‬ ‫يوجد‬‫ات‬ ‫الواحدة‬ ‫المجموعة‬‫متتاليتين‬ ‫مجموعتين‬ ‫كل‬ ‫وبين‬ ■ً‫مثال‬( :q3q2q1)(p3q3)(p1p1q1q2) 180
  • 181. Conjunctive Normal Form (CNF) (‫النظامي‬ ‫)الشكل‬ ■‫النظامي‬ ‫الشكل‬ ‫إلى‬ ‫التحويل‬ ‫خطوات‬: –‫بينهما‬ ‫اقتضاءين‬ ‫إلى‬ ‫بتحويله‬ ‫التكافؤ‬ ‫من‬ ‫التخلص‬ –‫العالقة‬ ‫طريق‬ ‫عن‬ ‫االقتضاء‬ ‫من‬ ‫التخلص‬:p  q   p  q –‫م‬ ‫والتخلص‬ ‫أقواس‬ ‫على‬ ‫وليس‬ ‫فقط‬ ‫ذرات‬ ‫على‬ ‫بجعله‬ ‫وذلك‬ ‫النفي‬ ‫مجال‬ ‫تقليص‬‫ن‬ ‫المتتاليين‬ ‫النفيين‬ –‫النظامي‬ ‫الشكل‬ ‫على‬ ‫للحصول‬ ‫التجميع‬ ‫قوانين‬ ‫تطبيق‬ –‫بينها‬ ‫ألن‬ ‫واحدة‬ ‫مجموعة‬ ‫في‬ ‫المتشابهة‬ ‫الذرات‬ ‫اختزال‬ ‫يمكننا‬‫حذف‬ ‫يمكننا‬ ‫وكذلك‬ ‫على‬ ‫الحاوي‬ ‫الحد‬ً‫دوما‬ ‫محقق‬ ‫يكون‬ ‫ألنه‬ ‫ونفيها‬ ‫ذرة‬ ‫بين‬ 181
  • 182. Conjunctive Normal Form (CNF) (‫النظامي‬ ‫)الشكل‬ ■‫مثال‬: –‫النظامي‬ ‫الشكل‬ ‫إلى‬ ‫التالية‬ ‫الصيغة‬ ‫لنحول‬:(p  q)  (R  q) ■‫الحل‬: –‫االقتضاءين‬ ‫من‬ ‫نتخلص‬ ً‫أوال‬: ( p  q )  ( R  q) –‫النفي‬ ‫بإدخال‬ ‫نقوم‬ ‫ثم‬:(p   q )   R  q –‫التوزيعية‬ ‫الخاصة‬ ‫نستخدم‬:(p   R  p) (q   R  q) –‫والمتناقضة‬ ‫المتشابهة‬ ‫الذرات‬ ‫نختزل‬:p   R 182
  • 183. Conjunctive Normal Form (CNF) (‫النظامي‬ ‫)الشكل‬ ■‫الضرورية‬ ‫المفاهيم‬ ‫بعض‬: –‫صيغة‬ ‫لكل‬ ‫أن‬ ‫هنا‬ ‫لنالحظ‬WFF‫الصحة‬ ‫جهة‬ ‫من‬ ‫حاالت‬ ‫ثالث‬: –ً‫دوما‬ ‫صحيحة‬ ‫تكون‬ ‫فقد‬satisfiable(valid)‫مثل‬pp –ً‫دوما‬ ‫خاطئة‬ ‫تكون‬ ‫أو‬unsatisfiable‫مثل‬pp –‫شرطية‬ ‫تكون‬ ‫أو‬conditional‫مثل‬p –ً‫تفسيرا‬ ‫ندعو‬interpretation‫كل‬model(‫لدينا‬ ‫التي‬ ‫المتحوالت‬ ‫قيم‬ ‫من‬ ‫تركيبة‬) ‫المعرفة‬ ‫قاعدة‬ ‫في‬ ‫الموجودة‬ ‫الحقائق‬ ‫جميع‬ ‫تكون‬ ‫بحيث‬knowledgebase‫صحيحة‬ ً‫معا‬ 183
  • 184. From WFF to CNF (Conjunctive Normal Form) 184
  • 185. From WFF to CNF (Conjunctive Normal Form) 185
  • 186. Resolution Refutations (‫بالنقض‬ ‫)الحل‬ ■‫لدي‬ ‫التي‬ ‫المعلومات‬ ‫قاعدة‬ ‫إلى‬ ‫نضيفها‬ ‫ثم‬ ‫برهانها‬ ‫المطلوب‬ ‫القضية‬ ‫نفي‬ ‫نأخذ‬ ‫هنا‬‫نا‬ ■‫المعلومات‬ ‫قاعدة‬ ‫في‬ ‫القضايا‬ ‫نحول‬(‫برهانها‬ ‫المطلوب‬ ‫القضية‬ ‫نفي‬ ‫فيها‬ ‫بما‬)‫ا‬ ‫إلى‬‫لشكل‬ ‫النظامي‬ ■‫ن‬ ‫نضيف‬ ‫حيث‬ ‫النظامي‬ ‫الشكل‬ ‫إلى‬ ‫المحولة‬ ‫المعلومات‬ ‫قاعدة‬ ‫على‬ ‫الحل‬ ‫قاعدة‬ ‫نطبق‬‫اتج‬ ‫قابل‬ ‫عبارات‬ ‫لدينا‬ ‫يبقى‬ ‫ال‬ ‫حتى‬ ‫الكرة‬ ‫ونعاود‬ ‫مرة‬ ‫كل‬ ‫في‬ ‫المعطيات‬ ‫قاعدة‬ ‫إلى‬ ‫الحل‬‫ة‬ ‫للحل‬(‫خاطئة‬ ‫المبرهنة‬ ‫أن‬ ‫نقول‬ ‫عندها‬)‫الخالية‬ ‫المجموعة‬ ‫إلى‬ ‫نصل‬ ‫أو‬nil(‫نقول‬ ‫عندها‬ ‫صحيحة‬ ‫المبرهنة‬ ‫أن‬) 186
  • 187. Resolution Refutations Example (‫بالنقض‬ ‫)الحل‬ ■‫البطاري‬ ‫حالة‬ ‫تحسس‬ ‫ويمكنه‬ ‫األشياء‬ ‫بحمل‬ ‫يقوم‬ ‫آلي‬ ‫إنسان‬ ‫ذراع‬ ‫ذلك‬ ‫على‬ ‫كمثال‬ ‫لنأخذ‬‫إذا‬ ‫ة‬ ‫ال‬ ‫أم‬ ‫فارغة‬ ‫كانت‬B‫ال‬ ‫أو‬ ‫تتحرك‬ ‫كانت‬ ‫إذا‬ ‫الذراع‬ ‫تحسس‬ ‫يمكنه‬ ‫أنه‬ ‫كما‬M‫القضية‬ ‫ولدينا‬L‫التي‬ ‫ذلك‬ ‫تحسس‬ ‫يمكننه‬ ‫ال‬ ‫اآللي‬ ‫اإلنسان‬ ‫ولكن‬ ‫ال‬ ‫أم‬ ‫للحمل‬ ‫قابل‬ ‫الجسم‬ ‫أن‬ ‫على‬ ‫تدل‬(‫ألنه‬‫لن‬ ‫بالطبع‬ ‫حملها‬ ‫قبل‬ ‫األجسام‬ ‫بوزن‬ ‫يقوم‬)!! ■‫التالية‬ ‫العبارات‬ ‫لدينا‬ ‫كان‬ ‫فإذا‬: –B‫مليئة‬ ‫البطارية‬ – M‫يتحرك‬ ‫ال‬ ‫الذراع‬ –B  L  M‫الذراع‬ ‫تتحرك‬ ‫أن‬ ‫يجب‬ ‫للحمل‬ ‫قابل‬ ‫والجسم‬ ‫مليئة‬ ‫البطارية‬ ‫كان‬ ‫إذا‬ ■‫برهان‬ ‫والمطلوب‬ L‫حمله‬ ‫يمكن‬ ‫ال‬ ‫الجسم‬ ‫أن‬ ‫أي‬ –‫على‬ ‫لنحصل‬ ‫المبرهنة‬ ‫بنفي‬ ً‫أوال‬ ‫فنقوم‬ ‫بالنقض‬ ‫الحل‬ ‫طريقة‬ ‫باستخدام‬ ‫لنحل‬L –‫على‬ ‫فنحصل‬ ‫النظامي‬ ‫الشكل‬ ‫إلى‬ ‫الثالثة‬ ‫العبارة‬ ‫نحول‬ ‫ثم‬: B   L  M –‫شجرة‬ ‫شكل‬ ‫على‬ ‫نرسمها‬ ‫أن‬ ‫يفضل‬ ‫والتي‬ ‫الحل‬ ‫طريقة‬ ‫نطبق‬ ‫ثم‬: 187
  • 189. Example ■‫االستنتاج‬ ‫ثم‬ ‫االستتباع‬ ‫باستخدام‬ ‫ونحله‬ ‫التالي‬ ‫المثال‬ ‫لنأخذ‬: –‫أن‬ ‫برهن‬(A  (A  B))  B‫هي‬valid(ً‫دوما‬ ‫صحيحة‬) 189
  • 190. Example ■‫االستتباع‬:‫الحقيقة‬ ‫جدول‬ ‫نستخدم‬: ■‫الحاالت‬ ‫جميع‬ ‫أجل‬ ‫من‬ ‫صحيحة‬ ‫برهانها‬ ‫المطلوب‬ ‫القضية‬ ‫أن‬ ‫الحقيقة‬ ‫جدول‬ ‫من‬ ‫نالحظ‬ 190 (A  (A  B))  BA  (A  B)A  BBA 10100 10110 10001 11111
  • 191. Example ■‫االستنتاج‬:‫النظامي‬ ‫الشكل‬ ‫إلى‬ ‫العبارة‬ ‫لنحول‬: – (A  (A  B))  B ➔ –  (A  ( A  B))  B ➔ – A  ( A  B)  B ➔ – A  (A   B)  B ➔ – ((A  A)  (A   B))  B ➔ – (A   B)  B ➔ – A  true ➔ – true 191
  • 193. Question 1 ■‫العمياء‬ ‫البحث‬ ‫خوارزميات‬ ‫من‬ ‫ليست‬ ‫يلي‬ ‫مما‬ ‫واحدة‬(Uninformed:) .ABFS .Bcost search .CDFS .DA* 193
  • 194. Question 1 ■‫العمياء‬ ‫البحث‬ ‫خوارزميات‬ ‫من‬ ‫ليست‬ ‫يلي‬ ‫مما‬ ‫واحدة‬(Uninformed:) .ABFS .Bcost search .CDFS .DA* 194
  • 195. Question 2 ■‫المعرفة‬ ‫قاعدة‬ ‫تحتوي‬: .A‫فقط‬ ‫حقائق‬ .B‫فقط‬ ‫قواعد‬ .C‫وقواعد‬ ‫حقائق‬ .D‫صحيحة‬ ‫إجابة‬ ‫وال‬ 195
  • 196. Question 2 ■‫المعرفة‬ ‫قاعدة‬ ‫تحتوي‬: .A‫فقط‬ ‫حقائق‬ .B‫فقط‬ ‫قواعد‬ .C‫وقواعد‬ ‫حقائق‬ .D‫صحيحة‬ ‫إجابة‬ ‫وال‬ 196
  • 197. Question 3 ■‫ال‬ ‫حالة‬ ‫في‬ ‫االستدالل‬ ‫تطبيق‬ ‫يمكن‬ ‫ال‬Uncertainly: .A‫صح‬ .B‫خطأ‬ .C‫الحاالت‬ ‫بعض‬ ‫في‬ .D‫حالة‬ ‫في‬Fuzzy Logic 197
  • 198. Question 3 ■‫ال‬ ‫حالة‬ ‫في‬ ‫االستدالل‬ ‫تطبيق‬ ‫يمكن‬ ‫ال‬Uncertainly: .A‫صح‬ .B‫خطأ‬ .C‫الحاالت‬ ‫بعض‬ ‫في‬ .D‫حالة‬ ‫في‬Fuzzy Logic 198
  • 199. Question 4 ■‫اآللي‬ ‫بالتعليم‬ ‫يتعلق‬ ‫فيما‬: .A‫المراقب‬ ‫وغير‬ ‫المراقب‬ ‫هما‬ ‫فقط‬ ‫التعليم‬ ‫من‬ ‫نوعين‬ ‫هناك‬. .B‫راجعة‬ ‫تغذية‬ ‫وجود‬ ‫يتضمن‬ ‫المراقب‬ ‫التعليم‬. .C‫األلعاب‬ ‫في‬ ‫يستخدم‬ ‫المراقب‬ ‫غير‬ ‫التعليم‬. .Da&b 199
  • 200. Question 4 ■‫اآللي‬ ‫بالتعليم‬ ‫يتعلق‬ ‫فيما‬: .A‫المراقب‬ ‫وغير‬ ‫المراقب‬ ‫هما‬ ‫فقط‬ ‫التعليم‬ ‫من‬ ‫نوعين‬ ‫هناك‬. .B‫راجعة‬ ‫تغذية‬ ‫وجود‬ ‫يتضمن‬ ‫المراقب‬ ‫التعليم‬. .C‫األلعاب‬ ‫في‬ ‫يستخدم‬ ‫المراقب‬ ‫غير‬ ‫التعليم‬. .Da&b 200
  • 201. Question 5 ■‫ال‬Classification‫هو‬: .A‫القيمة‬ ‫متقطع‬ ‫تعليم‬ ‫تابع‬. .B‫القيمة‬ ‫مستمر‬ ‫تعليم‬ ‫تابع‬. .C‫بالتعليم‬ ‫له‬ ‫عالقة‬ ‫ال‬. .D‫نفسه‬ ‫هو‬Regression 201
  • 202. Question 5 ■‫ال‬Classification‫هو‬: .A‫القيمة‬ ‫متقطع‬ ‫تعليم‬ ‫تابع‬. .B‫القيمة‬ ‫مستمر‬ ‫تعليم‬ ‫تابع‬. .C‫بالتعليم‬ ‫له‬ ‫عالقة‬ ‫ال‬. .D‫نفسه‬ ‫هو‬Regression 202
  • 203. Question 6 ■‫ال‬Regression‫هو‬: .A‫القيمة‬ ‫متقطع‬ ‫تعليم‬ ‫تابع‬. .B‫القيمة‬ ‫مستمر‬ ‫تعليم‬ ‫تابع‬. .C‫بالتعليم‬ ‫له‬ ‫عالقة‬ ‫ال‬. .D‫نفسه‬ ‫هو‬Classification 203
  • 204. Question 6 ■‫ال‬Regression‫هو‬: .A‫القيمة‬ ‫متقطع‬ ‫تعليم‬ ‫تابع‬. .B‫القيمة‬ ‫مستمر‬ ‫تعليم‬ ‫تابع‬. .C‫بالتعليم‬ ‫له‬ ‫عالقة‬ ‫ال‬. .D‫نفسه‬ ‫هو‬Classification 204
  • 205. Question 7 ■‫يعتبر‬ ‫التالي‬ ‫من‬ ‫أي‬Model‫للقضية‬ ‫بالنسبة‬:P∨Q ⇒ ¬P∧Q¬ .AP=false,Q=false .BP=false,Q=true .CP=true,Q=false .DP=true,Q=true 205
  • 206. Question 7 ■‫يعتبر‬ ‫التالي‬ ‫من‬ ‫أي‬Model‫للقضية‬ ‫بالنسبة‬:P∨Q ⇒ ¬P∧Q¬ .AP=false,Q=false .BP=false,Q=true .CP=true,Q=false .DP=true,Q=true 206
  • 207. Question 8 ■‫التالية‬ ‫البحث‬ ‫شجرة‬ ‫لدينا‬ ‫بفرض‬:‫تط‬ ‫عند‬ ‫زيارتها‬ ‫يتم‬ ‫لن‬ ‫التالية‬ ‫العقد‬ ‫من‬ ‫واحدة‬‫قطع‬ ‫بيق‬ ‫ألفا‬-‫بيتا‬: .AD .BF .CC .DD&F 207
  • 208. Question 8 ■‫التالية‬ ‫البحث‬ ‫شجرة‬ ‫لدينا‬ ‫بفرض‬:‫تط‬ ‫عند‬ ‫زيارتها‬ ‫يتم‬ ‫لن‬ ‫التالية‬ ‫العقد‬ ‫من‬ ‫واحدة‬‫قطع‬ ‫بيق‬ ‫ألفا‬-‫بيتا‬: .AD .BF .CC .DD&F 208
  • 209. Question 9 ■‫مسألة‬ ‫تعتبر‬BFS: .Aً‫دوما‬ ‫الحل‬ ‫وأمثليه‬ ‫منتهية‬. .B‫موجبة‬ ‫األدنى‬ ‫للعقد‬ ‫االنتقال‬ ‫تكلفة‬ ‫كانت‬ ‫إذا‬ ‫وأمثليه‬ ً‫دوما‬ ‫منتهية‬. .Cً‫دوما‬ ‫منتهية‬. .D‫صحيحة‬ ‫إجابة‬ ‫وال‬. 209
  • 210. Question 9 ■‫مسألة‬ ‫تعتبر‬BFS: .Aً‫دوما‬ ‫الحل‬ ‫وأمثليه‬ ‫منتهية‬. .B‫موجبة‬ ‫األدنى‬ ‫للعقد‬ ‫االنتقال‬ ‫تكلفة‬ ‫كانت‬ ‫إذا‬ ‫وأمثليه‬ ً‫دوما‬ ‫منتهية‬. .Cً‫دوما‬ ‫منتهية‬. .D‫صحيحة‬ ‫إجابة‬ ‫وال‬. 210
  • 211. Question 10 ■‫مسألة‬ ‫تعتبر‬DFS: .Aً‫دوما‬ ‫الحل‬ ‫وأمثليه‬ ‫منتهية‬. .B‫أمثليه‬ ‫وغير‬ ً‫دوما‬ ‫منتهية‬ ‫غير‬. .Cً‫دوما‬ ‫منتهية‬ ‫غير‬. .D‫صحيحة‬ ‫إجابة‬ ‫وال‬. 211
  • 212. Question 10 ■‫مسألة‬ ‫تعتبر‬DFS: .Aً‫دوما‬ ‫الحل‬ ‫وأمثليه‬ ‫منتهية‬. .B‫أمثليه‬ ‫وغير‬ ً‫دوما‬ ‫منتهية‬ ‫غير‬. .Cً‫دوما‬ ‫منتهية‬ ‫غير‬. .D‫صحيحة‬ ‫إجابة‬ ‫وال‬. 212
  • 213. Question 11 ■‫إل‬ ‫األورانج‬ ‫العقدة‬ ‫من‬ ‫للوصول‬ ‫التالي‬ ‫البيان‬ ‫على‬ ‫مسار‬ ‫أقصر‬ ‫خوارزمية‬ ‫تطبيق‬ ‫عند‬‫ى‬ ‫التكلفة‬ ‫تكون‬ ،‫األزرق‬: .A10.5 .B1.5 .C7 .D‫ذلك‬ ‫غير‬ 213
  • 214. Question 11 ■‫إل‬ ‫األورانج‬ ‫العقدة‬ ‫من‬ ‫للوصول‬ ‫التالي‬ ‫البيان‬ ‫على‬ ‫مسار‬ ‫أقصر‬ ‫خوارزمية‬ ‫تطبيق‬ ‫عند‬‫ى‬ ‫التكلفة‬ ‫تكون‬ ،‫األزرق‬: .A10.5 .B1.5 .C7 .D‫ذلك‬ ‫غير‬ 214
  • 215. Question 13 ■‫بالنظام‬ ‫ملونة‬ ‫صورة‬RGB،‫قياسها‬200*200‫شبكة‬ ‫عبر‬ ‫إرسالها‬ ‫نريد‬ ،PSTN‫عرض‬ ‫حزمتها‬64KBPS‫اإلرسال؟‬ ‫يتم‬ ‫لكي‬ ‫الالزم‬ ‫الزمن‬ ‫هو‬ ‫ما‬ .A15‫ثانية‬ .B‫من‬ ‫أكثر‬15‫ثانية‬ .C‫من‬ ‫أقل‬15‫ثانية‬ .D‫اإلرسال‬ ‫يتم‬ ‫لن‬ 215
  • 216. Question 13 ■‫بالنظام‬ ‫ملونة‬ ‫صورة‬RGB،‫قياسها‬200*200‫شبكة‬ ‫عبر‬ ‫إرسالها‬ ‫نريد‬ ،PSTN‫عرض‬ ‫حزمتها‬64KBPS‫اإلرسال؟‬ ‫يتم‬ ‫لكي‬ ‫الالزم‬ ‫الزمن‬ ‫هو‬ ‫ما‬ .A15‫ثانية‬ .B‫من‬ ‫أكثر‬15‫ثانية‬ .C‫من‬ ‫أقل‬15‫ثانية‬ .D‫اإلرسال‬ ‫يتم‬ ‫لن‬ 216