משחקים ואלגוריתם MINIMAX

Preview:

DESCRIPTION

משחקים ואלגוריתם MINIMAX. מבוא לבינה מלאכותית (236501) מדעי המחשב, טכניון עומר גייגר חורף 2013-14. Game characteristics. משחק שני שחקנים : מספר הסוכנים הוא . משחק תור מתחלף : משחק שני שחקנים – סכום אפס : פונקציית תועלת ( Utility ) פשוטה במקרה של משחק סכום אפס: - PowerPoint PPT Presentation

Citation preview

ואלגוריתם MINIMAXמשחקיםמלאכותית ) לבינה (236501מבוא

, טכניון המחשב מדעיגייגר עומר

2013-14חורף

Game characteristicsשחקנים שני הוא: .משחק הסוכנים מספרמתחלף תור : משחק

אפס – סכום שחקנים שני : משחקתועלת ) :Utilityפונקציית אפס( סכום משחק של במקרה פשוטה

? שחקנים עם אפס סכום משחק מהו

? זה למקרה את נרחיב איך

U (𝑠 , 𝑖 )={ 1 𝐺(𝑠)∧𝑝𝑙𝑎𝑦𝑒𝑟 𝑖𝑤𝑖𝑛𝑠−1 𝐺(𝑠)∧𝑝𝑙𝑎𝑦𝑒𝑟 𝑖 𝑙𝑜𝑠𝑒𝑠0

𝑈𝑛𝑑𝑒𝑓𝑖𝑛𝑒𝑑𝐺(𝑠)∧𝑡𝑖𝑒𝑁𝑂𝑇𝐺(𝑠)

𝑈 (𝑠 ,𝑖 )={ 𝐾−1 𝐺(𝑠)∧𝑝𝑙𝑎𝑦𝑒𝑟 𝑘𝑤𝑖𝑛𝑠𝑈 (𝑠 ,𝑖) 𝑒𝑙𝑠𝑒

∀𝑠∈𝐺 :∑𝑖=1

𝐾

𝑈 (𝑠 , 𝑖 )=0

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

Game characteristicsמלאה אינפורמציה .משחק הסוכנים: לכל ידוע הנוכחי המצב שלב בכלחלקית אינפורמציה (.משחק " חלקית: ) ידוע כ בד לסוכנים ידוע לא הנוכחי המצב

דטרמיניסטי .משחק ) המצב: ) בהינתן היטב מוגדרת תוצאה מהלך פעולה לכלאידטרמיניסטי .משחק מראש: ידוע לא העוקב המצב בהם ומצב פעולה קיימת

? חלקית אינפורמציה הוא ריסק למה . והמשימות הבונוסים קלפי ידועים לאלבטא כדי בששבש מצב נייצג איך

? האידטרמיניזם אתשל + הקוביות תוצאת החיילים מצב

. אידטרמיניסטי עוקב מצב השחקן...?" מתחלף " תור שאינו למשחק דוגמה תנו

. השחקן: לאותו נוסף תור נותן דאבל מונופול

משחק אינפורמציה דטרמיניסטיפוקר חלקית כן

רמי חלקית כןששבש מלאה לאשחמט מלאה כןדמקה מלאה כןריסק חלקית לא

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

Game treeמשחק : עץ

-. מצב מייצג צומת כל-. התחילי המצב הינו השורש-." " " " הבן מצב ל האב מצב מ חוקי מהלך מייצגת קשת כל

? המשחק לעץ ביחס ספיציפי משחק מהו ) התחילי )= המצב מהשורש מסלול

) סופי )= מצב לעלה ועד

המשחק סופיות ( הנחת " עץ: ) כל פיתוח את חישובית לא כ בד תיאורטית מאפשרת. חסום הסיעוף שמקדם ההנחה תחת המשחק

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

Strategy tree) סוכן ) של : אסטרטגיה

, היריב לגבי מידע והיעדר מבצע שהוא במהלכים הסוכן של השליטה בהינתןלמהלך אליו להגיע עשוי שהמשחק מצב מכל התאמה כלל תהווה אסטרטגיה

המתאים. : אסטרטגיה עץ

של התגובה מהלכי את שמייצג המשחק עץ של חלקי כעץ אסטרטגיה לייצג שיטה . הסוכן ומצומת הבנים כל את נשמור יריב מצומת האפשריים היריב למהלכי הסוכן

. , זה למצב יגיע והמשחק במידה יבחר בו המהלך יחיד בן נשמור

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

Minimax functionמינימקס : פונקצית

היטב - מוגדרת מתמטית פונקציה-. סופיים שאינם מצבים עבור הגדרת את יחיד באופן מרחיבה המינימקס פונקצייתובצמתי - המקסימלי הערך את הסוכן בצמתי ובוחרת רקורסיבית הינה ההגדרה

. המינימלי הערך את יריב

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

Minimax run

+3

+5

-1 +2

-3 -2 -4 +1

MAX SELECTS

MIN SELECTS

MAX SELECTS+5 +2

+2

-2 +1

-2

+2

