Wednesday, May 6, 2015

Final Post

It has been a few weeks since I have begun this project, and it is finally come to a close. My program works pretty well, with my AI predicting it's opponents moves relatively well. It has over a 99 percent victory rate against the random move AI. When facing the all out attacker, the results dropped to about fifty percent. This was expected, as the primary AI predicts that it's opponents will switch Pokemon, therefore it will always receive attacks, but not always retaliate. When fighting the third AI, the win rate rose to about 80 percent, which is due to the correctly predicted defensive swapping.

To see my program in action, watch here:
https://www.youtube.com/watch?v=5PGQK_avuZw

Through this project, I have learned several lessons. First, if you need to restart a project, do so quickly. It is difficult trying to generate a project when you begin with the half the time you would normally begin with. I also learned that assumptions can only go so far. The problem with probabilistic reasoning is that while you can come up with a likely answer, it may not always be the outcome. Finally I learned that new languages can be frustrating to try learn, some, I have found, are pretty easy and useful while others are difficult to master or use for a particular purpose.

For future enhancement, I would like to be able to account for more variables. Within the Pokemon games, there are several attributes that this program and framework does not take into account. These include factors such as items, abilities and effort values. I would also like to be able to hook this up to either a Nintendo DS or an online simulator in order to be able to battle with opponent s online. Along with this, I would like to incorporate a machine learning portion, which would be able to recognize opponents strategies in order to counteract them.

Overall this was a fun project to work on, and I look forward to being able to upgrade it in the future.

No comments:

Post a Comment