Skip to content

mvrahden/learning-agents

Repository files navigation

Learning Agents

The content of this repository can be viewed on its GitHub page. It is shown an environment which is an extended version of the "Waterworld" example of the Stanford University CS group - more specific by Andrej Karpathy. You'll find multiple pages, each with different content.

  • Pre-Trained: This page shows two agents which were trained in a simulation run.
  • Simulation: The simulation environment offers the ability to run individual simulations.
  • Explanation: This page offers explanatory content regarding the logics and technical background of the simulation.
  • DQN-Method: This page offers even more insight into how the agents inference mechanism, namely the DQN-Method, is implemented.
  • About: This page offers an overview of the Dependencies of this project.

The content of this Website is for educational purposes only.

Overview of the System as UML

Please see the section Dependencies for the displayed modules.

UML Diagram

Local Installation

To run the code on a local machine please follow the listed steps:

Pre-Setup

  1. Install NodeJS, NPM (ships with NodeJS) & git (if not done yet)
    Please follow the steps on their respective website node, npm & git or in any given Web-Tutorial
  2. Install Typescript & Angular CLI as global dependencies
    Please follow the following steps in your command line (or the steps on their respective websites)
npm install -g typescript @angular/cli

Actual Installation

  1. In your command line change into a target directory and clone the code via git into this directory
git clone https://github.com/mvrahden/learning-agents.git
  1. Change into the newly created directory cd learning-agents
  2. Install all project related dependencies via npm install
  3. Run the code via the Angular CLI ng serve --open
    This should open a new tab in your configured web browser

Update the GitHub Page

  1. build the current code base:
ng build --prod --output-path=docs --base-href "https://mvrahden.github.io/learning-agents/"
  1. restore the 404.html file.
  2. git commit and git push

Dependencies

  1. Learning Agents: Implementation of the Simulation Flow Control and the Frontend View
  2. Learning Agents Model: Implementation of the Entities involved in the Simulation
  3. reinforce-js: Implementation of the DQN-Solver (also available via NPM)
  4. recurrent-js: Implementation of neural networks graph model and matrix operations (also available via NPM)
  5. Angular: Mobile & Desktop Frontend Framework
  6. Angular Material: Material Design Components for the Angular Frontend Framework

License

As of License-File: MIT