6. A method for performing interaction between a user and a machine, comprising the steps of: recognizing a speech of the user from a signal detected by a microphone; delivering the speech of the user to a plurality of domains corresponding to multiple phases of the interaction; understanding content of the speech in each of the plurality of domains and outputting a speech understanding result; receiving the speech understanding results respectively from the plurality of domains; selecting, as a relevant domain, the domain that produced an optimum speech understanding result out of the plurality of speech understanding results; referring to a task knowledge of the relevant domain out of task knowledges included in the respective multiple domains, and extracting a task associated with the speech understanding result; referring to a subtask knowledge including a plurality of subtasks associated with the kind of task, and determining a sequence of subtasks associated with the extracted task; determining a first subtask of the sequence of subtasks as a relevant subtask and updating, as the relevant domain, the domain to which the relevant subtask belongs; referring to an action knowledge of the relevant domain out of action knowledges included in the respective multiple domains, and extracting a subtask completion flag or an action associated with the speech understanding result and the subtask; and causing the machine to execute the extracted action.
10. The method according to claim 6 , wherein the updating step includes the step of, when the subtask completion flag is extracted in the step of extracting an action or the subtask completion flag, updating a subsequent subtask of the relevant subtask in the sequence of subtasks as another relevant subtask and updating, as the relevant domain, the domain to which the another relevant subtask belongs.