cp365 artificial intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/cp365/le… ·...

33
CP365 Artificial Intelligence

Upload: others

Post on 28-Jul-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

CP365Artificial Intelligence

Page 2: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Tech News!

Samsung Note 7 recall over exploding batteries

Page 3: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Tech News!

Sony announces gold-plated audiophile Walkman for $3,200

Samsung Note 7 recall over exploding batteries

Page 4: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Genetic art?

Page 5: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Nim

Make k piles of any number of coins

Take turns taking any number (>0) of coins from a single pile

Player that takes the last coin wins

Page 6: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Nim Strategy?

Page 7: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Simple Nim

Make 2 piles of coins- One pile has a single coin- Other pile has two coins

Play a couple of rounds

Would you rather go first or second?

Page 8: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Nim Game Tree Pile #1 Pile #2

Take 1pile #1

Take 1pile #2

Take 2pile #2

Page 9: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Nim Game Tree Pile #1 Pile #2

Take 1pile #1

Take 1pile #2

Take 2pile #2

Take 1pile #2

Take 2pile #2

Take 1pile #2Take 1

pile #1

Take 1pile #1

Page 10: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Nim Game Tree Pile #1 Pile #2

Take 1pile #1

Take 1pile #2

Take 2pile #2

Take 1pile #2

Take 2pile #2

Take 1pile #2

Take 1pile #2Take 1

pile #1

Take 1pile #1

Take 1pile #2

Take 1pile #1

Page 11: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Nim Game Tree Pile #1 Pile #2

Take 1pile #1

Take 1pile #2

Take 2pile #2

Take 1pile #2

Take 2pile #2

Take 1pile #2

1

Take 1pile #2Take 1

pile #1

Take 1pile #1

Take 1pile #2

Take 1pile #1

Player1 wins

Page 12: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Nim Game Tree Pile #1 Pile #2

Take 1pile #1

Take 1pile #2

Take 2pile #2

Take 1pile #2

-1

Take 2pile #2

Take 1pile #2

1

Take 1pile #2Take 1

pile #1

Take 1pile #1

-1

Take 1pile #2

1

Take 1pile #1

1

All winning values in leaves

Page 13: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Nim Game Tree

1

Pile #1 Pile #2

Take 1pile #1

Take 1pile #2

Take 2pile #2

Take 1pile #2

-1

Take 2pile #2

Take 1pile #2

1

Take 1pile #2Take 1

pile #1

Take 1pile #1

-1

Take 1pile #2

1

Take 1pile #1

1

Propagate best moves up:Player1 does the

maximum value move

Page 14: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Nim Game Tree

1

-1

Pile #1 Pile #2

Take 1pile #1

Take 1pile #2

Take 2pile #2

Take 1pile #2

-1

Take 2pile #2

Take 1pile #2

1

Take 1pile #2Take 1

pile #1

Take 1pile #1

-1

Take 1pile #2

1

Take 1pile #1

1

Propagate best moves up:Player2 does the

minimum value move

Page 15: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Nim Game Tree

1

-1

Pile #1 Pile #2

Take 1pile #1

Take 1pile #2

Take 2pile #2

Take 1pile #2

-1

Take 2pile #2

Take 1pile #2

1

1

Take 1pile #2Take 1

pile #1

Take 1pile #1

-1

Take 1pile #2

1

Take 1pile #1

1

Propagate best moves up:Player1 does the

maximum value move

Page 16: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Nim Game Tree

1

-1

Pile #1 Pile #2

Take 1pile #1

Take 1pile #2

Take 2pile #2

Take 1pile #2

-1

Take 2pile #2

Take 1pile #2

1

1

Take 1pile #2

1

Take 1pile #1

Take 1pile #1

-1

Take 1pile #2

1

Take 1pile #1

1

Propagate best moves up:Player1 does the

maximum value move

Page 17: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Nim Game Tree

1

-1 1

Pile #1 Pile #2

Take 1pile #1

Take 1pile #2

Take 2pile #2

Take 1pile #2

-1

Take 2pile #2

Take 1pile #2

1

1

Take 1pile #2

1

Take 1pile #1

Take 1pile #1

-1

Take 1pile #2

1

Take 1pile #1

1

Propagate best moves up:Player2 does the

minimum value move

Page 18: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Nim Game Tree

1

-1 1 -1

Pile #1 Pile #2

Take 1pile #1

Take 1pile #2

Take 2pile #2

Take 1pile #2

-1

Take 2pile #2

Take 1pile #2

1

1

Take 1pile #2

1

Take 1pile #1

Take 1pile #1

-1

Take 1pile #2

1

Take 1pile #1

1

Propagate best moves up:Player2 does the

minimum value move

Page 19: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Nim Game Tree

1

1

-1 1 -1

Pile #1 Pile #2

Take 1pile #1

Take 1pile #2

Take 2pile #2

Take 1pile #2

-1

Take 2pile #2

Take 1pile #2

1

1

Take 1pile #2

1

Take 1pile #1

Take 1pile #1

-1

Take 1pile #2

1

Take 1pile #1

1

Propagate best moves up:Player1 does the

maximum value move

Page 20: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Nim Game Tree

1

1

-1 1 -1

Pile #1 Pile #2

Take 1pile #1

Take 1pile #2

Take 2pile #2

Take 1pile #2

-1

Take 2pile #2

Take 1pile #2

1

1

Take 1pile #2

1

Take 1pile #1

Take 1pile #1

-1

Take 1pile #2

1

Take 1pile #1

1

Value of the game tree:Player1 wins.

Page 21: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Minimax Algorithm

Each player should select the move that minimizes the other player's maximum (best) move

Page 22: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Problems with Minimax?

Our old friend: tree size

Page 23: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Let's minimax again...

Page 24: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Player2 wants a minimum value.

Page 25: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Player2 wants a minimum value.

Page 26: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Player2 wants a minimum value.

WAIT! 4 is less than Player1's other option of 5.

Player1 will always pick 5.

Page 27: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Since Player2 wants a minimum value, we know that C will be 4 or less

without checking G and H.

Page 28: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Prune away node C.

Don't bother checking any of its entire subtree!

Page 29: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Alpha-Beta Pruning Key Idea

If a player has a better move further up the tree than the best move further down, then prune!

Page 30: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Alpha-Beta Pruningalpha: maximizing player's best (highest) value yet seen

beta: minimizing player's best (lowest) value yet seen

Page 31: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Alpha-Beta Pruningalpha: maximizing player's best (highest) value yet seen

beta: minimizing player's best (lowest) value yet seen

Do DFS and when alpha gets bigger than beta, prune by ending that recursive path

Page 32: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Alpha-Beta Code

Page 33: CP365 Artificial Intelligencecs.coloradocollege.edu/~mwhitehead/courses/2016_2017/CP365/Le… · Artificial Intelligence. Tech News! Samsung Note 7 recall over exploding batteries

Othello Championships!