-5 -1 -4 +5

-1 +5

-1

... נתונים למבני תזכורת? " האלגוריתם י עפ המשחק עץ צמתי מפותחים סדר באיזה

Post-Order DFSFather after all sons

...? וזיכרון זמן סיבוכיותבעומק: לינארי זיכרון

אקספוננציאלי: זמןבעומק

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

Tic Tac Toe example

Minimax algorithmנתעניין ריצה זמן של פרקטיים משיקולים

של המשאבים מוגבלת בגרסה כלל בדרךהאלגוריתם:

לערך .- הנפרש העץ עומק את נגבילמצבי - את נעריך זה לעומק בהגעה

" הערכה פונקציית י ע המשחקיוריסטית

יותר" - קיצוניים יהיו שערכי נקפיד כ בד. היורסטיים ההערכה מערכי

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

RB-Minimax

DIFF

Minimax example

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

(http://upload.wikimedia.org)

: הצמתים כל וכמוהו מסוים מעלה הגיע עלה שאינו בצומת ערך כל לב שימובמסלול

א, 2007-8חורף מועד

לעומק .- עד חיפוש לבצע ניתן זמן שב נתוןלפי .- ומתנהגת אקספוננציאלית הינה עץ פיתוח של הזמן סיבוכיות-- ב, העומק הגדלת .1לפיכך זמן פי תיקחהזמן .- קצבת כל את ייקח בעומק חיפוש אזוחסרות - מידיות תהינה בהן ההחלטות ולכן הבאים המהלכים ליתר זמן יוותר לא

ידע.

.

Exam Q1

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

הנתונים: לעומקים נתייחס הערה . שכבת כל כלומר כפולים כעומקים

. יריב ומהלך סוכן מהלך כוללת עומק

Exam Q2

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

א, 2007-8חורף מועד

תת - ובנוסף ערך מהשגרה להחזיר צורך יש כנלמד אסטרטגיה עץ לשמור מנת על : הנבדק מהצומת עץ

•. בודד - צומת מחזירים מהעלים.MINמצמתי • רקורסיבי: באופן המחושבים העצים תתי כל יהיו והבנים שורש.MAXמצמתי • : מקסימלי: ערך כבעל שנבחר העץ תת יחיד בן עם שורש

-. הקשתות על המקודדות הפעולות את לזכור כמובן חשוב

Exam Q2

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

-. צעדים כל של הראשון בצעד מתבצעת העץ של הבניהאנו - בעץ צומת באיזה לזכור צורך יש כאשר הצמתים ביתר נעשה בעץ השימוש

. שלו העץ בתת שאינו מה כל את להשמיט וניתן נמצאים-- ה שחקן יכול .MAXכך הצומת - של היחיד הבן לביצוע המהלך את זמן ב למצוא

Step 1Step 2

…Step BPlay

Opponent

Opponent

Play

Play

הערה:B בהכרח אינו

העץ עומקשאולי כפי

משתמע מהאנימציה

Exam Q2

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

) האסטרטגיה) שמירת ללא לשחקן בהשוואה כלומר- , מתקבל שהיה לזה השקול האופטימלי הצעד את מחזיר האלגוריתם צעד בכל

. הנותר לעומק מינימקס באלגוריתםב - בסעיף המצב לעומת .1זאת שנשמר ידע כל ללא מידי באופן צעד מוחזר בו

-. יותר מושכל מהלך יבצע המשופר האלגוריתם הראשון בצעד-. המהלך אותו את יבצעו האלגוריתמים שני השני בצעד- . במהלך פחות מושכל מהלך יחזיר המשופר האלגוריתם הבאים המהלכים בכל

