Partial Python rewrite #361
Labels
ai
Has to do with the AI
enhancement
Something should be changed
training
Has to do with the training script
With the growing complexity of the RL/ML side of this project, the training code is starting to hit the limits of the current TFJS/Node capabilities, having to re-implement some frameworks/algorithms from scratch (training loop, attention layers, etc) and hitting bugs and performance issues. Part of this project will be rewritten in Python in order to better take advantage of deep learning libraries and resources.
Since the simulator used by this project is written in JavaScript, inevitably part of code will have to remain in that language, while connecting it to the main Python training script (or inference server in PsBot workflow) via an interop library. After some iteration the best place to draw the JS-Python barrier seems to be at the BattleAgent level, where a JSON describing the battle state can be sent to Python to calculate inferences, do ML, etc. and then send action responses back. Most of the PsBot and BattleState modules will remain unchanged and can still take full advantage of the modular PS libraries that are currently being used, while inference and training code will be rewritten in Python and further features/improvements built on top of that.
The text was updated successfully, but these errors were encountered: