A List of Selected Works
YAXLib: Yet Another XML Serialization Library for the .NET Framework
An XML serialization library which lets developers design the XML file structure, and select the exception handling policy. This library also supports serializing most of the collection classes such as the Dictionary generic class.
For more details please refer to this CodeProject article.
Grid-Soccer Simulator is a multi-agent soccer simulator in a grid-world environment. The environment provides a test-bed for machine-learning, and control algorithms, especially multi-agent reinforcement learning.
The project is developed in C#, so you will need Mono (available for all platforms) or .NET Framework (available for Microsoft Windows only) to run the simulator and the sample clients. The communication between players and the simulator is performed using a human-readable, plain text, network protocol; hence one can create a player in virtually any programming language that supports networking.
Grid-Soccer simulator (above) has been implemented as part of my Master’s thesis entitled: Evaluation of NeuroEvolution of Augmenting Topologies in Cooperative Multi-agent Learning
Here you can view or download my Master’s thesis in Persian.
RCSSCoachable stands for RoboCup Soccer Simulation Coachable Players. Coachable players are special types of RoboCup 2D players that can be given advice from an agent called the coach. Coach uses the coach language (CLang for short) to communicate with the players. Coachable players receive the coach’s advice and behave accordingly.
RCSSCoachable agents were the standard coachable players for the RoboCup coach competitions 2005 and 2006. Coach competition is not held any more in RoboCup, but one might find these agents useful for their research.
Coach Assistant is a GUI tool that helps creating strategies for the coachable players. You can get Coach Assistant including source and binary from its GitHub page. Note that you need Java 1.5 or higher to make and run the application. The source code is released under GNU GPL.
Also, here you will find a short tutorial on Coach Assistant.
Temporal Difference Methods: Article, Slides, and Demo Application
Introduction to Reinforcement Learning - R. S. Sutton, and A. G. Barto [+]:
If one had to identify one idea as central and novel to reinforcement learning, it would undoubtedly be temporal-difference (TD) learning.
Due to my interest in Reinforcement Learning, I chose temporal difference learning methods as my research topic for one of my courses (advanced mathematical software).
Here you can view or download the report in Persian.
Here is the presentation slides in Persian.
The Matlab source files for the demo application are hosted on GitHub.