mynkpl1998/upgraded-octo-lamp

simulator reaches terminal states if though no collision takes place.

Closed this issue · 3 comments

Configuration to reproduce the result.

Script : test.py

Sim Config

config:
  # Simulation Parameters
  t-period: 0.1 # in secs
  
 # IDM settings
   max-speed: 10 # in m/s
   local-view: 20 # in metres (one side)
   cextended-view: 20 # in metres (one side)
   reg-size: 5 # in metres
   cell-size: 1 # in metres

  # Reward Function
  collision-penalty: -10

  # UI settings
  render: true
  fps: 5

  # Set Mode
  mode: 'test'

  # Frame Skip
  frame-skip-value: 1

Cause of Issue : Doing do-nothing action after performing lane-change if (if conditions are valid).

How to Solve : Currently a single lane change results on in performing lane-change followed by do-nothing, instead just perform lane-change which keeps agent position and speed unchanged and only lane of the agent is changed if it is valid. Also, make sure lane change when agent speed is zero is not allowed.

This issue was fixed as in the manner described above. To verify the same use, this version of test.py

This file basically make sure for first 10 steps agent only accelerates so that agent speed is not 0.0, after tsteps > 10 it performs lane change and do-nothing only. Episode only if agent crashes into other vehicles.
If there are cars near ego vehicle agent will crash otherwise it should not crash.

Actually this error was cause due to incorrect implementation of checkValidAction, Issue #17 fixes this.