In this paper a controller is developed for a synchronous machine using a hierarchical approach to model following. A linear model is defined which incorporates the desired response characteristics for the non-linear machine and the controller attempts to reduce the error between the system and model states while not utilising excessive control effort. This latter problem is solved by decomposition using an off-line two level structure where on level one two one point boundary value problems are solved whereas on level 2 a prediction algorithm is used. Simulation results show that the algorithm converages rapidly giving a control which reduces the error satisfactorily. The control calculation is very efficient in computer storage and takes less than half the computation time of the global optimal control calculation.