Real-time evolutionary model predictive control using a graphics processing unit


Graphics processing units, Trajectory, Optimization, Real-time systems, Robustness, Humanoid robots


With humanoid robots becoming more complex and operating in un-modeled or human environments, there is a growing need for control methods that are scalable and robust, while still maintaining compliance for safety reasons. Model Predictive Control (MPC) is an optimal control method which has proven robust to modeling error and disturbances. However, it can be difficult to implement for high degree of freedom (DoF) systems due to the optimization problem that must be solved. While evolutionary algorithms have proven effective for complex large-scale optimization problems, they have not been formulated to find solutions quickly enough for use with MPC. This work details the implementation of a parallelized evolutionary MPC (EMPC) algorithm which is able to run in real-time through the use of a Graphics Processing Unit (GPU). This parallelization is accomplished by simulating candidate control input trajectories in parallel on the GPU. We show that this framework is more flexible in terms of cost function definition than traditional MPC and that it shows promise for finding solutions for high DoF systems.

Document Type

Peer-Reviewed Article

Publication Date


Permanent URL






Ira A. Fulton College of Engineering and Technology


Mechanical Engineering

University Standing at Time of Publication

Assistant Professor