The control is organized in a hierarchical structure according to the different decisions that take place at the different time scales at which each level operates, from a few days to milliseconds. At each level down the hierarchy, the details of the decision and communication rate increase. The real-time status of the system is taken into account at each level. The highest level gets short-term management production requirements and the lowest level issues commands to the direct machine controllers. Each level issues target commands to the level below it and gets performance feedback. The overall control aims to optimize FMS performance while meeting the production requirements.