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

Preview:

DESCRIPTION

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

Citation preview

1

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

תמי תמיר

בית הספר למדעי המחשבהמרכז הבינתחומי

2

העולם מורכב מישויות שיש ביניהן כל מיני קשרים

אנשים

ארצות

מחלותשירים

מחשבים

צמחים

יצירות אמנות

ספרים

ענפי ספורט

3

גרפים

המודל המתמטי המקובל לתיאור מערכות •שיש בהם קשרים בין ישויות.

צומת

קשת

4

מפה גאוגרפית

צמתים = אתריםקשתות = כבישים

5

רשת תקשורת

Seattle

New York

Tel-Aviv.

Tokyo

Sydney

Seoul

צמתים = מעבדיםקשתות = קו

תקשורת

128

140

181300

160

56

6

צמתים = אתריםקשתות = לינקים

האינטרנט

XY

7

רשת חברתית

8

כשעולה בעיה בעולם האמיתי, ממירים אותה לבעיה שקולה בגרפים.

9

איך כדאי לנסוע מזכרון-יעקב

לנמל יפו?

10

5 10

2

3

1

4

6

7

12 9

מהו המסלול הקצר ביותר בין

שני צמתים?

11

בעיית ניתוב ברשת

לכל קשת יש מחיר.יש צומת ממנו יוצאות הודעות.

יש צמתים אליהם ההודעות צריכות להגיע.

לכל הודעה צריך לבחור מסלול.

איך ננתב את ההודעות כך שהמחיר הכולל שנשלם יהיה

נמוך ככל שניתן?

s

b a

s

b

v

a

1

7

2

810

12

בעיית ניתוב ברשת

s

v

1

16ניתוב אפשרי שמחירו

b a

7

2

810

13

בעיית ניתוב ברשת

s

v

1

11ניתוב אפשרי שמחירו

b a

7

2

810

14

בעיית ניתוב ברשת

נניח שבעלי ההודעות משלמים בעצמם על המסלול שהם

משתמשים בו.

אם מספר בעלי הודעות משתמשים באותה קשת, הם

חולקים ביניהם את המחיר שלה.

s

v

1

b a

למשל בדוגמא –

משחק

7

2

810

+1=5 +2=6

15

משחק ניתוב ברשת

נניח שנותנים לכל משתמש מסלול התחלתי כלשהו.•

מי שיש לו אפשרות לעבור למסלול שבו הוא ישלם •

פחות – עושה זאת.

עד שכולם מרוצים – לא יכולים לשפר יותר.•

16

משחק ניתוב ברשת

s

v

7 10

2 1

8

10 :מחיר ל-

7מחיר ל- :

, רוצה לעבור?

10 > 7 לא,

, רוצה לעבור?b a

10 > 9מתאים לי,

17

משחק ניתוב ברשת

s

b

v

a

7 10

2 1

8

, רוצה לעבור?

6 < 7 כן,

9 :מחיר ל-

7מחיר ל- :

18

משחק ניתוב ברשת

s

b

v

a

7 10

2 1

8

, רוצה לעבור?

לא

, רוצה לעבור?

לא

התהליך הסתיים, הגענו למצב יציב

5 :מחיר ל-

6מחיר ל- :

19

משחק ניתוב ברשת

נניח שנותנים לכל משתמש מסלול התחלתי כלשהו.•

מי שיש לו אפשרות לעבור למסלול שבו הוא ישלם •

פחות – עושה זאת.

עד שכולם מרוצים – לא יכולים לשפר יותר.•

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

שחקן שיכול לעבור לאסטרטגיה בעלת ערך טוב יותר – עושה זאת

(Nash Equilibriumעד שמגיעים לשיווי משקל )

20

שאלות מעניינות

האם תמיד התהליך הזה יסתיים?•

האם נגיע לשיווי משקל טוב )שבו •

סכום התשלומים של כל השחקנים

