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