diff --git a/src/index.html b/src/index.html index b33a9e1..fe08f0a 100644 --- a/src/index.html +++ b/src/index.html @@ -24,23 +24,46 @@ +
+
+ +
+
+
+
+ +
+
+
+
+ +
- +
- + @@ -55,8 +78,7 @@ - - +
@@ -90,8 +112,7 @@ are to provide obstacles.
    -
  • Reward: The agent is rewarded for moving to the right, keeping it's head above it's legs, conversing - energy, not bending it's limbs too much, and not touching to many limbs to the ground
  • +
  • Reward: The agent is rewarded for moving to the right, keeping it's head above it's legs, and not bending it's limbs too much
  • Actions: The agent can power motors that rotate each limb within a certain range of motion
  • State: The agent can "see" most things about itself: each limb's relative position, global position, rotation, linear velocity, angular velocity, and orientation. Also each joints angle, speed, and motor @@ -100,11 +121,12 @@
    How does it work?
    This uses use reinforcement - learning to teach the agent to walk. - This is a branch of machine learning targeted at controlling systems over time such as systems of limbs or a + learning to teach the agent to walk. This is a branch of machine learning targeted at controlling systems over time such as systems of limbs or a self driving car. - The agent is defined in 2d with a certain strength and range of limb movement. Training is done offline in

    Training is done offline in
    tensorflow.js. The aglorithm is Deep Deterministic Policy Gradients with prioritized experince replay. The environment is in box2d for javascript and we use webpack to run the same code on the backend @@ -135,9 +157,15 @@ function init() { var canvas_id = 'main_screen2' window.game = new Game(config, canvas_id) - game.loadBrain('./checkpoints', 'model-ddpg-walker-22h/model') // load checkpoint - game.loadBrain('./checkpoints', 'model-ddpg-walker-60h/model') // load checkpoint - game.loadBrain('../outputs', 'model-ddpg-walker/model') // load latest + + var brainSelect=document.getElementById("brain-select") + brainSelect.value="60 hours" + brainSelect.onchange(brainSelect) + brainSelect.value="Latest" + brainSelect.onchange(brainSelect) + // game.loadBrain('./checkpoints', 'model-ddpg-walker-22h/model') // load checkpoint + // game.loadBrain('./checkpoints', 'model-ddpg-walker-60h/model') // load checkpoint + // game.loadBrain('../outputs', 'model-ddpg-walker/model') // load latest game.loop() chooseQoute()