141

هوش مصنوع ي

Embed Size (px)

DESCRIPTION

هوش مصنوع ي. فصل سوم. حل مسئله با جستجو. هوش مصنوع ي Artificial Intelligence. فهرست. عاملهای حل مسئله مسئله اندازه گيری کارايي حل مسئله جستجوی ناآگاهانه اجتناب از حالتهای تکراری جستجو با اطلاعات ناقص. حل مسئله با جستجو. عاملهای حل مسئله. چهار گام اساسي برای حل مسائل - PowerPoint PPT Presentation

Citation preview

هوش يمصنوع سومفصل

جستجوبامسئلهحل

Artificial Intelligence يهوش مصنوع

فهرستعاملهای حل مسئلهمسئله اندازه گيری کارايي

حل مسئلهجستجوی ناآگاهانه اجتناب از حالتهای

تکراری جستجو با اطالعات

ناقص

حل مسئله با جستجو

عاملهای حل مسئلهچهار گام اساسي برای حل مسائل

:وضعيتهای مطلوب فرموله کردن هدفنهايي کدامند؟

:چه فعاليتها و فرموله کردن مسئلهوضعيتهايي برای رسيدن به هدف موجود است؟

:انتخاب بهترين دنباله از فعاليتهايي که جستجومنجر به حاالتی با مقدار شناخته شده ميشود.

:وقتی دنباله فعاليت مطلوب پيدا شد، اجرافعاليتهای پيشنهادی آن ميتواند اجرا شود.

5

Example: MashhadExample: Mashhad

• On holiday in Mashhad; currently in Tehran.• Formulate goal:

– be in Mashhad

• Formulate problem:– states: various cities– actions: drive between cities

• Find solution:– sequence of cities, e.g., Tehran, Semnan, Sabzevar,

Neyshaboor, Mashhad

6

State Space and Successor FunctionState Space and Successor Function

• Actions • Initial state• Goal test

state space

successor function

7

Initial StateInitial State

• Actions • Initial state• Goal test

state space

successor function

8

Goal TestGoal Test

• Actions • Initial state• Goal test

state space

successor function

حل مسئله با جستجو

مثال: نقشه رومانی

حل مسئله با جستجو

:رفتن از آراد به بخارستصورت مسأله

:رسيدن به بخارستفرموله کردن هدف

:فرموله کردن مسئله :شهرهای مختلف وضعيتها

:حرکت بين شهرها فعاليتها

:دنباله ای از شهرها مثل:آراد، سيبيو، جستجوفاگارس، بخارست

اين جستجو با توجه به کم هزينه ترين مسير انتخاب ميشود

مثال: نقشه رومانی

حل مسئله با جستجو

مسئله :حالتی که عامل از آن شروع ميکند. حالت اوليه

:شهر آراد در مثال رومانیn(Arad)

:توصيفي از فعاليتهای ممکن که برای عامل مهيا تابع جانشيناست.

