[Solved] CSE 232 Honors Project #2

$25

File Name: CSE_232_Honors_Project_#2.zip
File Size: 235.5 KB

SKU: [Solved] CSE 232 Honors Project #2 Category: Tag:
5/5 - (1 vote)

Assignment Overview

Overview

OK, you know all about dots and boxes https://en.wikipedia.org/wiki/Dots_and_Boxes and you wrote the game playing elements and a random player to play the game. Now you want to write a much better player that should win the game.

Winning

How do you win the game? Can you always win the game. It turns out that d&b is a kind of game called a combinatorial game.

  • there are two players moving alternately;
  • there are no chance devices and both players have perfect information;
  • the rules are such that the game must eventually end; and
  • there are no draws, and the winner is determined by who moves last.

Because of this, it is possible to come up with a winning strategy.

Winning Player

You wrote a random player, now I want you to a winning player function called winning_play. You are going to pit winning_play against random_play (your old random player) and see who wins. The outcome should be obvious.

Rather than explain how to win, I would like you to look online and see if you can find a winning strategy. As a start, check out Elwyn Berlekamps (he wrote a book on dots-andboxes, no lie) youtube video https://www.youtube.com/watch?v=KboGyIilP6k He lists some good strategies there. You can also find more such info.

Do as much as you can to create a winning player. You may not have time to solve the game but you should be able to do very well against a random player.

Main Program

You are going pit winning_play against random_play to play dots-and-boxes.

Your main program will operate in two modes:

  • single play: there are two games here. o One with random_play first o One with winning_play

o Generate the two games in great detail in the file single_play.txt.

That exact name!

  • multiple play: play a lot of games, (flip a coin who goes first) and see who wins statistically.

More detail

  • prompt for a random seed integer
  • prompt for a number of rounds the multi-player (shown below) will play
  • in multiple play flip a coin to see who goes first and report it
  • your program will play two rounds using winning_play and random_play players and report each individual play, stored in a file called

single_play.txt to be created in the executables directory.

  • For each turn:
    • draw the grid
    • the score
    • whose move it is
    • what move was made
    • was that a box just made, did they go again
    • anything else that might be useful
  • it then will play the provided number of rounds using a winning_play and a random_play players and report statistics of the results to a file called multiple_play.txt. The statistics to include are:
    • the number of rounds played o average score overall and for each player o the median score overall and for each player o the highest and lowest score achieved for each player o anything else you think might be a good idea

Deliverables

As before, I want just one code file named honors2.cpp with everything in it. Makes it easier to grade. Handin will be to project13 named honors2.

One additional thing. I want a text file (no more than a page) that describes the strategy you implemented and how I can tell that it is working. You might want to embed in the single_play.txt file some info about when you used the strategy so it is clear to me.

Text file name should be strategy.txt Exactly that name!

Notes

  • your winning_play statistics should be awesome, though not necessarily a clean sweep.
  • as before, you should be able to play thousands of games in multiple play to get some good stats.

o if it takes minutes to do that, you need to rethink it.

Reviews

There are no reviews yet.

Only logged in customers who have purchased this product may leave a review.

Shopping Cart
[Solved] CSE 232 Honors Project #2
$25