The generation component computes an English string corresponding to the meaning, which is passed to the speech synthesizer, completing the cycle. The linchpin of the system is the dialog manager component. It decides what to do or say next, based on what the user has said and on the current state of the system. If it can find flights that satisfy these goals, it will offer them to the user. If it cannot, it will search for nearest satisfiable subset of the goals, and offer them as a substitute.
Nearness is computed according to the relative importance of the goals relaxed.
The dialog manager operates according to a model that specifies the most suitable next action to take as a function of the most recent event and the current system state. The model is represented as a set of plans, each associated with a given goal-type, and is easily extended by plugging in new plans. This approach offers considerable advantages over more conventional state network approaches, including much greater flexibility in specification, and better support for mixed initiative. The new framework has more expressive power than conventional frames, yet is even simpler and computationally more effective. Added an inference rule mechanism to the system that allows it to deduce implicit requirements from the explicit requirements and preferences stated by the user.