Due Friday, Nov. 7 by
The assignment is worth 10% of your semester grade.
This assignment builds on Assignment #3. You may use your language of choice.
Implement an Evolutionary Algorithm of your choice to evolve a strategy for playing blackjack. You may use the strategy engine at www.blackjackinfo.com to generate what is considered to be the “optimal” strategy for comparison. Use the following rules:
(1) 2 decks of cards
(2) Dealer stands on soft 17 (dealer always stands on a hard 17)
(3) No surrender
(4)
(5) Doubling and spitting are not required for the assignment, although the ambitious students may consider these.
NOTE: We will not consider betting. Either your player wins or the dealer wins.
Include the following components of your program:
(1) A learning phase where the game is played continuously to learn a blackjack strategy until the termination condition has been reached. Follow the dealer’s rules which are fixed as given above. Your blackjack player should play based on the current strategy learned to date. Log the performance as learning progresses and plot the performance over time (e.g., plot the performance every 100 generations).
(2)
An evaluation component which provides a means of
testing your learned strategy and comparing it to the “optimal” strategy (as
defined by the strategy engine at www.blackjackinfo.com)
by playing x games, where x is an input parameter. When the learning has finished, test your strategy by playing 1000 games.
Document your evolutionary approach including your encoding of the problem and the parameters selected. Discuss your results. How does your strategy compare to the one given on www.blackjackinfo.com ? What other approaches might you try to improve the learning results?