Imperial College London


Faculty of EngineeringDepartment of Electrical and Electronic Engineering

Reader in Control Engineering and Optimization



+44 (0)20 7594 6343e.kerrigan Website




Miss Michelle Hammond +44 (0)20 7594 6281




1108cElectrical EngineeringSouth Kensington Campus






My main interest is the development of novel methods for (i) the design of optimization-based controllers and (ii) the optimization-based design of the overall closed-loop system.

  • Model predictive control (MPC): MPC is the most widely implemented advanced control technique in industry, because it allows one to deal with constraints and nonlinearities in a systematic and optimal manner. In MPC, a sequence of optimal control and estimation problems need to be solved in real-time; this requires orders of magnitude more computational resources than most other control methods. My unique expertise is the development of novel structure-exploiting numerical optimization methods and computer architectures for solving constrained and nonlinear optimal control and estimation problems in real-time.
  • Optimal cyber-physical co-design of controlled systems: If one includes the parameters of the computer and physical system as part of the design variables, then it is possible to achieve significantly better performance than by only considering the design of the controller. Mathematical optimization allows one to take a systematic approach to co-design in order to reduce design time and cost. My focus is on the development of novel multi-objective optimization methods for exploring how the parameters of an optimization-based control algorithm, computer architecture and physical design need to be traded off to satisfy performance specifications.


My theory and methods are supported by cross-disciplinary applications. The aim is to not only use control and optimization to develop new fundamental insights and open up possibilities in these application areas, but also to use these applications to motivate the development of novel control and optimization methods.

  • Information systems: Many fundamental problems in the scheduling of multi-processor computer and communication networks can be formulated as constrained, nonlinear optimal control problems. One can use this insight to develop control methods to solve problems that cannot be solved using existing approaches in the computing or communication literature. My current interest is the development of novel optimal control methods for jointly optimizing the computation, communication and propulsion of aerial robotic information-gathering networks.
  • Aerospace systems: The applications that I am interested in include the reduction of aerodynamic drag, gust load alleviation in wind turbine blades, small satellites and energy-harvesting autonomous gliders. These applications are used to motivate (i) efficient structure-exploiting optimization methods for MPC, (ii) the development of low-order physics-based and data-augmented models for control to reduce computational requirements during design and implementation and (iii) optimization methods for the co-design of the controller and physical parameters, such as aerofoil shape and the sizing and placement of energy sources, sensors and actuators.


ICLOCS: Solves nonlinear optimal control problems subject to constraints.

SPLITC code generation for Model Predictive Control based on operator splitting methods. SPLIT is capable of generating both software and hardware-oriented C code to allow quick prototyping of optimization algorithms on conventional CPUs and field-programmable gate arrays (FPGAs). See our paper for more details.

protoip: Quickly prototype C-based IP in FPGA hardware. This tool abstracts many specific low-level FPGA design details and shifts the main focus to algorithm coding and boosts productivity.

Optimal Co-design and Control of Cyber-Physical Systems

Cyber-physical systems (CPS) are composed of physical systems that affect computations, and vice versa, in a closed loop. By tightly integrating computing with physical systems one can design CPS that are smarter, cheaper, more reliable, efficient and environmentally friendly than systems based on physical design alone. Examples include modern automobiles, aircraft and trains, power systems, medical devices and manufacturing processes. CPS co-design

The key questions for CPS design are what, where, when and how accurate to measure, compute, communicate and store? My team is providing answers to these questions by developing control systems theory and mathematical optimization methods to automatically design the algorithms, computer architecture and physical system at the same time. This co-design process results in a better overall system compared to iterative methods, where sub-systems are independently designed and optimized.

The main technical challenge in CPS co-design is to merge abstractions from physics with computer science: the study of physical systems is based on differential equations, continuous mathematics and analogue data, whereas the study of computing systems is based on logical operations, discrete mathematics and digital data. Furthermore, while a computation is being carried out, time is ticking and the system continues to evolve according to the laws of physics. A designer therefore has to trade off system performance, robustness and physical resources against the timing and accuracy of measurements, communications, computations and model fidelity.

We are therefore developing methods to: (i) understand and exploit the hybrid and real-time nature of CPS, (ii) model and solve the non-smooth and uncertain mathematical optimization problems that result during the co-design process, and (iii) solve constrained, nonlinear optimization algorithms in real-time on embedded and distributed computing systems.

My talk on cyber-physical systems, hosted by the IET, is now available (audio starts at 1:05). See also the companion talk by Andy Chang from National Instruments with a further Q&A from both of us.

REAL-tIME Optimization and CONTROL of INFORMATION Systems

