Commit Graph

14 Commits

Author SHA1 Message Date
Marshall
f81db19586 - Test PlayerModel.dat file should not be versioned, I don't think... 2012-04-30 17:59:44 -04:00
Woody Folsom
8f92ae65d8 Fixed unit tests, changed MDP generation to more reasonably seek the goal state, avoiding premature end of game.
Removed unused google-code classes.
Regenerate policy when AdaptiveComPlayer.setTarget() is called.
2012-04-30 17:37:37 -04:00
Woody Folsom
04c05a7396 Merge branch 'master' of woodyfolsom.net:/opt/git/cs8803p4
Conflicts:
	src/view/ParsedArgs.java
2012-04-30 13:38:31 -04:00
Woody Folsom
d0ee1e647b Implemented agent which chooses to play winning, losing or random moves by solving a simplified MDP model of the game using policy iteration.
Portions of MDP/solver code by Ciaran O'Reilly and Ravi Mohan used under MIT license.
2012-04-30 13:35:40 -04:00
Marshall
0724d44ec4 - Created a new ComPlayer. It targets a particular score, and does it pretty well. It does this by counting the number of empty spaces and the number of empty spaces that can potentially be created by removing tiles then either playing to block or playing to extend the game.
- Created DumpResults.java, which simply outputs all scores in a player model so that they can be graphed.
2012-04-30 05:18:02 -04:00
Marshall
15ed56134e - Implemented multiple users, including a selection dialog and automatic preference saving and loading.
- Integrated the ANN with the game. The network now predicts a user move, completely ignores it, and trains itself on the players actual move. This integration also included implementing two new functions. The first translates a board state to a boolean array to correspond with input nodes. The second translates a move to a boolean array to correspond with output nodes.
2012-04-29 03:22:19 -04:00
Marshall
dc11e2c48b - Implemented saving and loading of a player model. High scores are now persistent, though only for one user.
- Created a JUnit test class to test the serialization. Should be useful for later tests.
2012-04-28 23:01:36 -04:00
Woody Folsom
b87f58cb31 Minor changes to support debugging Alpha-Beta move generator. 2012-04-25 09:27:52 -04:00
Woody Folsom
d9ec72d0fb Alpha-Beta move generator can look 2 plays (4 plies) ahead on a 4x4 board and blocks every possible attempt by the player to connect 3.
It should be possible to play on larger boards when the computers 'move' is changed from playing a tile to picking the player's next available color.
2012-04-14 15:36:02 -04:00
Woody Folsom
9619f9a96d Incremental updates. Work in progress to augment Board, Referee, add score for computer player, implement Monte-Carlo simulation.
Renamed Player implementations and changed Player to interface, with the goal of using abstraction to make the human and computer interactions with the game identical for ease of simulation.
2012-04-08 17:25:10 -04:00
Woody Folsom
02c4986c30 App can now be built using Ant and run from the JAR file.
Note: this requires adding the res/lib folder to the classpath in order to run in Eclipse (included in this commit).
Another commit will follow to remove build artifacts from git.
2012-04-02 13:54:55 -04:00
Marshall
2954041e89 Initial game engine. 2012-03-31 14:15:50 -04:00
Woody Folsom
d6516388ad Now with file-based level grammar. 2012-03-18 10:56:25 -04:00
Woody Folsom
8e83234a87 Initial commit. 2012-03-06 11:42:35 -05:00