Optimization And Learning Algorithms For Dynamic Locomotion Of Walking Robots