Computing systems may be composed of reliable and efficient components, but reliability of the overall system comes at the cost of large inefficiencies due to over-engineering. Information and Communication Technologies (ICT) are responsible for more than 10% of electricty consumption worldwide, a figure that is expected to grow to more than 14% by 2020. Though the GeSI SMARTer 2020 report claims that ICT-enabled solutions has the potential to reduce greenhouse gas emissions by 16.5% in 2020, there is clearly a need for computing systems to reduce their own contribution to these emissions. 

Every computing system today employs feedback in some form or other to guarantee a certain level of performance and reliability in the presence of uncertainty, such as unpredictable work-loads, delays, data losses, cyber attacks and component failures. Data, tasks and resources (such as processors, memory, storage and communication networks) need to be managed to balance loads, achieve a certain quality of service, guarantee that computations are correct and ensure that tasks are completed before deadlines. Feedback is also used to minimize power consumption by dynamic voltage and frequency scaling and smart scheduling of jobs. What is lacking, however, is a complete theory that allows computer engineers to understand how components interact with each other and what effect this has on overall system behavior. Feedback in Computing Systems

The aim of our research is therefore to develop new control theory and mathematical optimization methods for designing computing systems that are at least one order of magnitude more energy efficient, cheaper, faster, smaller and more reliable than today. Our work is currently focused on achieving this by developing: (i) efficient optimization-based algorithms for hard and soft real-time scheduling problems; (ii) scalable distributed scheduling algorithms based on recent methods in cooperative control theory; (iii) methods for modeling computing systems that capture the dynamics essential for feedback design using closed-loop, rather than open-loop metrics.

For an overview of some of the research questions that we are currently working on, see my paper on why Feedback and Time are Essential for the Optimal Control of Computing Systems.



BASF, ETH, IPCOS, KU Leuven, LMS International, National Instruments, Otto-von-Guericke-Universitaet Magdeburg, TU Dortmund, University Politehnica Bucharest, Universitaet Heidelberg, EC FP7, EMBOCON, 2010 - 2013

Mike Graham, Department of Aeronautics, Imperial College London

Rafael Palacios, Department of Aeronautics

Jonathan Morrison, Department of Aeronautics, Imperial College London

Keck-Voon Ling, NTU Singapore

Jan Maciejowski, University of Cambridge

Dr George Constantinides, Imperial College London

Guest Lectures

Plenary: Feedback and Time for Computer Design, Control and Optimisation UK, Oxford, 2016

Semi-plenary: Feedback and Time Are Essential for the Optimal Control of Computing Systems, 5th IFAC Conference on Nonlinear Model Predictive Control 2015 (NMPC'15), Seville, Spain, 2015

Number Representations for Embedding Optimization Algorithms in Cyber-Physical Systems, Invited talk, Workshop on the Control of Cyber-Physical Systems, UK, 2012

Number representation in predictive control, Semi-plenary, IFAC Conference on Nonlinear Model Predictive Control 2012 (NMPC'12), The Netherlands, 2012

Faster, Easier, Cheaper, Safer, Main talk, International Workshop on Assessment and Future Directions of Nonlinear Model Predictive Control, Italy, 2008

Research Student Supervision

Abraham,E, Control of wave energy systems

Ahmed,S, Satellite Attitude Estimation and Control using the Earth Magnetic Field

Couchman,I, Optimal control of fluid mixing

Faqir,O, Optimal design and control of networked cyber-physical systems

Feng,Z, Efficient optimization methods for the control of wave energy converters

Frederick,M, Load reduction using rapidly deployed trailing-edge flaps

Ge,M, Estimation and prediction of ocean waves

Goulart,P, Affine feedback policies for robust control with constraints

Hasan,A, Control Theoretic Analysis and Design of Numerical Algorithms

Jerez,J, MPC for Deeply Pipelined FPGA Implementation: Algorithms and Circuitry

Jones,B, Control of fluid flows and other systems governed by partial differential-algebraic equations

Khusainov,B, Co-design of FPGA implementations for model predictive control

Lopes,AR, Accelerating iterative methods for solving systems of linear equations

McInerney,I, Computer architectures for model predictive control

Ng,BF, Active aeroelastic design of large wind turbine blades for an increased fatigue life

Nie,Y, Model predictive control with applications to aircraft

Picciau,A, Concurrency and data locality for sparse linear algebra on modern processors

Shahzad,A, New optimization methods for predictive control

Tammawichai,M, Real-time scheduling of computing systems using control theory

Vemuri,H, Feedback control of Tollmien-Schlichting waves

Zhang,L, Optimal scheduling in sensor networks