There is one Dispatcher for each car, whose main function is to calculate the target moving direction and destination for the car, as well as to maintain the opening time for the doors. The Dispatcher interacts with nearly all the control objects in the system except for LanternControl.