This benchmark aims at developing a computer program that controls a humanoid robot to walk as far as possible given a limited battery life. The programming language is Python and the humanoid robot model is a ROBOTIS OP2 robot.

The environment is a scale model based on the robot size.

battery = 2375.34 J

distance = 0.00 m

The benchmark metric is the distance traveled by the robot.

The distance is the the difference between the initial and final position of the robot on the world's x-axis that is parallel to the street.

If the robot falls down or tries to go on all fours, the benchmark finishes immediately.

How to make the ROBOTIS OP2 cover a bigger distance?

If you look at the Python program controlling the ROBOTIS OP2 robot, you will see that this program uses the RobotisOp2GaitManager to make the robot walk:


  # At the beginning, start walking on the spot.
  # After 45 timesteps, begin taking steps forward.
  while robot.step(timestep) != -1:
      if looptimes == 45:
          gaitManager.setXAmplitude(gaitAmplitude)

      gaitManager.step(basicTimeStep)
      looptimes += 1
        

The parameters of the gait manager are customizable and it is possible to find a setup that produces better performance. For example, tuning the gait amplitude or disabling the balance functionality makes the robot cover a bigger distance.