Reinforcement learning project that creates and solves optimisation problems in the form of farming games.
To clone the repo and fetch the required dependencies:
git clone https://github.com/FinlaySanders/Farm_RL.git
cd Farm_RL
uv syncTo train a model (will be saved in 'models'):
uv run ppo.pyTo train with Weights and Biases logging:
uv run ppo.py --track --wandb-project-name Farm_RLTo visualise a model in 'models':
uv run show.py --model example.pthAgent has partial observations (within the grey square) - decisions are made using an attention mechanism to weight crops, CNN for pathfinding, and a LSTM for memory.
Screen.Recording.2025-01-18.at.2.09.31.PM.mov
Agent has complete observations - decisions are made with a CNN.