W R Assumptions Since: 1 The starting state of each player is - - PowerPoint PPT Presentation

w r assumptions
SMART_READER_LITE
LIVE PREVIEW

W R Assumptions Since: 1 The starting state of each player is - - PowerPoint PPT Presentation

WAR with Auction Rounds W R Assumptions Since: 1 The starting state of each player is known to all other players 2 Every player knows what all other players played We may assume: Perfect Information Principle Since every player is capable of


slide-1
SLIDE 1

W R

WAR with Auction Rounds

slide-2
SLIDE 2

Assumptions

Since:

1 The starting state of each player is known to all other players 2 Every player knows what all other players played

We may assume: Perfect Information Principle Since every player is capable of “counting cards”, every player is theoretically capable

  • f knowing the cards in every other player i’s hand (Hi) and wins pile (Wi).

W R

slide-3
SLIDE 3

WAR as a Repeated Static Game

WAR can be represented as a repeated static game; that is, the outcome of a player’s move depends on the other players’ moves, but state is maintained between moves to formulate the outcome of game.

W R

slide-4
SLIDE 4

Problem Statement

You already know how WAR works. Given a game of WAR with N players, devise a strategy to “do well” at WAR.

W R

slide-5
SLIDE 5

Problem Statement

You already know how WAR works. Given a game of WAR with N players, devise a strategy to “do well” at WAR.

W R

slide-6
SLIDE 6

Dead Simple Strategy: DummiePlayer (DP)

DummiePlayeri (DP): To play a normal move, select randomly from Hi To play a tie, choose 4 cards randomly from Hi and discard the fjrst 3, play the last How well does DP do? When playing against N other DP’s, a DP will have a N chance of winning.

W R

slide-7
SLIDE 7

Dead Simple Strategy: DummiePlayer (DP)

DummiePlayeri (DP): To play a normal move, select randomly from Hi To play a tie, choose 4 cards randomly from Hi and discard the fjrst 3, play the last How well does DP do? When playing against N other DP’s, a DP will have a 1

N

chance of winning.

W R

slide-8
SLIDE 8

An Intelligent Player: SimpleMindedPlayer (SMP)

SimpleMindedPlayeri (SMP): To determine a normal play:

1 Compute S = {Hic | ∀j, d [Hic > Hjd]}. 2 If S ̸= ∅, play min(S). 3 Otherwise if, |Hi| ⩾ 5, ∃j, c [Hic = max (Hj) ∧ max2 (Hi) ⩾ max2 (Hj)], then play

the corresponding Hic.

4 Otherwise, play min (Hi).

To play a tie, follow strategy similar to above, but remove 3 smallest cards from hand fjrst to be discarded.

W R

slide-9
SLIDE 9

Example: SMP Move Computation (S ̸= ∅)

Player 1 is a SMP. Players 2, 3, 4 are opponents of unknown strategy. H Q H H H

1 Compute S

Hic j d Hic Hjd Q .

2 S

, so we play min S .

W R

slide-10
SLIDE 10

Example: SMP Move Computation (S ̸= ∅)

Player 1 is a SMP. Players 2, 3, 4 are opponents of unknown strategy. H1 = {8, 9, 10, 10, Q} H2 = {4, 5, 7, 7, 9} H3 = {2, 3} H4 = {5, 9}

1 Compute S

Hic j d Hic Hjd Q .

2 S

, so we play min S .

W R

slide-11
SLIDE 11

Example: SMP Move Computation (S ̸= ∅)

Player 1 is a SMP. Players 2, 3, 4 are opponents of unknown strategy. H1 = {8, 9, 10, 10, Q} H2 = {4, 5, 7, 7, 9} H3 = {2, 3} H4 = {5, 9}

1 Compute S = {Hic | ∀j, d [Hic > Hjd]} = {10, 10, Q}. 2 S

, so we play min S .

W R

slide-12
SLIDE 12

Example: SMP Move Computation (S ̸= ∅)

