Title: Quantum mechanical model of emotional robot behaviors M. Lukac and M. Perkowski
1Quantum mechanical model of emotional robot
behaviorsM. Lukac and M. Perkowski
2Overview
- Motivation
- Why Emotional Robots?
- Emotional Models for Humanoid Robots
- Architecture of Cynthea
- Quantum Robotic Emotions
- CRL Language
- Quantum Command Rewriting
3Emotional Humanoid Robots
4Disclaimer Definition of Emotion
- We use, among other concepts, the quantum
concepts to define and use emotions - In our model emotions are formally defined, you
can think about them as quantum states or quantum
operators. - Then, in this work there is no implication that
our emotions are related to human emotions - other than that we want to emulate human behavior
by a humanoid robot.
So what are robotic emotions?
5First View Emotion as synthesized behavior
Serchuk et al (2006) discuss emotion as mapping
from internal state to observable output
behavior. We want to design these mappings well,
so that they wil be similar to humans
Physical variables positions, speeds,
accelerations, words,
Emotional state state of all emotion variables
6Wheel of emotions
Active - Passive
Positive - Negative
Internal representation of emotions by vectors in
multi-dimensional space
Mapping from internal to external representation
of emotions
7Second View Emotion as emergent, evolvable
behavior
- Here emotion is an emergent behavior that
arises from sensors, drives, effectors and logic. - This may look like human, animal behavior but
also as an entirely new other world behavior,
behavior as it may be.
Degrees of freedom
Sensors, vision and fusion features and
patterns
Evolved emotional behavior of robot
Drives and effectors
Main input-output mapping (perception, internal
state, behavior)
Precise motion generation (behavior)
8Human Emotions Perceived by Robot
- Robot perceives emotions of a human
- Emotional aspect of speech
- Text from speech recognition
- (I hate you example)
- Facial gestures
- Body language and hand upper body gestures.
- Camera with software
- Microphones with speech recognition/speech
analysis system
You do not need robot, this may be done by laptop
with microphone and camera.
9Robot perceives human mood
- From top to bottom, the continua
shown in each row
are - happiness (H) - surprise (U)
- surprise (U) - fear (F)
- fear (F) - sadness (S)
- sadness (S) - disgust (D)
- disgust (D) - anger (A)
- and anger (A) - happiness (H)
10Why we need Robot-Generated Emotions?
- Robot presents its emotions to a human
- Why we need it?
- Robot who helps elderly
- Assistive robot for disabled
- Robot that works with mentally challenged
children (autism, Asperger Syndrome, ADD), - Robot receptionist
- Robot barman
- Robot astronaut helper
- Robot museum guide
- Robot theatre (mostly in interactive theatres)
- Imitation of human emotions
- Interaction with human based on emotion
- Improvisation of theatrical plays, texts, stories
- Interpretation of human behavior in psychological
terms, negotiation and cheating
11Emotions in Humanoid Robots
- Humanoid Robotics focuses on communication with
humans that includes - Behavioral changes and emotional expressions,
- Emotional alterations of text-to-speech,
- Facial mimics and gestures,
- Overall body language (posture) and hand upper
body gestures (hands, neck). - Member postures and movements
12Symmetry of emotion transmission
Robot reconstructs Human emotion
Human emotion
Robot perceives Human behavior
Human behavior
Robot creates its emotion
Human perceives robot behavior and emotion
Robot expresses its behavior
Emotions as emergent behaviors
Emotions as learned behaviors
Two aspects two approaches
13Traditional and modern theories of emotion
- Observable (traditional) emotions emotional
behaviors, moods, content changes (speech
variations, etc) - Modern Hypothesis emotions and feelings are
influencing decision making, problem solving,
memory efficiency and so on.
14Two level representation of the
Cognitive-Emotional robot Structure
Flow of emotions
Flow of actions
15Emotional Parameters for control in Cynthea Robot
Device Parameters
Other
This slide shows which parameters are affected by
which input and output devices
16Quantum Mechanics to model emotions
17Quantum Hierarchical Model of Emotions
- Because the concept of emotional expression can
be extended to a functional model emotional
expression affects the robot functioning. - Here the concept of QFSM is extended to a
Quantum Cellular Automata based on the quantum
emotional state machine -
- The quantum string rewriting is extended to a
complete robot hierarchy rewriting schema
18Quantum Mechanics to Model Emotions
- The problem being considered here is the
synthesis of logic controller allowing the robot
to modify its actions and express unique
emotional states - The emotional expression is desired to be
compelling the human user to communicate with the
robot, - the behaviors should be original and
non-repeating - Standard classical approaches can be compared to
an FSM approach - the robot action space (behavioral space) is a
finite set of states that the robot learns or
just uses in a input driven mapping
19Simulating emotions for practical applications
- Simulating emotions as only observable behaviors
is not sufficient to make emotional robots - Definition Emotional State Machine is a model of
FSM that can modify its state and output
independently of the content of the input, but
based solely on its current state. - Definition Robotic Emotions are simulated
emotional states allowing the robot to perform a
given action in a way that satisfies it current
emotional state. - We propose a emotional model as computational
process distributed across the robot software
controller allowing to use emotions to modify all
robot actions
20Definition of Emotion
- Emotion is the result of measurements of a hybrid
classical/quantum system - In terms of quantum mechanics, emotions are
represented by quantum states that we (observe)
know only after measurement, - but we can operate on them deterministically in
the Hilbert space. - Emotional evolution is represented by quantum
operator (unitary and non-unitary, including the
measurement)
21The Quantum Emotion Robotics Project
- Quantum Emotional Robots
- (see two papers ULSI, two papers ISMVL, two
papers RM 2007) - Emotional state machine
- CRL rewriting
- Hierarchical robot structure
- Hierarchical string rewriting
- Quantum Cellular Automata (ULSI)
- Learning (RM, ULSI 2005, ULSI 2006)
- Search (Grover) ULSI 2007.
22Concept Emotional Quantum State Machine
- Design a machine that will simulate the
articulation of human social behavior - Subjective
- Non repetitive
- Innovative
- But still
- Socially acceptable or not
- Behaviorally understandable
- Safe (the framework of this behavior is purely
virtual no contact)
23Emotional Model
Robot controller
Robot actuators
Robot sensors
Formal Language
- Each element in the robot is represented as
Quantum Emotional State Machine (EQSM), such that
on each level of robot control hierarchy the
emotions can influence both the visible
(perceptible) and the non-visible robot processes
24Emotional Model
- Energy simulated energy representing the
emotional state of the robot
Emotional State
Energy
- Strategy the translation function mapping the
emotional state to a state parameters, (function
dependent)
Emotional State
State Parameters
- The input command - represents the robot command
such as one obtained from a sensor (user input,
other robot), specified in the CRL language
- The emotional parameters translated to particular
variables, are used to modify the global state of
the robot and also the local function (Command
rewriting)
Emotional Parameters
State of the robot
25Schematic representation of the Emotional
Cognitive Module
The emotional recognizer affects the decision or
cognitive process from the orthogonal point of
view. The data flowing through the decision
process (left to right) are processes altered by
emotions. This can be seen as the Behavioral
Level on every level of the functional
processing.
26Emotion processing robotic unit
- Emotional units do not have inputs from the
environment so they are not controllable directly - They are mysterious (quantum) units that
autonomously evolve states from states.
Emotional Unit
27Every module has internal feedback which allows
to generate spontaneous actions (dreaming, being
bored, generating spontanous actions to use new
energies)This feedback comes from emotions
- Information Processing Unit with Feedback
Information Processing Unit
28Schematic of Cynthea Emotional Model
- The external loop represents the robot
interaction with the environment - The internal loop represents the robots
self-interactive loop.
29Four Scenarios to improve the Emotional State
- The four different scenarios represents the
improvement on the robot emotional state with
respect to - 1. Completely following the command (execute as
received), - 2. Alter the description of the command but
preserve the goal - (rewrite the command so as the initial and final
actions generate the desired action as specified
by the input - 3. Alter the final state of the command but keep
the command almost unchanged on the language
level - 4. Alter the whole command so as both goal and
the path are changed
30Architecture of Cynthea
31Cynthea, the Hierarchical robotic model
Emotional Subsumption architecture of the Cynthea
head
32Introduction Definition of Emotion
- Known Emotion is the result of measurements of a
hybrid classical/quantum system - Hidden Emotion is the quantum state of a quantum
system, called emotional system - In terms of quantum mechanics, emotions are
represented by quantum states that we observe
(i.e. know) only after measurement - Since emotions are quantum states, we can
operate on them deterministically in the Hilbert
space. - Emotional evolution is represented by quantum
operator (unitary and non-unitary, including the
measurement)
33The components of our robot model
The sensor side of the robot
34The components of our robot model
The actuator side of the robot Cynthea
35Energy and Strategy to change emotional state
36Modular view of the general robot architecture
Emotional state is a Kronecker matrix product
(Tensor Product) of all emotional states in the
hierarchy of modules. The construction of the
emotions (as observed by the user) is made by
observing global states of all emotional elements
of the robot.
37Energy Model in Our Approach
- Robot wants to be in Zen state by maximizing
its internal energy - But the external world, or its own emotional
modules of lower level push it away from the
optimum - Robot tries to control itself to return to the
Zen state. - but cannot do this because of the permanently
changing dynamic system of its subsystems and
environment. - The model is based in two planes Energy and
Strategy. - Energy represent the 'energy' of the system.
- Strategy are methods allowing the energy to
modify the robot actions
38Energy Model in Our Approach
- This model ows to many models introduced by
early cyberneticists and especially polish
scientist Marian Mazur. - But introduction of concepts of classical
automata, machine learning and quantum computing
is original.
39Emotional Mapping in the Emotional State Space
Happiness
The energy level maps onto four basic emotions
Anger, Happiness, Melancholy, Depression
The circles are the energy level map. Emotional
States can be represented as energy states
modulated by two-dimensional Fear/Contentness
The x-axis represents dS/dx and the y-axis is
dS/d?
Contentness
The strategy level is mapped onto two input
dependent emotional states Fear and contentness
Emotional Mapping in the Strategy State Space
40Emotional Cognitive Module
Happiness
Melancholy
Anger
Depression
- All four emotions coexist at the same time in
every agent - The strongest has the most important impact on
the general behavior
41Emotional State Machine
Deterministic classical physics/compute science
world (Turing compatible)
Measurement of the machine state
Quantum memory
Emotional evolution (operator)
Quantum (Hilbert Space) (Quantum Turing Machine
Compatible)
42One Emotional Machine in the hierarchy
- The top part (composed of the F block -
transition function - and part of the memory
register called state) represents the logic
function used to interact with the environment
and it commands robots autonomous behaviors. - The bottom part including block Fe (emotion
transition function and part of register states)
is the emotional part not connected to the
environment directly.
43There are many state machines in every robot
From Finite State Machines to Emotional State
Machines
From Quantum Automata to Emotional Quantum
Automata
44Emotional Model
Schematic Diagram of the Emotional Machine
operation on single level
Energy (t1) estimate
Energy
Emotional State
Strategy
Emotional state (t1)
emotions
Rational behaviors
Robot State
Action
- The input command and the robot state are
represented as energy changes, changing the
emotional state. - This induces modification of the strategy and
alters the emotional parameters changing robot
action.
Input command
- Emotional component is designed as non-observable
robot processes (implemented as quantum part in
EQSM)
45Emotional model
- The emotional state space is a mapping of the
robot state and input command to the energy
function. - In other words the emotional mapping is
estimating the optimal modification of the input
command with respect to the goal (the input
command) and with respect to the language
allowing variations (rewriting) of this command
The estimate of the cost of the execution of the
command in language ?, this means the various
ways how to describe the action in this language
The estimate of the cost of the execution of the
input command
The problem can be reformulated with respect to
machine learning concepts of exploration and
exploitation.
Path Exploration Goal Exploitation
Path Exploration Goal Exploration
Path Exploitation Goal Exploration
Path Exploitation Goal Exploitation
46Example of Quantum State Machine with Entangled
Outputs
sensors
states
- A quantum behavior is specified in this case by
measurement dependent manner. -
- Because of entanglement the measurement of a
single output value will collapse the other. - The locality paradox of measurement determines
the final global state or behavior.
47Emotional control lazy
Encoded change of strategy
Encoded change of energy
- This is a combinational function representing the
mood - No delay here , but our model takes delay into
account
48Language Actions for Emotional control easy fear
This represents change of Strategy
R repeat command M modify command I
identity D delete command
00
00
r,m,i
r,m, i
r,m,d
01
11
m,d
01
10
m,d
m,d
11
11
r,m,d
r,m,d
Columns 3 and 4 represent the language actions on
the input string command.
Assume two word language, such as all
possibilities are shown as min-terms under
, and the emotional state is represented as the
state variable c
Behavior called easy fear the robot does change
the input string in all but in the case.
The robot is easily forced to do some emotional
changes (columns 1 and 2)
49Energy changes as a function of actions executed
on the language (hierarchical)
The strategy changes to the language are
represented by four allowable operations.
Rules specifying the language operations
(Identity, Repeat, modify and Delete) and their
representation in the energy changes.
Like everything in our model, rewriting can be
deterministic, probabilistic or quantum
(entangled)
50Goal and Language Effect
- The model is built up around notion of language
specifying commands to the robot. Emotions,
rewrite this language and thus inserts changes in
the robot actions. - The language allows to explore environment by
reformulating commands or inputs. - The language introduces two concepts goal and
path. - The goal is the final state of the robot after a
given command has been executed. - The path is the sequence of commands the robot
processed in order to achieve the final state.
51Emotional States/Moods
Robot energy is lower than optimum
Trend is based on inputs
Change of Emotional States as function of Energy
level, energy gradient and trend
Change of energy over time
52Common Robotic Language (CRL)
53CRL
- Common robotic language (CRL)
- XML based
- Hierarchical functional description of the robot
- CRL represents the structure of the robot as well
as the data flow - Robot is described as a hierarchy of modules
- Each module is described by the level at which it
is in the hierarchy - i.e. the language that it accepts.
- (module head will accept different alphabet than
module speech synthesizer) - the robot is a hierarchy of FSMs that
communicate with CRL
54From CRL scripts to Emotional Behaviors
ltrobotgtltmouthgtltspeechgt Hello lt/speechgtlt/mouthgtlt/ro
botgt
Robot speaks Hello
ltrobotgtlteyesgtltmovegt 10 35 lt/movegtlt/eyesgtlt/robotgt
Robot eyes move to 10 35
- CRL rewriting rules
- Identity, modify, replicate, delete
- Question is how to apply rules in order to
above defined requirements for social behavior
55Hierarchy of the Emotional Robot Language
description
- The robot is a set of functional modules,
organized in a hierarchical tree that can be also
observed in the structure of the control language
of the robot.
Input Command
robot
neck
eyes
mouth
eyebrows
Robot Components
move, open close, etc
move, open close, etc
move, open close, etc
move, open close, etc
Components commands
10 45 43
10 45 43
10 45 43
10 45 43
Components Hardware
Command Execution
56Code 1 AIML dialog as a part of CRL
57Code 2 AIML example demonstrating use of
recursion in dialog
AIML to behavior, not only AIML input text to
output text Robot can convert music to servo
control directly, whether it has meaning or not
But there is servo protection from
self-destruction.
58Code 3 AIML dialog using the so-called final
definition
Final definition means that the string is
protected from further rewriting
59Code 4 AIML Input reduction preprocessing of
speech recognition
can be any string
60Code 5 CRL for robot smiling hierarchy maximum
depth is four
Hierarchy can be used to generate a variety of
smiles corresponding to emotions, text and
environment
61Code 6 CRL example with synchronization and
other features
Motion generation
synchronization
waiting
speech
62Code 7 Multi-robot script in CRL demonstrating
two robots starting to act simultaneously
First robot
Second robot
63Code 8 How to define a robot with new physical
structure define ranges of devices and macros
Motion restriction for safety and physical
characteristics
Motion restriction for emotion representation
64Code 9 Structure of hierarchical descriptions in
CRL
General structure of Robot Descriptions in CRL
65CRLand Term Rewriting
66How Emotional Quantum SM processes strings?
- Input CRL word
- Mark it with appropriate state marker of energy
- (represent the new state of the robot
statecommand as energy) - Modify the emotional state and conditionally flip
the data bit - Use the current phase to alter the
control/classical state of the Machine - Use the control state to alter the language on
the local level - Measure / Observe the language and the Classical
state.
67Example of Deterministic Rewriting
Language objects that changes eye-related
behaviour to mouth-related behaviour
68Generalizing the eye command to eye-mouth
repeated command
69Transformations Models in Our Approach
- Multi-level rewriting of eye command to mouth
command where the command changes too but the
command parameters (like speed or position or
acceleration) do not change
70Example of hierarchical rewriting
Initial command ltrobotgtlteyesgtltmovegt10 45
lt/movegtlt/eyesgtlt/robotgt
At each level apply the emotional transforms
Level robot
I, M, R, D
robot
lteyesgtltspeedgt10 45 lt/movegtlt/speedgt or ltneckgtlt
movegt10 45 lt/movegtlt/neckgt or ltneckgtltmovegt80
3 lt/movegtlt/neckgt ltneckgtltmovegt10 45 lt/movegtlt/neckgt
eyes
move
10 45
71Example of hierarchical rewriting
ltspeedgt10 45 lt/speedgt or ltmovegt10 45
lt/movegt or ltmovegt80 3 lt/movegt ltmovegt10 45
lt/movegt
Level eyes
robot
I, M, R, D
eyes
move
10 45
Level move
I, M, R, D
I, M, R, D
Command Parameters changes
Command Parameter Level
Changes on the level of execution such as timing.
72Evaluation of a humanoid Behavioral Robot
The human-robotic interface (all observable
expression) and the Robot-Robot interface
(Ethernet port where all states and robot
activity is recorded)
Humans evaluate how believable are robot emotions
73Evaluation methods for the robot
The 8-robot game
- Each robot is facing outside
- Each robot has visual and sensory inputs
allowing to cover about 90 degree. - Interferences between robots can be easily
observed and analyzed. - Robots communicate with public and themselves.
- Which will attract most visitors?
74Evaluation methods for the robot
Turing test is the robot autonomous or
human-controlled?
75Conclusion
- We introduced a new architecture for humanoid
emotional robot Cynthea - Emotional behavior as the set of not directly
controllable robotic actions - The concept of Emotional Quantum Finite State
Machine - The concept of hierarchical emotional quantum
automata - Common Robotic Language for groups of humanoid
robots. - String rewriting deterministic, probabilistic,
quantum for emotional altering of behaviors on
many levels of hierarchy - Videos on Lukac and Perkowskis WWW.
-
76Additional Slides
77Sensor Architecture
78Video Sensor - features
79The generic sensor module
There are thee types of sensors in our robot model
80Vision Sensor
The Vision Sensor in this case has two cameras,
each assigned to one task as shown Each operation
on each signal is executed without the influence
of the emotional component. Then the output of
the transforms is altered by the emotion and
finally a set of features is generated on the
output
81The Audio Sensor
The audio Sensor has one or two microphones, each
assigned to one task only. In this case with two
microphones the robot runs only two tasks at the
same time, the selection depends on its mode and
behavior The Music Analysis process can be used
internally and does not require live music
recording (music is played from recorded music
files encoded in the mp3 format).
82The Audio Sensor
83Voltage/Power Sensor
The power sensor has one single input, one per
measurement line. The outputs are features
indicating the energy consumption measurement
reflecting the energy evolution over time
(differentials).
84The Power Consumption Sensor
85The Power/Energy Sensor
86Actuator Architecture
87The Generic Actuator Schema
88Representation for devices and modules
89The Network Senso-Motor Interface
90The Speech Actuator Schema
91Hierarchy of control modules in Cynthea Robot
92The Command Hierarchy Structure
93Example of tree command structure for a simple
robot
94Servo Motor Positions and Ranges
95Comparison of our model to existing models of
emotional behaviors
96Schema representing two main information flows in
the brain
In a robot there are two layers this is
introduction to subsumption architecture
97Schematic representation of the inside of the
simple reflex box
This is bottom box
98Schematic Representation of the inside of the
Cognitive box
99Simple Emotional Model Global function over all
components of the whole system
All components are subject to quantum emotions.
Emotions are generated on the lowest level of
the robot.
100Kismet emotional model Emotional States,
Arousal, Valence and Stance
Model of emotion that is based on human
psychology to which Kismet was to be matched The
difference to our approach is that we have no
predefined behaviors the behaviors are emergent
as functions of module interactions. This model
generalizes Quantum BV and QAR
101Wamoeba Emotional Model Hormonal influence on
the actuators and outputs
Wamoeba has four emotions programmed in a look up
table Discrete states of the devices specify
changes in the emotional state represented by
four emotional variables/drives.
102Schema of classic functional approach to robotics
FTRS Filtering and perception of
environment PLN planning of action PRDC
procedural execution of actions
103Functional versus Behavioral approaches to
robotics
104Subsumption Architecture based on behavioral
constraints
We create here a new architecture for a
robot. Therefore we compare our architecture with
Subsumption and Classical Perception_planning-Acti
on models
105Hierarchical Behavioral Model of Implementing
Emotions in a Robot (Hierarchical Emotion Model)
- The emotional model based on the fact that
emotion is first present on the lowest level - (but not being categorized as emotion)
- And then emotion emerges (as emotional behavior)
on the higher/observable level
106The Energy Function
107Structure of doubly connected machine
- Conceptually the robot controller can be
represented as a double interconnected structure
Hierarchical String Command
C
C
C
C
M
M
M
M
E
E
E
E
Emotional quantum state command (not user
accessible)
Measurement
108Quantum computing Basics
In quantum computing the system (circuit) is
represented in the form of a wave
The space of the system is complex Hilbert space
H of dimension N. The basis states are
orthonormal, for boolean logic
The operations on the system are in the form of
Unitary matrices being rotations of the state
vectors in the space H
To retrieve the result the system has to be
observed or measured. Measurement is an outside
operation on the system, and destroys the quantum
state. This operation projects the system onto
real basis states such as defined above.
Because the measurement is completely random,
the information is extracted from the collapsed
state that has the form of
109Quantum computing Basics (contd.)
- Special phenomena can be observed in quantum
- The system can be in superposition (being in all
states at the same time) - The system can be entangled, the outcome of the
whole system or of its subparts is dependent on
the measured output qubit(s).
Despite the fact that before measurement both
qubits have the probability of 0.5 of being in
state 0 or 1, after one of the qubit is measured
the state of the second one is instantaneously
determined
110Motivations (contd.)
- Simulating emotions as only certain behaviors and
observable actions is not sufficient to design
believable emotional robots - Definition Emotional State Machine is a model of
FSM that can modify its state and output
independently of the content of the input, but
based solely on its current state. - Definition Robotic Emotions are simulated
emotional states allowing it the robot to perform
a given action in a way that satisfies it
current emotional state. THIS DEFINITION MAKES NO
SENSE? ENGLISH! - We propose a emotional model as computational
process distributed across the robot software
controller allowing to use simulated WHAT ARE
THEY? emotions to modify all robot actions
111Emotional Quantum Automata
- A network of Emotional State Machines is called
an Emotional Quantum Automata (plural - per
similarity to Cellular Automata) - This network can be regular or not.
- If regular, it can be
- One-dimensional and one-directional (pipelined)
- One-dimensional (like one-dimensional cellular
automata) - Two-dimensional (like Game of Life and
Two-Dimensional cellular Automata of Wolfram) - more dimensional.
- Emotional Quantum Automaton is therefore a
generalization of Cellular Automata, Random
Boolean Networks and Quantum Cellular Automata
Example of one-dimensional and one-directional
112Analysis and synthesis problems for Emotional
Quantum Automata
This architecture connects all cognitive parts
into a serial pipeline-like structure while the
emotional layer is not connected to any inputs
and neighbors. The synthesis of quantum emotional
behavior is then to find quantum logic circuits
that would create a desirable behavior
113EQFA Emotional Quantum State Machine
Boolean function
Measurement
State Register
Quantum state transition function
114Schematic Diagram of the Emotional Machine
- Schematic diagram of the two level emotional
model. - The input command and the robot state are
represented as energy changes, changing the
emotional state. - This induces modification of the strategy and
alters the emotional parameters changing robot
action.
115Introduction FSM
Classical FSM a logic block and a memory block
- Logic can be binary or Fuzzy
- Logic can be quantum
- Memory is classical since the output of logic is
measured
- All robot toys and most robots use this model
- Sometimes the logic is learned from examples
116Our Main New Idea Two Layer Action-Emotion FSM
Model
Emotions are not something additional to
rational thinking and acting Emotions are
intimately interwined in every process of a robot
on any level of hierarchy Instead of a hierarchy
of state machines we have a hierarchy of
Emotional State Machines
Simplified model of Emotional State Machine
117Main Components of the Complete Robot Schema
118Two Main Classes of Commands
Two Main classses of commands also represent the
structure of the robot. Direct commands go
straight to processing by the devices, while the
indirect commands require either command
preprocessing or the integration of external
processes.