עומק )( . לפי מהלך יוחזר ה-. - מיודעים, לא מהלכים בסוף יחזיר המשופר האלגוריתם כש כלומר- , במרחק" שנמצא במצב אך עדיף יהיה הרגיל האלגוריתם המצבים ברוב כ בסה

. , עדיף יהיה המשופר האלגוריתם מובטח מניצחון

Alpha-Beta

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

+3

+5

-1 +2

-3 -2 -4 +1

MAX SELECTS

MIN SELECTS

MAX SELECTS+5 +2

+2

-2

...? זו צומת של המינימקס ערך על בוודאות לומר ניתן מה

𝒗 ≤−𝟐

+1

𝒗 ≤𝟏! זה ענף את נגזום ! זה את וגם

PRUNE

pruning

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

: - ערך את ישנה לא בהכרח שפיתוחם ענפים קיצוץ ביטא אלפא גיזום. המינימקס, ואסטרטגיית המינימקס מסלול המינימקס

הרעיון: חסמים 1. שני הרקורסיבית בקריאה מטה כלפי נעביר

לשחקן – המובטח .MAXערך מקביל מענףלשחקן – המובטח .MINערך מקביל מענף

MIN SELECTS

5𝛽=5

MAX SELECTS

2𝛼=2

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

של 2. צומת באחד, MAXבפיתוח המתקבל מהערך נמוך של החסם אם ( . ה שחקן גזימה נבצע (.MINהבנים זה לענף הגעה למנוע יכול

של 3. צומת באחד, MINבפיתוח המתקבל מהערך גבוה של החסם אם. גזימה נבצע ה) הבנים (.MAXשחקן זה לענף הגעה למנוע יכול

pruning

MIN SELECTS

5𝛽=5

MAX SELECTS

2𝛼=2

8 1

8 1

PRUNE PRUNE

MAX SELECTS

MIN SELECTS

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

בצומת : בנים פיתוח עוצר לצומת MINגיזום מובטח ערך סמך .MAXעלבצומת : בנים פיתוח עוצר לצומת MAXגיזום מובטח ערך סמך .MINעל

. רב זמן לחסוך ועשוי מינימקס של האלגוריתם פלט על שומר הגיזום

pruning

MIN

5𝛽=5

MAX

2𝛼=2

8 1

8 1

PRUNE PRUNE

MAX MIN

Shallow pruningהגיע לגיזום שגרם החסם

מהאח

פיתוחים במקרה הטוב הרע

והממוצע

MIN

5𝛽←5

Deep pruning62 7

MIN

75

…MAX

MAX

𝒗 ≤𝟓

𝒗 ≤𝟕

)..., , סבא ) של סבא של אח סבא של אח גבוהה מרמה הגיע לגיזום שגרם החסם

MAX

6𝛼←6

1

8 5

𝒗 ≥𝟔

MAX

MIN

MIN

𝒗 ≥𝟏𝛼←𝑀𝑎𝑥 (6 ,1 )=6

1

Deep pruning

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

algorithm (RB)

...? החיצונית לקריאה המועברים הפרמטרים מהם

DIFF

bound

Deep Shallow

http://www.youtube.com/watch?v=Eychv62adsI&feature=youtu.be

bound

Deep Shallow

characteristics-. ) , המינימקס ) אסטרטגייה מסלול ערך את מחזיר האלגוריתם-. נשמר החיפוש בעץ השורש ערך- ...? נשמרת פנימית צומת ערך-: המשאבים מוגבל מינימקס של ההבטחה משפט

קיימת , • אזי ערך מחזיר לעומק המוגבל ביטא אלפא אםלפחות של יוריסטי ערך עם מצב המבטיחה אסטרטגיה

. צעדים בעוד

•. לנו , המובטח בעומק ביותר הגבוה הערך הוא זה ערך

לא!

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

(2012-13חורף) א, מועד . - שחמט למשחק הנחוצות הפונקציות ואת ביתא אלפא אלגוריתם את ממש סטודנט

המשחק את לנצח יכול שהמחשב שלמרות לב שם התוכנה נגד שערך במשחק ,) צעד ) ובחר הזה הצעד את מלבצע נמנע הוא בשחמט סופי מצב במט הבא בצעד

אחר. . בתוכנה באגים ואין נכון המימוש שכל ומצא בדק הסטודנט

.) ( ? מתאימים. איורים עם רצוי בפרוטרוט הסבירו כזה מצב יתכן איך א

. . בפרוטרוט. השינויים את תארו כאלה מצבים שימנע ביתא לאלפא שינוי הציעו ב. הפתרון את הסבירו

Exam Q3

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

.) ( ? מתאימים. איורים עם רצוי בפרוטרוט הסבירו כזה מצב יתכן איך א- פתרון ניצחון: בין מבדילים אינם ביטא ואלפא שמינימקס בגלל יתכן המתואר המצב

. מהלכים מספר בעוד ניצחון מבטיח ראשון שפותח הענף אם שונים בעומקים מובטחערך

באורך ענף של לערכו זהה יהיה שלו . 1המינימקס זה במקרה מידי ניצחון המבטיח . קודם שפותח כיוון הראשון המהלך ייבחר

. רגיל: במינימקס גם נכון הדבר למעשה הערה

Exam Q3

W W

W

W W

W

? ?

?

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר חורף

. . בפרוטרוט. השינויים את תארו כאלה מצבים שימנע ביתא לאלפא שינוי הציעו ב. הפתרון את הסבירו

:פתרון-.> , עומק > מינימקס ערך בודד ערך במקום ערכים זוג נחזירערכי - ששני במקרה שוויון כשובר בעומק נשתמש שכאלה זוגות בהשוואת כעת

. ניצחון לערך שווים המינימקס-. יותר גדול עומק נעדיף מינימום ובצמתי יותר קטן עומק נעדיף מקסימום בצמתיהמוחזר - מינימקס לערך כתוספת לעומק ההופכי את לשלב היא אחרת אפשרות

. סופיים מצבים בין שוויון של במקרה רק שישפיע באופן- . דומה באופן והביטא האלפא חסמי בתור גם ערכים בזוגות להשתמש ניתן

Exam Q3

: של באדיבותו חומרים על מבוסס התרגול' מרקוביץ' שאול פרופ

( מדעי המחשב- 236501מבוא לבינה מלאכותית )2013-14טכניון. עומר גייגר, חורף

Thank you! questions?