Intellipaat Back

Explore Courses Blog Tutorials Interview Questions
0 votes
2 views
in AI and Deep Learning by (50.2k points)

For an AI-class project, I need to implement a reinforcement learning algorithm that beats a simple game of Tetris. The game is written in Java and we have the source code. I know the basics of reinforcement learning theory but was wondering if anyone in the SO community had hands-on experience with this type of thing.

  1. What would your recommended readings be for the implementation of reinforced learning in a Tetris game?

  2. Are there any good open-source projects that accomplish similar things that would be worth checking out?

Edit: The more specific the better, but general resources about the subject are welcomed.

Follow up:

I thought it would be nice if I posted a follow-up.

Here's the solution (code and writeup) I ended up with for any future students :).

1 Answer

0 votes
by (107k points)
edited by

Organizations should use reinforcement learning in their AI technologies  when:

  • They are using simulations because your system or process is too complex (or too physically hazardous) for teaching machines through trial and error.

  • They are dealing with large state spaces.

  • They are seeking to augment human analysts and domain experts by optimizing operational efficiency and providing decision support.

Talking about the tetris game, people who play many hours of this addicting game will likely develop strategies for playing. For example, they may try to fill up the corners and single-wide spaces first, while avoiding the situation where free spaces get covered by objects on top thus becoming inaccessible.

Here is the link you can refer for the implementation in java program:

https://github.com/technobium/q-learning-java/blob/master/src/main/java/com/technobium/rl/QLearning.java

The strategy used by the model for incremental learning update is:

 U(state) = U(state)*(1-alpha) + (reward+gamma*U(next_state))*alpha

And for the other good open source projects that accomplish the same you can refer the following link:

:https://deepmind.com/research/open-source/open-source-code/

Another is: https://venturebeat.com/2018/08/27/google-releases-open-source-reinforcement-learning-framework-for-training-ai-models/

Wish to gain an in-depth knowledge of AI? Check out our Artificial Intelligence Tutorial and gather more insights!

31k questions

32.8k answers

501 comments

693 users

Browse Categories

...