Help with modifying and rebuilding MAME's Reinforcement Learning C++ implementation to add functionality

Hello there,

I am developing a reinforcement learning agent using Python that would learn to play the arcade Tekken games which are emulatable by MAME (Multiple Arcade Machine Emulator) [[login to view URL]] as part of a research.

My project is based upon the MAME Reinforcement Learning Toolkit [[login to view URL]], a Python framework which makes communication between the Python AI agent and MAME easy by providing the necessary data, most importantly the frame/image data, which is what the AI would "see". The MAME Toolkit communicates with a modified version of MAME [[login to view URL]], which is written in C++ and compiled. It is the only reinforcement learning framework solution for arcade games, as far as I am aware.

While using the MAME Toolkit, I stumbled upon a limitation which caused it to hit an exception and return the message "MAMEToolkit only supports RGB32 and ARGB32 frame bit format games". I checked the Toolkit's Python source code and it receives an empty list from the modified MAME implementation.

In the modified MAME C++ implementation, I found out the functions responsible for gathering the game's image data (typically RGB32, 8 bits for each color for each pixel value) are located in [login to view URL] and will only collect any data if either a RGB32 or ARGB32 format encoding is detected. Unfortunately, I tried all Tekken games from various regions and none has the compatible frame format. The only solution to make the MAME Toolkit support the Tekken games is to detect the frame encoding format and convert it to RGB32 or add functionality for it to be handled.

The problem is I am a novice in C++ and it is hard to debug and rebuild a complex project, even if the fix may be simple. I would need help modifying and recompiling MAME's C++ code. It is worth noting that because the modified MAME implementation and the MAME Toolkit communicate using FIFO pipes, it is only compatible with GNU/Linux. It also contains a makefile.

I am not sure how much time it may take but please suggest to me any quotes if you believe you can help.

Thanks in advance!

Skills: C++ Programming

See more: java reinforcement learning, reinforcement learning ssh, reinforcement learning forex, use c++ for machine learning, q learning, reinforcement learning from scratch, reinforcement learning tutorial, reinforcement learning notes, reinforcement learning games, reinforcement learning java, mlpack reinforcement learning, reinforcement learning library java, reinforcement learning matlab, reinforcement learning software, matlab code gridworld problem reinforcement learning, reinforcement learning mt4, java source code reinforcement learning, reinforcement learning project, reinforcement learning algorithm java, cliff walking reinforcement learning matlab code

About the Employer:
( 10 reviews ) Hyderabad, India

Project ID: #19317739

3 freelancers are bidding on average ₹8518 for this job


Hi. I feel attracted to your project. I have studied C, C++ as major. And I have been developing C, C++ programs for 7 years. So I have confidence in developing C, C++. I love native C rather than MFC or Qt ... I t More

₹7777 INR in 3 days
(8 Reviews)

i can do this c+ project High Quality + Fast Speed = Excellent Result + Business Success, this is my working style. I have gone through your Job post and I can understand your job requirement thoroughly. I have a More

₹10000 INR in 3 days
(0 Reviews)
₹7777 INR in 3 days
(0 Reviews)