יחד הוא נמוך(?

21

האם תמיד התהליך הזה יסתיים?

בכל משחק - כן ניתוב ברשת.

22

?האם כל שיווי משקל הוא טוב

האם בכל שיווי משקל, סכום התשלומים של השחקנים הוא •

נמוך בהשוואה לניתוב הזול ביותר?

s

t שחקנים, 100נניח שיש sכולם רוצים לנתב מ-

.tל-

1.01 100

מתחילים במסלול היקר.100נניח שכל ה-

ממש לא

23

?האם כל שיווי משקל הוא טוב

s

t

1.01 100

.1=100/100כל שחקן משלם

24

?האם כל שיווי משקל הוא טוב

s

t

1001.01

עכשיו אני . אם 1משלם

1.01אעבור אשלם

25

?האם כל שיווי משקל הוא טוב

s

t

100

אף אחד לא רוצה לעבור!

מהמחיר הנמוך 100משלמים יחד פי ביותר.

1.01

עכשיו אני משלמת . אם אעבור אשלם 1

1.01

26

? שיווי משקל הוא טובכלהאם

שחקנים, יתכן nכשיש שיווי משקל שמחירו פי

n.מהמחיר הזול ביותר

27

? שיווי משקל טובקייםהאם

s

t

1001.01

האם בכל רשת קיים שיווי משקל טוב?

28

? שיווי משקל טובקייםהאם

s

t2 t3 t4t1

1 1/2 1/3 1/4

0 0 0 0

1.01

ארבעה שחקנים מעוניינים לנתב

ברשת הזו

29

? שיווי משקל טובקייםהאם

s

t2 t3 t4t1

1 1/2 1/3 1/4

0 0 0 0

1.01

ארבעה שחקנים מעוניינים לנתב

ברשת הזו

לכל שחקן יש שני מסלולים אפשריים

או בקשת ישירה – דרך הצומת

.התחתון

30

?האם קיים שיווי משקל טוב

s

t2 t3 t4t1

1 1/2 1/3 1/4

0 0 0 0

1.01

אם מישהו אחד משלם בשביל כולם:

מחיר הפתרון הזול 1.01ביותר הוא

בניתוב הזה, כל שחקן משלם קצת

. ¼יותר מ-

31

?האם קיים שיווי משקל טוב

s

t2 t3 t4t1

1 1/2 1/3 1/4

0 0 0 0

1.01

אבל זה לא שיווי משקל.

32

?האם קיים שיווי משקל טוב

s

t2 t3 t4t1

1 1/2 1/3 1/4

0 0 0 0

1.01

למה לי לשלם - ¼ קצת יותר מ

אם אני יכול לשלם ¼?

4שחקן

s

t2 t3 t4t1

1 1/2 1/3 1/4

0 0 0 0

1.01

33

?האם קיים שיווי משקל טוב

כל אחד משלושת השחקנים הנותרים משלם קצת יותר מ-

למה לי לשלם .1/3 1/3- קצת יותר מ

אם אני יכול לשלם 1/3?

3שחקן

s

t2 t3 t4t1

1 1/2 1/3 1/4

0 0 0 0

1.01

s

t2 t3 t4t1

1 1/2 1/3 1/4

0 0 0 0

1.01

34

?האם קיים שיווי משקל טוב

.1/2כל אחד משני השחקנים הנותרים משלם קצת יותר מ-

למה לי לשלם 1/2- קצת יותר מ

אם אני יכול לשלם 1/2?

2שחקן

s

t2 t3 t4t1

1 1/2 1/3 1/4

0 0 0 0

1.01

s

t2 t3 t4t1

1 1/2 1/3 1/4

0 0 0 0

1.01

35

?האם קיים שיווי משקל טוב

מה אני פראייר? השאירו אותי לבד

?1.01לשלם על ה-

1שחקן

s

t2 t3 t4t1

1 1/2 1/3 1/4

0 0 0 0

1.01

36

?האם קיים שיווי משקל טוב

.1.01 במקום 1 עובר לשלם 1שחקן •

s

t2 t3 t4t1

1 1/2 1/3 1/4

0 0 0 0

1.01 המחיר הכולל של הניתוב היציב

ברשת הזו היחידהוא

1+1/2+1/3+1/4

לא קיים שיווי משקל טוב !

37

לסיכום: משחק ניתוב ברשת

האם תמיד התהליך הזה יסתיים?•

האם כל שיווי משקל הוא טוב )סכום התשלומים של •

השחקנים הוא נמוך(?

האם קיים שיווי משקל טוב? •

38

לסיכום: משחק ניתוב ברשת

האם תמיד התהליך הזה יסתיים?•

כן–

האם כל שיווי משקל הוא טוב )סכום התשלומים של •

השחקנים הוא נמוך(?

.n ממש לא – יתכן שיהיה גבוה פי –

האם קיים שיווי משקל טוב? •

.log nלא ממש - יתכן שיהיה גבוה פי –

39

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

הרבה משתמשים נקלעים יחד לזירה )אינטרנט..(•

כל אחד עושה את מה שטוב בשבילו.•

שונה מהמודל הקלאסי – מערכת שבה ישות אחת •

מחליטה עבור כולם.

המחקר בתחום הזה מנסה להבין עד כמה בעיות •

נתונות הן יציבות, עד כמה פתרונות יציבים יכולים

להיות גרועים, והאם ואיך אפשר לכוון את המשתתפים

לפתרון שהוא גם יציב וגם טוב.

Recommended