A controller for controlling a motion of a vehicle including a chassis connected by suspensions to wheels touching a surface supporting the motion of the vehicle, wherein the vehicle is equipped with a steering system for steering at least some of the wheels and a plurality of electric motors for rotating the wheels, the controller comprising: a processor; and a memory having instructions stored thereon that, when executed by the processor, cause the controller to: acquire motion information including a current state of the vehicle and a desired state of the vehicle, wherein a state of the vehicle defines at least one of a velocity of the vehicle, an acceleration of the vehicle, an orientation of the vehicle, and an orientation rate of the vehicle; determine a combination of a steering angle of the wheels and motor forces delivered on the surface supporting the motion of the vehicle by the plurality of electric motors, for moving the vehicle from the current state into the desired state by minimizing a cost function of a difference between the current state of the vehicle and the desired state of the vehicle over a future prediction horizon using a dynamical model of the motion of the vehicle to produce control signals for actuators of the vehicle that actuate the motors of the vehicle and the steering system of the vehicle, characterized in that the dynamical model of the motion of the vehicle includes a first model of the motion of the vehicle and a second model of the motion of the chassis of the vehicle connected such that a change to a state of the first model causes a change of a state of the second model while the change to the state of the first model is independent of the change to the state of the second model, wherein the cost function penalizes an increase of one or a combination of a roll, a pitch, and a lift of the vehicle caused by a change of state of the vehicle; and control the actuators of the steering system of the vehicle and the motors of the vehicle according to the control signals. acquire motion information including a current state of the vehicle and a desired state of the vehicle, wherein a state of the vehicle defines at least one of a velocity of the vehicle, an acceleration of the vehicle, an orientation of the vehicle, and an orientation rate of the vehicle; determine a combination of a steering angle of the wheels and motor forces delivered on the surface supporting the motion of the vehicle by the plurality of electric motors, for moving the vehicle from the current state into the desired state by minimizing a cost function of a difference between the current state of the vehicle and the desired state of the vehicle over a future prediction horizon using a dynamical model of the motion of the vehicle to produce control signals for actuators of the vehicle that actuate the motors of the vehicle and the steering system of the vehicle, characterized in that the dynamical model of the motion of the vehicle includes a first model of the motion of the vehicle and a second model of the motion of the chassis of the vehicle connected such that a change to a state of the first model causes a change of a state of the second model while the change to the state of the first model is independent of the change to the state of the second model, wherein the cost function penalizes an increase of one or a combination of a roll, a pitch, and a lift of the vehicle caused by a change of state of the vehicle; and control the actuators of the steering system of the vehicle and the motors of the vehicle according to the control signals.