How to Benefit from RL-Lab

Ziad SALLOUM
3 min readDec 16, 2021

--

Overview to Reinforcement Learning newcomers

Photo by Brett Jordan on Unsplash

Reinforcement Learning is an amazing field, it gives a sensation of magic. However, it is not an easy topic to study, it is hard, it is frustrating, especially for newcomers.

RL-Lab.com has embarked on a mission to make it easier for people to practice and learn this technique. There are plenty of articles and videos out there that talk about it, but they still don’t give the direct sensation that comes from trying by your own hands and seeing the results.

The “what happens if I do this, or I do that” is still something out-of-reach for many of the offered solutions.

RL-Lab.com wants to change that, by giving an easy interface for interacting with each Reinforcement Learning experience. That’s why we have chosen the GridWorld experience as a starting point (others will follow) because it is simple and intuitive.

Users who see a GridWorld example would instinctively like to make their scenario, by placing trophies, pitfalls, hurdles, barriers at places of their choosing and seeing how would the agent react. They would like very much to try to break the agent.

This is an important step of learning, which is by seeing, practicing, trying weird things…

When users try their (weird) scenarios, they will become more and more curious about how things work and this is when they become eager to repeat the same thing using their code.

In this example, the agent chooses not to go directly to the trophy even if it is the shortest path, because the wind will blow it away. Instead, it chooses to rake the longest way because it is more guaranteed to arrive. This behavior is not programmed but learned by the agent through experience.

RL-Lab.com offers this chance by giving users an editor directly on the same page, no need for downloading, installation, configuration,… There is also no need for all the code “plumbing” that goes around so the whole algorithm functions. It goes directly to the things that matter.
Users will have to implement the algorithm itself, usually split into several parts or methods. So even if they are not comfortable with the whole algorithm, they can implement some parts of it, and leave the other parts to the default implementation.

The editor gives uses a chance to implement part, or the whole algorithm.

Usually, the editor contains guidelines on how to proceed, and how to implement some of, or the complete set of methods (by setting variables like ‘useMethodComputeReturnOfEpisode’, ‘useMethodImproveAndUpdatePolicy’, etc…).
Then each method has comments that give direction on how to write the code.
Of course, some knowledge in javascript is needed, because the code will run on the browser. But since javascript is a well-known language, and the skill level in this language need not be high in order to complete the task, it should not be a problem for anyone to try.

This is said, it is now your turn to implement these algorithms yourself:

Don’t forget that when you do something interesting and useful, let the community benefit from it. You can share your scenario and code so that you let others profit from the experience you have acquired. Check this page for more information.

Related articles

--

--