12.12.2012 Views

Who Needs Emotions? The Brain Meets the Robot

Who Needs Emotions? The Brain Meets the Robot

Who Needs Emotions? The Brain Meets the Robot

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

architectural basis of affect 235<br />

While this idea applies in principle to agents of all levels of complexity,<br />

in practice <strong>the</strong>re are limits to <strong>the</strong> approach, and <strong>the</strong> situation will already be<br />

very different for more complex agents. For one, implementing <strong>the</strong> control<br />

system as a finite-state controller will not work as <strong>the</strong> number of states of a<br />

complex agent (e.g., with thousands of condition–action rules involving<br />

complex representations) will likely be too large for <strong>the</strong> state table to fit into<br />

a standard computer. Hence, <strong>the</strong> control system needs to be implemented<br />

in a virtual machine that supports multiple finite-state machines with substates<br />

and connections among <strong>the</strong>m. In short, a complex architecture with<br />

complex states will have to be implemented in a virtual machine that supports<br />

<strong>the</strong> required complexity. While transitions are immediate in finite-state<br />

machines, many physical steps may be required for a complex virtual machine<br />

transition (like a computer updating a simulated neural net). Finitestate<br />

machines do not need alarm systems to interrupt normal processing in<br />

order to react to unforeseen events: <strong>the</strong>y simply transit into a state where<br />

<strong>the</strong>y deal with <strong>the</strong> circumstance. Complex systems with multiple finite-state<br />

machines with complex substates, however, need a way of coordinating state<br />

transitions (especially if <strong>the</strong>y have different lengths, might take different<br />

amounts of time, or might even occur asynchronously). In that case, special<br />

mechanisms need to be added to improve <strong>the</strong> reactivity of <strong>the</strong> system (i.e.,<br />

<strong>the</strong> time it takes to respond to critical environmental changes).<br />

Following this reasoning, one would expect to find something like alarm<br />

mechanisms in complex agents that need to react quickly in real time to<br />

unforeseen events. Such systems might lead to internal interactions instantiating<br />

emotional states as defined above which <strong>the</strong> designers did not intend<br />

(e.g., an operating system with a mechanism that terminates processes or<br />

limits and reallocates resources in response to an overload might delete processes<br />

urgently required for some subtask).<br />

Returning to <strong>the</strong> question of whe<strong>the</strong>r robots need or should have emotions,<br />

<strong>the</strong> answer will depend on <strong>the</strong> task and environment for which <strong>the</strong> robot<br />

is intended. This niche, or set of requirements to be satisfied, will in turn determine<br />

a range of architectures able to satisfy <strong>the</strong> requirements. <strong>The</strong> architectures<br />

will <strong>the</strong>n determine <strong>the</strong> sorts of emotions that are possible (or desirable)<br />

for <strong>the</strong> robot. Here are some examples of questions designers may ask:<br />

Will <strong>the</strong> robot be purely for entertainment?<br />

Will it have a routine practical task, for example, on a factory<br />

floor or in <strong>the</strong> home (cleaning carpets)?<br />

Will it have to undertake dangerous tasks in a dynamic and<br />

unpredictable environment (as in <strong>the</strong> Robocup Rescue project)?<br />

Will it have to cooperate with o<strong>the</strong>r agents (robots and humans/<br />

animals)?

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!