10. A voice-based method for controlling an unmanned vehicle (UV) or robot, comprising the step of: (i) providing a list of possible commands that result in an action that the UV or robot can execute from any current possible operating state; (ii) preparing a finite state machine (FSM) that includes (a) a set of current possible operating states of the UV or robot, (b) a set of possible actions that the UV or robot can perform from each state in the set of current possible operating states, (c) a set of resulting possible operating states of the UV or robot resulting from each possible action of the set of possible actions performed from each state in the set of current possible operating states, and (d) one or more context variables associated with the UV or robot; (iii) providing a set of system and operating rules and logic; (iv) retrieving a present state and one or more present context variables from the UV or robot; (v) generating a list of feasible commands to which the UV or robot can respond, by employing the FSM, the present state and one or more present context variables, and the set of system and operating rules and logic; (vi) acquiring a human voice command from a human user; (vii) generating an accepted voice command that consists of one of the listed feasible commands, comprising at least one of: (a) generating an accepted voice command from the human voice command using automatic speech recognition (ASR) and a language model comprising the list of feasible commands, the accepted voice command consisting of one of the listed feasible commands; and (b) (i) generating a recognized voice command from the human voice command using automatic speech recognition (ASR) and a language model comprising the list of possible commands, the recognized voice command consisting of one of the possible commands, and (ii) accepting the recognized voice command as an accepted voice command when the recognized voice command is one of the feasible commands; (viii) identifying an action that the UV or robot will execute based on the accepted recognized voice command; (ix) sending a machine command to the UV or robot that effects the action that the UV or robot will execute; and (x) repeating steps (iv) through (x).
10. A voice-based method for controlling an unmanned vehicle (UV) or robot, comprising the step of: (i) providing a list of possible commands that result in an action that the UV or robot can execute from any current possible operating state; (ii) preparing a finite state machine (FSM) that includes (a) a set of current possible operating states of the UV or robot, (b) a set of possible actions that the UV or robot can perform from each state in the set of current possible operating states, (c) a set of resulting possible operating states of the UV or robot resulting from each possible action of the set of possible actions performed from each state in the set of current possible operating states, and (d) one or more context variables associated with the UV or robot; (iii) providing a set of system and operating rules and logic; (iv) retrieving a present state and one or more present context variables from the UV or robot; (v) generating a list of feasible commands to which the UV or robot can respond, by employing the FSM, the present state and one or more present context variables, and the set of system and operating rules and logic; (vi) acquiring a human voice command from a human user; (vii) generating an accepted voice command that consists of one of the listed feasible commands, comprising at least one of: (a) generating an accepted voice command from the human voice command using automatic speech recognition (ASR) and a language model comprising the list of feasible commands, the accepted voice command consisting of one of the listed feasible commands; and (b) (i) generating a recognized voice command from the human voice command using automatic speech recognition (ASR) and a language model comprising the list of possible commands, the recognized voice command consisting of one of the possible commands, and (ii) accepting the recognized voice command as an accepted voice command when the recognized voice command is one of the feasible commands; (viii) identifying an action that the UV or robot will execute based on the accepted recognized voice command; (ix) sending a machine command to the UV or robot that effects the action that the UV or robot will execute; and (x) repeating steps (iv) through (x). 12. The method according to claim 10 wherein the step (vii.b.i) of generating a recognized voice command comprises generating an untested recognized voice command and a confidence measure, and accepting the untested recognized voice command as the recognized voice command when the confidence measure is a high confidence score.