Player 1 is a SMP. Players 2, 3, 4 are opponents of unknown strategy. H1 = {8, 9, 10, 10, Q} H2 = {4, 5, 7, 7, 9} H3 = {2, 3} H4 = {5, 9}

1 Compute S = {Hic | ∀j, d [Hic > Hjd]} = {10, 10, Q}. 2 S ̸= ∅, so we play min(S) = 10.

W R

slide-13
SLIDE 13

Example: SMP Move Computation (S = ∅)

Player 1 is a SMP. Players 2, 3, 4 are opponents of unknown strategy. H1 = {8, 9, 10, 10, Q} H2 = {4, 5, 7, 7, 9, Q} H3 = {2, 3} H4 = {5, 9}

1 Compute S

Hic j d Hic Hjd .

2 S

, so we cannot play from S.

3 See if we can play high: 1

Hi ? Yes.

2

j c Hic max Hj max Hi max Hj ? Yes, j , Hjc Q.

3 Play Q.

W R

slide-14
SLIDE 14

Example: SMP Move Computation (S = ∅)

Player 1 is a SMP. Players 2, 3, 4 are opponents of unknown strategy. H1 = {8, 9, 10, 10, Q} H2 = {4, 5, 7, 7, 9, Q} H3 = {2, 3} H4 = {5, 9}

1 Compute S = {Hic | ∀j, d [Hic > Hjd]} = ∅. 2 S

, so we cannot play from S.

3 See if we can play high: 1

Hi ? Yes.

2

j c Hic max Hj max Hi max Hj ? Yes, j , Hjc Q.

3 Play Q.

W R

slide-15
SLIDE 15

Example: SMP Move Computation (S = ∅)

Player 1 is a SMP. Players 2, 3, 4 are opponents of unknown strategy. H1 = {8, 9, 10, 10, Q} H2 = {4, 5, 7, 7, 9, Q} H3 = {2, 3} H4 = {5, 9}

1 Compute S = {Hic | ∀j, d [Hic > Hjd]} = ∅. 2 S = ∅, so we cannot play from S. 3 See if we can play high: 1

Hi ? Yes.

2

j c Hic max Hj max Hi max Hj ? Yes, j , Hjc Q.

3 Play Q.

W R

slide-16
SLIDE 16

Example: SMP Move Computation (S = ∅)

Player 1 is a SMP. Players 2, 3, 4 are opponents of unknown strategy. H1 = {8, 9, 10, 10, Q} H2 = {4, 5, 7, 7, 9, Q} H3 = {2, 3} H4 = {5, 9}

1 Compute S = {Hic | ∀j, d [Hic > Hjd]} = ∅. 2 S = ∅, so we cannot play from S. 3 See if we can play high: 1

Hi ? Yes.

2

j c Hic max Hj max Hi max Hj ? Yes, j , Hjc Q.

3 Play Q.

W R

slide-17
SLIDE 17

Example: SMP Move Computation (S = ∅)

Player 1 is a SMP. Players 2, 3, 4 are opponents of unknown strategy. H1 = {8, 9, 10, 10, Q} H2 = {4, 5, 7, 7, 9, Q} H3 = {2, 3} H4 = {5, 9}

1 Compute S = {Hic | ∀j, d [Hic > Hjd]} = ∅. 2 S = ∅, so we cannot play from S. 3 See if we can play high: 1 |Hi| ⩾ 5? Yes. 2

j c Hic max Hj max Hi max Hj ? Yes, j , Hjc Q.

3 Play Q.

W R

slide-18
SLIDE 18

Example: SMP Move Computation (S = ∅)

Player 1 is a SMP. Players 2, 3, 4 are opponents of unknown strategy. H1 = {8, 9, 10, 10, Q} H2 = {4, 5, 7, 7, 9, Q} H3 = {2, 3} H4 = {5, 9}

1 Compute S = {Hic | ∀j, d [Hic > Hjd]} = ∅. 2 S = ∅, so we cannot play from S. 3 See if we can play high: 1 |Hi| ⩾ 5? Yes. 2 ∃j, c [Hic = max (Hj) ∧ max2 (Hi) ⩾ max2 (Hj)]? Yes, j = 2, Hjc = Q. 3 Play Q.

