In this thesis, I have looked at how to evolve locomotion in both predefined and undefined directions for a quadruped robot using a simulator, and developed a way to reduce the amount of different directions needed through a simple mirroring from one direction to its opposite. The goal is to evolve fast gaits in a multitude of directions. Gaits are evolved in simulation and the best in each direction are tested on a quadruped robot. The results show a high speed on the robot, with a 1.8 and 1.6 times improvement over 2 different algorithms. As well as a 1.75 times improvement in simulation over a previous implementation, with the robot tests coming out even. In the end, I have looked at how the differences between simulation and reality might be reduced.