:در مثال رومانیZerind,Sibui,Timisoara} S(Arad){=

:مجموعه ای از حالتها که از حالت اوليه ميتوان فضای حالتبه آنها رسيد.

:شهرها که با شروع از آراد ميتوان کليهدر مثال رومانیبه آنها رسيد

تابع جانشين + حالت اوليه = فضای حالت

حل مسئله با جستجو :تعيين ميکند که آيا حالت خاصی، حالت هدف آزمون هدف

است يا خير:در مثال رومانی، رسيدن به بخارست هدف صريح:در مثال شطرنج، رسيدن به حالت کيش و مات هدف انتزاعی

:به هم را دنباله ای از حالتها که دنباله ای از فعاليتها مسير. کندمتصل ميدر مثال رومانی: Arad, Sibiu, Fagaras يک مسير است

:برای هر مسير يک هزينه عددی در نظر ميگيرد. هزينه مسيرطول مسير بين شهرها بر حسب :در مثال رومانی

کيلومتر

مسئله مسيری از حالت اوليه به راه حلحالت هدف است

کمترين هزينه راه حل بهينهمسير را دارد

13

Single-state problem formulationSingle-state problem formulation

(BOOK) A problem is defined by four items:1. initial state e.g., "at Tehran"2. actions or successor function S(x) = set of action–state

pairs – e.g., S(Tehran) = {<Tehran Semnan, Semnan>, … }

3. goal test, can be– explicit, e.g., x = "at Mashahd"– implicit, e.g., Checkmate (x) (chess)

4. path cost (additive)– e.g., sum of distances, number of actions executed, etc.– c(x,a,y) is the step cost, assumed to be ≥ 0

• A solution is a sequence of actions leading from the initial state to a goal state

حل مسئله با جستجو

مثال: دنيای جارو برقيدو مکان که هر يک ممکن حالتها:

= 8است کثيف يا تميز باشند.لذا حالت در اين جهان وجود 2* 2^2

دارد

هر حالتی ميتواند به حالت اوليه:عنوان حالت اوليه طراحی شود

حالتهای معتبر از تابع جانشين:سه عمليات: راست، چپ، مکش

تميزی تمام مربعها آزمون هدف:

تعداد مراحل در هزينه مسير:مسير

حل مسئله با جستجو

مثال: دنيای جارو برقي دو مکان که هر يک ممکن حالتها:

= 8است کثيف يا تميز باشند.لذا حالت در اين جهان وجود 2* 2^2

دارد

هر حالتی ميتواند به حالت اوليه:عنوان حالت اوليه طراحی شود

حالتهای معتبر از تابع جانشين:سه عمليات: راست، چپ، مکش

تميزی تمام مربعهاآزمون هدف:

تعداد مراحل در هزينه مسير:مسير

حل مسئله با جستجو

8مثال: معمایمکان هر هشت خانه شماره دار و خانه حالتها:

خانه9خالی در يکي از

هر حالتي را ميتوان به عنوان حالت اوليه:حالت اوليه در نظر گرفت

حالتهای معتبر از چهار عمل، تابع جانشين:انتقال خانه خالی به چپ، راست، باال يا پايين

بررسی ميکند که حالتی که اعداد آزمون هدف:به ترتيب چيده شده اند)طبق شکل روبرو( رخ

داده يا نه

برابر با تعداد مراحل در مسير هزينه مسير:

حل مسئله با جستجو

8مثال: معمای مکان هر هشت خانه شماره دار و خانه حالتها:

خانه9خالی در يکي از

هر حالتي را ميتوان به عنوان حالت اوليه:حالت اوليه در نظر گرفت

حالتهای معتبر از چهار عمل، تابع جانشين:انتقال خانه خالی به چپ، راست، باال يا پايين

بررسی ميکند که حالتی که اعداد آزمون هدف:به ترتيب چيده شده اند)طبق شکل روبرو( رخ

داده يا نه

برابر با تعداد مراحل در مسيرهزينه مسير:

19

Example: 8-queensExample: 8-queens

Place 8 queens in a chessboard so that no two queens are in the same row, column, or diagonal.

A solution Not a solution

حل مسئله با جستجو

وزير8مثال: مسئله فرمول بندی افزايشي

وزير در 8 تا 0هر ترتيبي از حالتها:صفحه، يک حالت است

هيچ وزيری در صفحه حالت اوليه:نيست

وزيری را به خانه خالی تابع جانشين:اضافه ميکند

وزير در صفحه وجود 8 آزمون هدف:دارند و هيچ کدام به يکديگر گارد نميگيرند

در اين فرمول بندی بايد دنباله ممکن 3*10^14

بررسی ميشود

حل مسئله با جستجو

وزير8مثال: مسئله فرمول بندی افزايشي

وزير در 8 تا 0 هر ترتيبي از حالتها:صفحه، يک حالت است

هيچ وزيری در صفحه حالت اوليه:نيست

وزيری را به خانه خالی تابع جانشين:اضافه ميکند

وزير در صفحه وجود 8 آزمون هدف:دارند و هيچ کدام به يکديگر گارد نميگيرند

در اين فرمول بندی بايد دنباله ممکن 3*10^14

بررسی ميشود

حل مسئله با جستجو

وزير8مثال: مسئله فرمول بندی حالت کامل

، بطوريکه در (n≤ 8 ≥0) وزير nچيدمان حالتها: ستون سمت چپ، يک وزير nهر ستون از

قرار گيرد و هيچ دو وزيری بهم گارد نگيرند

وزير در صفحه شروع 8با حالت اوليه:ميشود

وزيری را در سمت چپ ترين تابع جانشين:ستون خالي قرار ميدهد، بطوری که هيچ

وزيری آن را گارد ندهد

وزير در صفحه وجود دارند و 8 آزمون هدف:هيچ کدام به يکديگر گارد نميگيرند

اين فرمول بندی فضای حالت 2057 به 3*10^14را از

کاهش ميدهد

حل مسئله با جستجو

وزير8مثال: مسئله فرمول بندی حالت کامل

، بطوريکه در (n≤ 8 ≥0) وزير nچيدمان حالتها: ستون سمت چپ، يک وزير nهر ستون از

قرار گيرد و هيچ دو وزيری بهم گارد نگيرند

وزير در صفحه شروع 8 با حالت اوليه:ميشود

وزيری را در سمت چپ ترين تابع جانشين:ستون خالي قرار ميدهد، بطوری که هيچ

وزيری آن را گارد ندهد

وزير در صفحه وجود دارند و 8 آزمون هدف:هيچ کدام به يکديگر گارد نميگيرند

اين فرمول بندی فضای حالت 2057 به 3*10^14را از

کاهش ميدهد

24

FringeFringe

• Set of search nodes that have not been expanded yet

• Implemented as a queue FRINGE– INSERT(node,FRINGE)– REMOVE(FRINGE)

• The ordering of the nodes in FRINGE defines the search strategy

حل مسئله با جستجومثال: نقشه رومانی

Tree search example

Tree search example

Tree search example

29

Implementation: general tree searchImplementation: general tree search

30

Search of State SpaceSearch of State Space

31

Search of State SpaceSearch of State Space

32

Search of State SpaceSearch of State Space

33

Search of State SpaceSearch of State Space

34

Search of State SpaceSearch of State Space

35

Search of State SpaceSearch of State Space

search tree

حل مسئله با جستجو

اندازه گيری کارايي حل مسئله :آيا الگوريتم تضمين ميکند که در صورت کامل بودن

وجود راه حل، آن را بيابد؟

:آيا اين راهبرد، راه حل بهينه ای را ارائه بهينگيميکند.

:چقدر طول ميکشد تا راه حل را پيچيدگي زمانیپيدا کند؟

تعداد گره های توليد شده در اثنای جستجو

:برای جستجو چقدر حافظه نياز پيچيدگی فضادارد؟

حداکثر تعداد گره های ذخيره شده در حافظه

حل مسئله با جستجو

اندازه گيری کارايي حل مسئله :آيا الگوريتم تضمين ميکند که در صورت کامل بودن

وجود راه حل، آن را بيابد؟

:آيا اين راهبرد، راه حل بهينه ای را ارائه بهينگيميکند.

:چقدر طول ميکشد تا راه حل را پيچيدگي زمانیپيدا کند؟

تعداد گره های توليد شده در اثنای جستجو

:برای جستجو چقدر حافظه نياز پيچيدگی فضادارد؟

حداکثر تعداد گره های ذخيره شده در حافظه

b=4 m=4

d=3

هدف

انواع جستجو

جستجو

جستجوی نا آگاهانه یا جستجوی کور

جستجوی آگاهانه یا جستجوی هیوریستیک

( هیچ اطالعات اظافی در مورد 1حالتها ندارد

( تنها می تواند حاالت را تولید و تشخیص 2دهد کدام

حالت هدف است یا هدف نیست .

حل مسئله با جستجو

جستجوی ناآگاهانه ناآگاهی اين است که الگوريتم هيچ اطالعاتی غير از تعريف مسئله در

اختيار ندارد

اين الگوريتمها فقط ميتواند جانشينهايي را توليد و هدف را از غير هدفتشخيص دهند

راهبردهايي که تشخيص ميدهد يک حالت غير هدف نسبت به گره غيرهدف ديگر، اميد بخش تر است، جست و جوی آگاهانه يا جست و جوی

اکتشافي ناميده ميشود.راهبردها

جست و جوی عرضیجست و جوی عمقی جست و جوی عميق کننده

تکراری

جست و جوی هزينهيکنواخت

جست و جوی عمقیمحدود

جست و جوی دو طرفه

41

Uninformed search strategiesUninformed search strategies

• Breadth-first search

• Uniform-cost search

• Bidirectional Strategy

• Depth-first search

• Depth-limited search

• Iterative deepening search

42

Blind StrategiesBlind Strategies

• Breadth-first– Bidirectional

• Depth-first– Depth-limited – Iterative deepening

• Uniform-Cost

Step cost = 1

Step cost = c)action( > 0

43

Breadth-First StrategyBreadth-First Strategy

New nodes are inserted at the end of FRINGE

2 3

4 5

1

6 7

FRINGE = )1(

44

Breadth-First StrategyBreadth-First Strategy

New nodes are inserted at the end of FRINGE

FRINGE = )2, 3(2 3

4 5

1

6 7

45

Breadth-First StrategyBreadth-First Strategy

New nodes are inserted at the end of FRINGE

FRINGE = )3, 4, 5(2 3

4 5

1

6 7

46

Breadth-First StrategyBreadth-First Strategy

New nodes are inserted at the end of FRINGE

FRINGE = )4, 5, 6, 7(2 3

4 5

1

6 7

حل مسئله با جستجو

جستجوی عرضیA

B C D

E F G H I

J K L NM O P Q

حل مسئله با جستجو

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

)مشروط( بله بهينگی:در صورتی بهينه است که هزينه همه اعمال یکسان باشد.

پيچيدگي زماني:

پيچيدگی فضا:)O(b 1d

)O(b 1d

کامل بودن:

)مشروط( بله بهينگی:

50

Breadth-first EvaluationBreadth-first Evaluation

• Complete? Yes (if b is finite)

• Time? 1+b+b2+b3+… +bd + b(bd-1) = O(bd+1)

• Space? O(bd+1) (keeps every node in memory)

• Optimal? Yes (if cost = 1 per step)

Breadth-first search

Breadth-first search

Breadth-first search

Breadth-first search

حل مسئله با جستجو

جستجوی هزينه يکنواخت

A

B C D

E F G H I

J K L NM O P Q

11

3

را با کمترين هزينه مسير بسط ميدهدnاين جستجو گره

جستجوي با هزينه يكسان

A

B

QPONMLKJ

IHGFE

DC

2 35

1

5 2 32 1

1 4 2 73 4 5

A

B

QPONMLKJ

IHGFE

DC

2 35

1

5 2 32 1

1 4 2 73 4 5

حل مسئله با جستجو

بله کامل بودن: εهزينه هر مرحله بزرگتر يا مساوی يک مقدار ثابت و مثبت

باشد.)هزينه مسير با حرکت در مسير افزايش مي يابد(

بله بهينگی: باشدεهزينه هر مرحله بزرگتر يا مساوی

پيچيدگي زماني:

پيچيدگی فضا:

جستجوی هزينه يکنواخت

)O(b ]/[C*

)O(b ]/[C*

کامل بودن:

بهينگی:

62

Uniform-cost searchUniform-cost search

• Expand least-cost unexpanded node• Implementation:

– fringe = queue ordered by path cost

• Equivalent to breadth-first if step costs all equal• Complete? Yes, if step cost ≥ ε• Time? # of nodes with g ≤ cost of optimal solution,

O(bceiling(C*/ ε)) where C* is the cost of the optimal solution• Space? # of nodes with g ≤ cost of optimal solution,

O(bceiling(C*/ ε))• Optimal? Yes – nodes expanded in increasing order of

g(n)

63

Depth-First StrategyDepth-First Strategy

New nodes are inserted at the front of FRINGE

1

2 3

4 5

FRINGE = )1(

64

Depth-First StrategyDepth-First Strategy

New nodes are inserted at the front of FRINGE

1

2 3

4 5

FRINGE = )2, 3(

65

Depth-First StrategyDepth-First Strategy

New nodes are inserted at the front of FRINGE

1

2 3

4 5

FRINGE = )4, 5, 3(

66

Depth-First StrategyDepth-First Strategy

New nodes are inserted at the front of FRINGE

1

2 3

4 5

67

Depth-First StrategyDepth-First Strategy

New nodes are inserted at the front of FRINGE

1

2 3

4 5

68

Depth-First StrategyDepth-First Strategy

New nodes are inserted at the front of FRINGE

1

2 3

4 5

69

Depth-First StrategyDepth-First Strategy

New nodes are inserted at the front of FRINGE

1

2 3

4 5

70

Depth-First StrategyDepth-First Strategy

New nodes are inserted at the front of FRINGE

1

2 3

4 5

71

Depth-First StrategyDepth-First Strategy

New nodes are inserted at the front of FRINGE

1

2 3

4 5

72

Depth-First StrategyDepth-First Strategy

New nodes are inserted at the front of FRINGE

1

2 3

4 5

73

Depth-First StrategyDepth-First Strategy

New nodes are inserted at the front of FRINGE

1

2 3

4 5

Depth-first search

• Expand deepest unexpanded node

• Implementation:– fringe = LIFO queue, i.e., put successors at

front

Depth-first search

• Expand deepest unexpanded node

• Implementation:– fringe = LIFO queue, i.e., put successors at

front

Depth-first search

• Expand deepest unexpanded node

• Implementation:– fringe = LIFO queue, i.e., put successors at

front

Depth-first search

• Expand deepest unexpanded node• Implementation:

– fringe = LIFO queue, i.e., put successors at front

Depth-first search

• Expand deepest unexpanded node• Implementation:

– fringe = LIFO queue, i.e., put successors at front

Depth-first search

• Expand deepest unexpanded node• Implementation:

– fringe = LIFO queue, i.e., put successors at front

Depth-first search

• Expand deepest unexpanded node• Implementation:

– fringe = LIFO queue, i.e., put successors at front

Depth-first search

•Expand deepest unexpanded node•Implementation:

–fringe = LIFO queue, i.e., put successors at front

Depth-first search

• Expand deepest unexpanded node• Implementation:

– fringe = LIFO queue, i.e., put successors at front

Depth-first search

• Expand deepest unexpanded node• Implementation:

– fringe = LIFO queue, i.e., put successors at front

Depth-first search

• Expand deepest unexpanded node• Implementation:

– fringe = LIFO queue, i.e., put successors at front

Depth-first search

• Expand deepest unexpanded node• Implementation:

– fringe = LIFO queue, i.e., put successors at front

جستجوي عمقي

A

B

QPONMLKJ

IHGFE

DC

A

B

QPONMLKJ

IHGFE

DC

حل مسئله با جستجو

جستجوی عمقی

2

3

45

6

7

A

B C D

E F G H I

J K L NM O P Q

حل مسئله با جستجومثال: نقشه رومانی

بودن خير : كاملباشد، ( حل راه هرگونه فاقد و داشت نامحدود عمق چپ زيردرخت اگر

خاتمه هرگز جستجو . است کامل باشد محدود درحت عمق که صورتی در ولی يابد )نمي

: خيربهينگي

تنها نیاز دارد که یک وريتم گاين ال نياز به حافظه كمي داردمسیر از ریشه تا گره برگی، همراه با گره های همزاد گسترش نیافته تمامی گره های آن مسیر را نگهداری کند و اگر گره ای

گسترش پیدا کرد، به محض اینکه تمامی بچه هایش بررسی شدند، از حافظه حذف می شود

امتیاز اصلی این الگوریتم :

حل مسئله با جستجو

خير کامل بودن:اگر زير درخت چپ عمق نامحدود داشت و فاقد هر گونه

راه حل باشد، جستجو هرگز خاتمه نمي يابد.

خير بهينگی:پيچيدگي زماني:

پيچيدگی فضا:

جستجوی عمقی

)O(bm

O(bm)

کامل :بودن

:بهينگي

94

EvaluationEvaluation

• b: branching factor• d: depth of shallowest goal node • m: maximal depth of a leaf node• Complete only for finite search tree• Not optimal• Number of nodes generated:

1 + b + b2 + … + bm = O(bm) • Time complexity is O(bm) • Space complexity is O(bm) or O(m)

95

Properties of depth-first searchProperties of depth-first search

• Complete? No: fails in infinite-depth spaces, spaces with loops– Modify to avoid repeated states along path

complete in finite spaces

• Time? O(bm): terrible if m is much larger than d– but if trees are thick, may be much faster than

breadth-first

• Space? O(bm), i.e., linear space! • Optimal? No• Breadth-first: O(bd) time and space

الگوریتم جستجوی عمقی را روی گراف زیر سوال : پیاده کنید ؟

A

B

E

F

C D

G H I

الگوریتم جستجوی عمقی را روی گراف زیر سوال : پیاده کنید ؟

A

B C

D E F

G H

I

الگوریتم جستجوی عمقی گره ای زودتر گسترش می یابد که درتوجه : عمق بیشتری دارد

الگوریتم جستجوی سطحی را روی گراف سوال : زیر پیاده کنید ؟

A

CB F

D E H

I

به نظر شما در گراف زیر الگوریتم سوال : عمقی زودتر به جواب می رسد یا الگوریتم

سطحی ؟S

C X D

E F A K

I J

Gهدف

H

حل مسئله با جستجو

جستجوی عمقی محدود

A

B C D

E F G H I

J K L NM O P Q

مسئله درختهای نامحدود ميتواند به وسيله جست و جوی بهبود يابد Lعمقي با عمق محدود

.جستجوي عمقي محدود

A

B

QPONMLKJ

IHGFE

DC

A

B

QPONMLKJ

IHGFE

DC

حل مسئله با جستجو

حل مسئله با جستجو

جستجوی عميق کننده Aتکراري

B C D

E F G H I

J K L NM O P Q

حل مسئله با جستجو

جستجوی عميق کننده Aتکراري

B C D

E F G H I

J K L NM O P Q

حل مسئله با جستجو

جستجوی عميق کننده Aتکراري

B C D

E F G H I

J K L NM O P Q SR

حل مسئله با جستجو

جستجوی عميق کننده تکراري بله کامل بودن:

در صورتی که فاکتور انشعاب محدود باشد

بله بهينگی:وقتی که هزينه اعمال یکسان باشد

پيچيدگي زماني:

پيچيدگی فضا:

)O(bd

O(bd)

کامل :بودن

:بهينگي

109

Iterative deepening search Iterative deepening search l l =0=0

110

Iterative deepening search Iterative deepening search l l =1=1

111

Iterative deepening search Iterative deepening search l l =2=2

112

Iterative deepening search Iterative deepening search l l =3=3

جستجوي عميق كننده تكراري

نظريه انتخاب بهترين محدوده عمقي توسط امتحان تمام محدوده مسيرهاي ممكن

تركيب مزاياي جستجوي سطحي و عمقي

A

B

QPONMLKJ

IHGFE

DC

جستجوي عميق كننده تكراري

0سطح

A

A

B

QPONMLKJ

IHGFE

DC

جستجوي عميق كننده تكراري

1سطح

A

B DC

A

B

QPONMLKJ

IHGFE

DC

جستجوي عميق كننده تكراري

2سطح

A

B

IHGFE

DC

A

B

QPONMLKJ

IHGFE

DC

جستجوي عميق كننده تكراري

3سطح

A

B

QPONMLKJ

IHGFE

DC

A

B

QPONMLKJ

IHGFE

DC

119

Properties of iterative deepening searchProperties of iterative deepening search

• Complete? Yes

• Time? (d+1)b0 + d b1 + (d-1)b2 + … + bd = O(bd)

• Space? O(bd)

• Optimal? Yes, if step cost = 1

120

Iterative deepening searchIterative deepening search

حل مسئله با جستجو

جستجوی دو طرفهانجام دو جست و جوی همزمان، يکي از حالت اوليه به هدف و

ديگری از هدف به حالت اوليه تا زمانی که دو جست و جو به هم برسند

حل مسئله با جستجو

جستجوی دو طرفهبله کامل بودن:

اگر هر دو جستجو، عرضی باشند و هزينه تمام مراحل يکسان باشد

بله بهينگی:اگر هر دو جستجو، عرضی باشند و هزينه تمام مراحل يکسان

باشد

پيچيدگي زماني:

پيچيدگی فضا:

)O(bd/2

)O(bd/2

کامل :بودن

:بهينگي

123

Bidirectional StrategyBidirectional Strategy2 fringe queues: FRINGE1 and FRINGE2

Time and space complexity = O)bd/2( << O)bd(

- Branching factor may be different in each direction- Must check whether states are identical

Summary of algorithms

Criterion

Breadth-First

Uniform-

Cost

Depth-

First

Depth-

Limited

IterativeDeepenin

g

Complete?

Yes Yes No

Yes,

If l d Yes

Time bd+1 b⌊C*/ε⌋+1 bm

bl bd

Space bd+1 b C*/ ⌊ ε⌋

+1

bm bl bd

Optimal? Yes Yes No No Yes

127

Comparison of StrategiesComparison of Strategies

• Breadth-first is complete and optimal, but has high space complexity

• Depth-first is space efficient, but neither complete nor optimal

• Iterative deepening is asymptotically optimal

128

Repeated StatesRepeated States

8-queens

No

assembly planning

Few

1 2 34 5

67 8

8-puzzle and robot navigation

Many

search tree is finitesearch tree is infinite

حل مسئله با جستجو

اجتناب از حالتهای تکراریوجود حالتهای تکراری در يک مسئله قابل حل، ميتواند آن را به

مسئله غير قابل حل تبديل کند

130

حل مسئله با جستجو

:اجتناب از حاالت تکراري

براي مسائل زيادي، حاالت تکراري غيرقابل اجتناب

هستند. اين شامل تمام مسائلي مي شود که عملگرها

قابل وارونه شدن باشند، مانند مسائل مسيريابي و

کشيش ها و آدمخوارها.

131

حل مسئله با جستجو

سه راه بuراي حuل مشuکل حuاالت تکuراري بuراي مقابلuه بuا افuزايش

مرتبه و سرريزي فشار کار کامپيوتر وجود دارد:

به حالتي که هم اکنون از آن آمده ايد، برنگرديد. 1.

از ايجاد مسيرهاي دوار بپرهيزيد. 2.

حالتي را کuuه قبالw توليuuد شuuده اسuuت، مجuuدداw توليuuد نکنيuuد. اين 3.

مسuئله بuاعث مي شuود کuه هuر حuالت در حافظuه نگهuداري شuود،

توجuه O(s) داشuته باشuد. بهuتر اسuت کuه بuه O(bd)پيچيuدگي فضuايي

فضاي حالت ورودي است. تعداد کل حاالت درsکنيد که

132

Graph searchGraph search

133

Implementation: general tree searchImplementation: general tree search

حل مسئله با جستجو

جستجو با اطالعات ناقص:اگ£ر عام£ل فاق£د حس£گر باش£د، ميتوان£د مس£ئله ه£ای فاق£د حس£گر

در يکي از چن£د ح£الت اولي£ه باش£د و ه£ر فع£اليت ميتوان£د آن را ب£ه يکي از چن£د حالت جانشين ببرد

:اگ£ر محي£ط ب£ه ط£ور ج£زئی قاب£ل مش£اهده مس£ئله ه£ای اقتض£ايي عم£ل، ه£ر از پس عام£ل، ادراک£ات نباش£د، قطعي فعاليته£ا اگ£ر ي£ا باش£د اطالع£ات جدي£دي را تهي£ه ميکنن£د. ه£ر ادراک ممکن، اقتض£ايی را تعري£ف ميکن£د

که بايد برای آن برنامه ريزی شود

:عام£ل مس£ائل خص£مانه فعاليته£ای اث£ر در اگرع£دم قطعيت ديگری بوجود آيد، مسئله را خصمانه گويند

:وق£تی حالته£ا و فعاليته£ای محي£ط ناش£ناخته مس£ئله ه£ای اکتش£افی باش£ند، عام£ل باي£د س£عي کن£د آنه£ا را کش£ف کن£د. مس£ئله ه£ای اکتش£افی را

ميتوان شکل نهايی مسئله های اقتضايي دانست

حل مسئله با جستجو

مثال: دنيای جاروبرقی فاقد حسگر عامل جارو تمام اثرات فعاليتهايش

را ميداند اما فاقد حسگر است.

حالت اوليه آن يکي از اعضایميباشد{ 1،2،3،4،5،6،7،8}مجموعه

فعاليت((Right {2،4،6،8}

( فعاليتRight,Suck) {4،8}

( فعاليتRight,Suck,Left,Suck) تضمين ميکند که صرف نظر از حالت

برسد7اوليه، به حالت هدف، يعنی

حل مسئله با جستجو

دنيای جاروبرقی عامل بايد راجع به فاقد حسگر

مجموعه هاي حالتی که ميتواند به آنها برسد

استدالل کند. اين مجموعه از حالتها را

حالت باور گوييم.

اگر فضای حالت حالت sفيزيکي دارای

باشد فضای حالت باور 2^s حالت باور خواهد

داشت.

137

Example: vacuum worldExample: vacuum world

•Single-state, start in #5. Solution?

138

Example: vacuum worldExample: vacuum world

• Single-state, start in #5. Solution? [Right, Suck]

• Sensorless, start in {1,2,3,4,5,6,7,8} e.g., Right goes to {2,4,6,8} Solution?

139

Example: vacuum worldExample: vacuum world

• Single-state, start in #5. Solution? [Right, Suck]

• Sensorless, start in {1,2,3,4,5,6,7,8} e.g., Right goes to {2,4,6,8} Solution?[Right,Suck,Left,Suck]

140

Example: vacuum worldExample: vacuum world• Single-state, start in #5.

Solution? [Right, Suck]

• Sensorless, start in {1,2,3,4,5,6,7,8} e.g., Right goes to {2,4,6,8} Solution?[Right,Suck,Left,Suck]

• Contingency – Nondeterministic: Suck may

dirty a clean carpet

– Partially observable: location, dirt at current location.

– Percept: [L, Clean], i.e., start in #5 or #7Solution? [Right, if dirt then Suck]

والسالم