W R

slide-19
SLIDE 19

Example: SMP Move Computation (S = ∅)

Player 1 is a SMP. Players 2, 3, 4 are opponents of unknown strategy. H1 = {8, 9, 10, 10, Q} H2 = {4, 5, 7, 7, 9, Q} H3 = {2, 3} H4 = {5, 9}

1 Compute S = {Hic | ∀j, d [Hic > Hjd]} = ∅. 2 S = ∅, so we cannot play from S. 3 See if we can play high: 1 |Hi| ⩾ 5? Yes. 2 ∃j, c [Hic = max (Hj) ∧ max2 (Hi) ⩾ max2 (Hj)]? Yes, j = 2, Hjc = Q. 3 Play Q.

W R

slide-20
SLIDE 20

SMP Preformance

How well does a SMP do against N other SMPs? A SMP will always die against a fellow SMP, and the game will result with no winners. So an SMP stands a 0% chance here. How well does a SMP do against N DPs? Too hard to fjgure out mathematically, so we wrote a computer simulation to answer this.

W R

slide-21
SLIDE 21

SMP Preformance

How well does a SMP do against N other SMPs? A SMP will always die against a fellow SMP, and the game will result with no winners. So an SMP stands a 0% chance here. How well does a SMP do against N DPs? Too hard to fjgure out mathematically, so we wrote a computer simulation to answer this.

W R

slide-22
SLIDE 22

Computer Simulation

https://github.com/psattiza/war 100,000 simulated games A single SMP battles N DPs, for all N ∈ {1, . . . , 100}.

W R

slide-23
SLIDE 23

Computer Simulation

20 40 60 80 100 0.75 0.8 0.85 0.9 Number of DPs (N) SMP Win Ratio SMP vs. N DPs: Win Ratio

W R

slide-24
SLIDE 24

Computer Simulation

20 40 60 80 100 500 1,000 Number of DPs (N) Mean Rounds Played SMP vs. N DPs: Mean Rounds Played

W R

slide-25
SLIDE 25

Computer Simulation

20 40 60 80 100 100 200 300 400 500 Number of DPs (N) σ (Rounds) SMP vs. N DPs: Variance of Rounds Played

W R

slide-26
SLIDE 26

Extensions

SMP does not take into account Wi for either themselves, or other players. Design a CMP (ComplexMindedPlayer) which adds in factors from Wi. When an SMP determines it cannot win, it chooses it’s lowest card, which may have a high probability of causing a tie against DPs. Design a player good for defeating large quantities of DPs that takes this into account. Throw the game at a ML algorithm and see what happens? More simulation runs!

W R

slide-27
SLIDE 27

Extensions

SMP does not take into account Wi for either themselves, or other players. Design a CMP (ComplexMindedPlayer) which adds in factors from Wi. When an SMP determines it cannot win, it chooses it’s lowest card, which may have a high probability of causing a tie against DPs. Design a player good for defeating large quantities of DPs that takes this into account. Throw the game at a ML algorithm and see what happens? More simulation runs!

W R

slide-28
SLIDE 28

Extensions

SMP does not take into account Wi for either themselves, or other players. Design a CMP (ComplexMindedPlayer) which adds in factors from Wi. When an SMP determines it cannot win, it chooses it’s lowest card, which may have a high probability of causing a tie against DPs. Design a player good for defeating large quantities of DPs that takes this into account. Throw the game at a ML algorithm and see what happens? More simulation runs!

W R

slide-29
SLIDE 29

Extensions

SMP does not take into account Wi for either themselves, or other players. Design a CMP (ComplexMindedPlayer) which adds in factors from Wi. When an SMP determines it cannot win, it chooses it’s lowest card, which may have a high probability of causing a tie against DPs. Design a player good for defeating large quantities of DPs that takes this into account. Throw the game at a ML algorithm and see what happens? More simulation runs!

W R

slide-30
SLIDE 30

Questions?

W R