Giter Club home page Giter Club logo

car_rf_game's Introduction

Car Reinforcement Learning Game

Changes done

  • Flag introduced for understanding of the destination
  • Introduced randomness in the angle decision instead of pure dependence on the model for new areas
  • Angle change when stuck at edges to get out of that
    • Introduced randomness in this as well for the same
  • Changed the map end calculations - Was incorrect due to the overall area aspect
  • Changed the Dqn to have an additional FF layer
  • Changed the input to have an angle instead of 2 orientations as another input
  • Changed the Reward calculation using 4 parameters
    • locReward: Location Reward - Directly based on car location. Will be from +1 to -1 based on car sand location which is from 0 to 1 where full sand is 1. Weightage of 0.4.
      • Based on if the location is sand vs not this is calculated and is important to ensure car is driving on the designated road
    • dirReward: Is 1 or -1 based on if the distance is increasing or decreasing from the last distance with weightage of 0.4
      • This is important to ensure that car is moving toward the target
    • distReward: Distance Reward - Based on the distance from the destination. Increasing as distance reduces. Weightage of 0.2.
      • This is important to ensure the distance is reducing - though weightage is slightly low as direction is more important
      • TBD: Try with some function of the distance for this like log or something else
    • edgeReward: Is set to -1 when the car is close to the edge with a weightage of 1.0
      • Given one of the highest negative rewards to avoid getting stuck in this position

Reward thought process

  • Reward should increase with the reduction in the distance (function of distance) - Medium weight distance divided by the total area of the map is the distance function
  • Reward should depend on the direction of movement that can be the difference in between current and last distance and probably even the velocity that would cover the road picked up - Medium weight
  • Reward to be dependent on the Sand vs Road aspect as well - Highest weight

Signal thought process

  • Signal should be able to clearly give some direction to where the road is
  • Reduced the signal to 2 for end of the road from current 10

Details of the concepts

  • What happens when "boundary-signal" is weak when compared to the last reward?
    • The car get stuck at the boundary and is not able to get out of that location
    • Also it does not move away from the boundary
  • What happens when Temperature is reduced?
    • Temperature helps in the model being more creative and being able to explore new routes
    • Introduced this in the code and found this missing in the earlier one
  • What is the effect of reducing (gamma)?
    • Based on the formula Gamma helps focus on the future events and not only the current one
    • After Gamma reduction I saw that the model was not able to converge and the car kept moving around the same location
    • Higher Gamma helps to ensure the future rewards are also important and not only the current one for the convergence

Outputs can be viewed at

car_rf_game's People

Contributors

chintanshahds avatar

Watchers

Kostas Georgiou avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.