Evolution of locomotion gait for Quadrupeds
Legged robots can traverse uneven surfaces much efficiently than wheeled robots but it is very difficult to manually develop a gait that will allow these robots to walk properly. Algorithms inspired from natural evolution can be used to develop a walking gait and much like real evolution, that gait
2025-06-28 16:32:28 - Adil Khan
Evolution of locomotion gait for Quadrupeds
Project Area of Specialization Artificial IntelligenceProject SummaryLegged robots can traverse uneven surfaces much efficiently than wheeled robots but it is very difficult to manually develop a gait that will allow these robots to walk properly. Algorithms inspired from natural evolution can be used to develop a walking gait and much like real evolution, that gait can be improved over time. The robot learns to walk without any significant help from the human programmer. Evolved gaits have been used before as well, however the implementation was either entirely done on a hardware device, which consumed a lot of time or in a simulation environment that produced unrealistic results. This project attempts to develop walking gaits in simulation and then fine tunes them in hardware to remove the unrealistic movements. It is not entirely possible to make a walking gait that is the same in both simulation and reality. The gait can be similar, but it can never be the same. The project also attempts to create a robot that will adapt to new situations, map its surroundings and allow the robot to adapt to new structures if its limbs are lost.
Project ObjectivesThis project deals with developing gaits for quadrupedal robots using evolutionaryu algorithms. The gaits developed require little to no human intervention and hence the entire process of gait development is automated and unsupervised. The gaits will initailly be developed on a physics engine to save time. At the end of the simulation run, the best gait will be implemented on a hardware robot. The gait will not be perfect because there exists a reality gap between the simulation and reality. The gait will then be further improved on the hardware robot, hence the approach used is of co-evolution.
The gaits will be developed for a 8 degrees of freedom robot. The effect of different artefacts observed in quadrupedal creatures in nature will also be tested on the robot. These include:
- Symmetry of diagonal joints.
- Symmetry of adjacent joints.
- Reverse symmetry of diagonal joints.
- reverse symmetry of adjacent joints.
The project will also attempt to quantify the reality gap.
Developing a vision for the robot that allows it to map and localize its surroundings. The mapped surroudings will then be used to make a 3D model of the scene the robot is in and the robot will attempt to traverse through it by first evolving a controller in simulation. The best controller will then be automatically implemented on the physical robot allowing it to pass the obstacles.
Project Implementation MethodThe project consists of two parts, simulation and physical test namely.
Simulation:
In the simulation part a quadrupedal robot structure will be created in a physics engine called Open Dynamics Engine. The robot will be controlled by a fully connected neural network that will take inputs from the robot joints and then output the the joints need to move to, to the joint motors. The neural network will be connected together by a matrix of weights. The robot gait will be developed using a genetic algoright. A population of robots will be set up, each robot will have a random weight matrix. The simulation will be run once and the neural network will allow the robot joints to move randomly. Out of all the random movements through out the population a single robot will outperform all the other robots. This individual will be selected and it's weight matrix will be copied, all the other inidviuals will be deleted, the best performing robot will be the parent and the other robots in the population will be copies of the parent. The children will be mutated slightly by changing a single weight in the matrix. This will ensure a slightly different behavior from the parent. This generation of robots will be evaluated and the best performing robot will become the parent of the next generation. This process will continue for 200 generations after which the best performing robot will be selected and the weight matrix will be transfered to a hardware robot.
Hardware:
The hardware robot is similar to the simulated robot structure. The joints are actuated using mg995 servos. The control signals are sent to the servos using an Arduino uno board which is connected to a PC via serial connection. The neural network will be run by a python script, the output to the joints will be sent to the arduino and the robot will be actuated. The robot will be placed in a room with a fixed camera, the camera will track the position of the robot for a fixed ammount of time and then after that the distance travelled by the physical robot and the software robot will be compared. The physical robot will evolve the robot controller further making it more robust and hence more usable in real world.
The gaits will be simulated for a robot with adjacent and diagonal joint symmetry and reverse symmetry to mimic animals in nature.
Once the gaits are implemented a vision will be developed for the robot that will allow it to take pictures using a stereoscopic camera. A 3D map will be created from the stereoscopic camera and the robot will traverse that 3D map in simulation and develop an effecient gait that will be implemented in hardware robot automatically. The robot will also be able to detect if one of its limbs is not functioning properly and hence even if the robot loses a limb, it will be able to develop a new gait for its modified morphology.
Benefits of the ProjectThe robot will benefit every situation in which autonomous robots are required. Once such example could be a collapsed buidling that is too risky for humans to explore. Autonomous robots that are capable of adapting to new situations become very useful. The conditions inside such a building are very random and it cannot be predicted what kind of terrain the robot will face, hence a system that will allow the robot to learn how to traverse such areas on the go becomes very useful.
Space exploration uses wheeled rovers that are a result of years of hardwork and engineering and millions of dollars spent. However, the robots that are developed are wheeled and have a controller that does not employ any artificial intelligence. If such a robot starts facing new probelems it will not be able to overcome them. Even if the tyres of the rover are stuck in soil it will stay there until dust settles on its solar panels and eventaully the robot will power down forever and millions of dollars will be lost. If a legged robot is used, it will be more suited for such environments and there will be less chance of getting stuck. The ability to learn from the surroundings will allow the robot to learn to traverse even the worst of terrains. The robot will also be able to get out of situations where it will get stuck or even lose a limb.
Technical Details of Final DeliverableThe final project will have a system that will be able to learn new walking gaits based on the environment it is in. The physcial robot will have mg995 servos as joints and the servos will be controlled by an arduino board. The board will recieve data from a python script which will run a neural network. The neural network will output angles between -60 and 60 degrees. These are the degrees of the freedom allowed for each of the 8 joints. The robot will translate these movements from 30 to 150 degrees. The robot will get the output of the neural network which are angles that the joins need to be at. The robot will move to these angles. The robot will keep moving until the program is terminated. The robot will also be able to sense if one of its joints is not working properly or if it is damaged. In that case the robot will learn to work around it and evolve a new gait for its new structure.
Final Deliverable of the Project HW/SW integrated systemType of Industry Education , Others Technologies Artificial Intelligence(AI), RoboticsSustainable Development Goals Quality Education, Industry, Innovation and InfrastructureRequired Resources| Item Name | Type | No. of Units | Per Unit Cost (in Rs) | Total (in Rs) |
|---|---|---|---|---|
| Total in (Rs) | 13220 | |||
| Servo Motors | Equipment | 14 | 550 | 7700 |
| 9g Servos | Equipment | 10 | 250 | 2500 |
| Servo controller boards | Equipment | 2 | 400 | 800 |
| Arduino Boards | Equipment | 4 | 400 | 1600 |
| Screws | Miscellaneous | 50 | 3 | 150 |
| PCB pillars | Miscellaneous | 50 | 3 | 150 |
| Wires | Miscellaneous | 4 | 80 | 320 |