آموزش هوش مصنوعی - بخش ششم
TRANSCRIPT
مصنوعیآموزش هوش
faradars.org/fvsft102
:مدرس
محمد صبریدانشجوی دکتری مهندسی کامپیوتر گرایش هوش مصنوعی
تهرانهیات علمی دانشگاه آزاد اسالمی واحد شهر قدس عضو
هوش مصنوعی، رهیافتی نوین
«هابازی»: فصل ششم
1
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
فهرست مطالب
تعریف و انواع بازی•MiniMaxالگوریتم •
و بتاهرس آلفا•بازی در محیط بخشی قابل مشاهده•
2
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
فهرست مطالب
تعریف و انواع بازی•MiniMaxالگوریتم •
و بتاهرس آلفا•بازی در محیط بخشی قابل مشاهده•
3
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
بازی چیست؟
.استعاملهچندمحیطیکبازی•عاملهچندهمکاری/رقابتیهایمحیط•.گویندخصمانهجستجویرارقابتیعاملهچندمحیط•شوند؟میمطالعههابازیچرا•
.استکنندهسرگرمتاریخینظراز–.استپژوهشبرایجذابحوزهپیچیدگیدلیلبه–.استمحدوداعمالتعدادواستبیانقابلسادگیبه–
4
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
رابطه بازی و جستجو
Search – no adversary Solution is (heuristic) method for finding goal
Heuristics and CSP techniques can find optimal solution
Evaluation function: estimate of cost from start to goal through given node
Examples: path planning, scheduling activities
Games – adversary Solution is strategy (strategy specifies move for every possible opponent reply).
Time limits force an approximate solution
Evaluation function: evaluate “goodness” of game position
Examples: chess, checkers, Othello, backgammon
5
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
انواع بازی
6
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
مشخصات بازی
MINوMAX:بازیکندو•
•MAXگیردمیجایزهبرنده.یابدمیادامهپایانتابازیوکندمیشروعرابازیاستفادهجستجودرختازبعدیحرکتتعیینبرایMAX.شودمیجریمهبازندهو
.کندمی Games as search:
Initial state: e.g. board configuration of chess Successor function: list of (move, state) pairs specifying legal moves.
Terminal test: Is the game finished?
Utility function: Gives numerical value of terminal states. E.g. win (+1), loose (-1) and draw (0) in tic-tac-toe (next)
7
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
(X_Oیا Tic-Tac-Toe)بازی دوز
8
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
فهرست مطالب
تعریف و انواع بازی•MiniMaxالگوریتم •
و بتاهرس آلفا•بازی در محیط بخشی قابل مشاهده•
9
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
فهرست مطالب
تعریف و انواع بازی•MiniMaxالگوریتم •
و بتاهرس آلفا•بازی در محیط بخشی قابل مشاهده•
10
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
MINIMAX
.استMAXبرایاستراژییککردنپیدافهد•.کنندمیبازیبهینهبازیکندوهرکهاستاینفرض•
MINIMAX-VALUE(n)=
UTILITY(n) If n is a terminal
maxs successors(n) MINIMAX-VALUE(s) If n is a max node
mins successors(n) MINIMAX-VALUE(s) If n is a min node
11
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
بازی دو نفره فرضی
12
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
بازی دو نفره فرضی
13
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
بازی دو نفره فرضی
January 20, 2016 TLo (IRIDIA) 14
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
بازی دو نفره فرضی
January 20, 2016 TLo (IRIDIA) 15
The minimax decision
Minimax maximizes the worst-case outcome for max.
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
بازی دو نفره فرضی
خروجیترتیببدینوکنندمیبازیبهینهبازیکندوهرتعریفطبق•.شودمیحداکثرحالتبدتریندرMAXبرای
نکند؟بازیبهینهMINاگر•
.گرفتخواهدهمبهترنتیجهحتیMAXآنگاه•
16
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
MINIMAX
17
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
MINIMAX
18
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
بازی چند نفره
19
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
فهرست مطالب
تعریف و انواع بازی•MiniMaxالگوریتم •
هرس آلفا و بتا•بازی در محیط بخشی قابل مشاهده•
20
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
فهرست مطالب
تعریف و انواع بازی•MiniMaxالگوریتم •
هرس آلفا و بتا•بازی در محیط بخشی قابل مشاهده•
21
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
MINIMAX
.استنماییهاحرکتتعدادبهنسبتبازیهایحالتتعداد:مشکل•.نشوندبررسیهاگرههمه:حلراه•
بتا–هرس آلفاMINکمترین مقدار در گره : بتاو MAXبیشترین مقدار در گره : آلفا•
اگر در یک گره : قانون اولMINبتا از آلفای پدرش کمتر باشد. اگر در یک گره : دومقانونMAXآلفا از بتای پدرش بیشتر باشد.
22
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
Alpha-Beta Example
January 20, 2016 TLo (IRIDIA) 23
[-∞, +∞]
[-∞,+∞]
Range of possible valuesDo DF-search until first leafفرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
Alpha-Beta Example (continued)
January 20, 2016 TLo (IRIDIA) 24
[-∞,3]
فرادرس[∞+,∞-]
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
Alpha-Beta Example (continued)
January 20, 2016 TLo (IRIDIA) 25
[-∞,3]
فرادرس[∞+,∞-]
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
Alpha-Beta Example (continued)
January 20, 2016 TLo (IRIDIA) 26
[3,+∞]
[3,3]
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
Alpha-Beta Example (continued)
January 20, 2016 TLo (IRIDIA) 27
[-∞,2]
[3,+∞]
[3,3]
This node is worse
for MAX
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
Alpha-Beta Example (continued)
January 20, 2016 TLo (IRIDIA) 28
[-∞,2]
[3,14]
[3,3] [-∞,14]
فرادرس,
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
Alpha-Beta Example (continued)
January 20, 2016 TLo (IRIDIA) 29
[−∞,2]
[3,5]
[3,3] [-∞,5]
فرادرس,
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
Alpha-Beta Example (continued)
January 20, 2016 TLo (IRIDIA) 30
[2,2][−∞,2]
[3,3]
[3,3]
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
Alpha-Beta Example (continued)
January 20, 2016 TLo (IRIDIA) 31
[2,2][-∞,2]
[3,3]
[3,3]
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
Alpha-Beta Algorithm
January 20, 2016 TLo (IRIDIA) 32
function ALPHA-BETA-SEARCH(state) returns an action
inputs: state, current state in game
vMAX-VALUE(state, - ∞ , +∞)
return the action in SUCCESSORS(state) with value v
function MAX-VALUE(state, , ) returns a utility value
if TERMINAL-TEST(state) then return UTILITY(state)
v - ∞
for a,s in SUCCESSORS(state) do
v MAX(v,MIN-VALUE(s, , ))
if v ≥ then return v
MAX( ,v)
return v
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
Alpha-Beta Algorithm
January 20, 2016 TLo (IRIDIA) 33
function MIN-VALUE(state, , ) returns a utility value
if TERMINAL-TEST(state) then return UTILITY(state)
v + ∞
for a,s in SUCCESSORS(state) do
v MIN(v,MAX-VALUE(s, , ))
if v ≤ then return v
MIN( ,v)
return v
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
Alpha-Beta Algorithm
.نداردنهایینتیجهرویبرتاثیریهرس•.شدخواهدهرسدرختزیرکل•Perfect)سازیمرتب• Ordering)داشتهچمشگیریبهبودتواندمی
.باشد
34
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
فهرست مطالب
تعریف و انواع بازی•MiniMaxالگوریتم •
هرس آلفا و بتا•بازی در محیط بخشی قابل مشاهده•
35
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
فهرست مطالب
تعریف و انواع بازی•MiniMaxالگوریتم •
هرس آلفا و بتا•بازی در محیط بخشی قابل مشاهده•
36
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
بازی در محیط بخشی قابل مشاهده
Alpha-betaوMINIMAXجستجوی• Pruningداردنیازیحافظهبه..استاستفادهقابلغیرعمالًنیززیادزماندلیلبههمچنین•
:شانونتئوری• Cut off search earlier (replace TERMINAL-TEST by CUTOFF-TEST)
Apply heuristic evaluation function EVAL (replacing utility function of alpha-beta)
37
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
بازی در محیط بخشی قابل مشاهده
Change: if TERMINAL-TEST(state) then return UTILITY(state)
Into if CUTOFF-TEST(state,depth) then return EVAL(state)
38
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
EVAL
.شودمیانجامEvaluationآنگاهدهدمیرخCutoffزمانیکه•حالتایندربازیازانتظارموردکاراییازتخمین:ایده•:نیازمندی•
.1EVALتابعهمانندبرگهایگرهبرایبایدUtilityباشد.
.2EVALباشدشدنبرندهشانسبامتناسببایدبرگیغیرهایگرهبرای..انجامدطولبهزیادنیایدآنمحاسبه3.
39
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
EVAL
40
Eval(s) = w1 f1(s) + w2 f2(s) + … + wnfn(s)
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
EVALمشکالت
41
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
EVALمشکالت
42
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
فهرست مطالب
تعریف و انواع بازی•MiniMaxالگوریتم •
هرس آلفا و بتا•بازی در محیط بخشی قابل مشاهده•
43
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
فهرست مطالب
تعریف و انواع بازی•MiniMaxالگوریتم •
هرس آلفا و بتا•بازی در محیط بخشی قابل مشاهده•
44
فرادرس
FaraDars.org
مصنوعیآموزش هوش
faradars.org/fvsft102
این اسالید ها بر مبنای نکات مطرح شده در فرادرس
« آموزش هوش مصنوعی».تهیه شده است
یدبرای کسب اطالعات بیشتر در مورد این آموزش به لینک زیر مراجعه نمایfaradars.org/fvsft102
مصنوعیآموزش هوش
faradars.org/fvsft102
فرادرس
FaraDars.org