Professional Documents
Culture Documents
Edited by
JOSÉ BRAZ
Escola Superior de Tecnologia de Setúbal, Portugal
HELDER ARAÚJO
University of Coimbra, Portugal
ALVES VIEIRA
Escola Superior de Tecnologia de Setúbal, Portugal
and
BRUNO ENCARNAÇÃO
INSTICC - Institute for Systems and Technologies of Information,
Control and Communication, Setúbal, Portugal
A C.I.P. Catalogue record for this book is available from the Library of Congress.
Published by Springer,
P.O. Box 17, 3300 AA Dordrecht, The Netherlands.
www.springer.com
Preface ................................................................................................................................................. ix
INVITED SPEAKERS
ROBOT-HUMAN INTERACTION: Practical experiments with a cyborg
Kevin Warwick............................................................................................................................................................... 3
The present book includes a set of selected papers from the first “International Conference on
Informatics in Control Automation and Robotics” (ICINCO 2004), held in Setúbal, Portugal, from 25 to
28 August 2004.
The conference was organized in three simultaneous tracks: “Intelligent Control Systems and
Optimization”, “Robotics and Automation” and “Systems Modeling, Signal Processing and Control”. The book is
based on the same structure.
Although ICINCO 2004 received 311 paper submissions, from 51 different countries in all
continents, only 115 where accepted as full papers. From those, only 29 were selected for inclusion in
this book, based on the classifications provided by the Program Committee. The selected papers also
reflect the interdisciplinary nature of the conference. The diversity of topics is an importante feature of
this conference, enabling an overall perception of several important scientific and technological trends.
These high quality standards will be maintained and reinforced at ICINCO 2005, to be held in Barcelona,
Spain, and in future editions of this conference.
Furthermore, ICINCO 2004 included 6 plenary keynote lectures and 2 tutorials, given by
internationally recognized researchers. Their presentations represented an important contribution to
increasing the overall quality of the conference, and are partially included in the first section of the book.
We would like to express our appreciation to all the invited keynote speakers, namely, in alphabetical
order: Wolfgang Arndt (Steinbeis Foundation for Industrial Cooperation/Germany), Albert Cheng
(University of Houston/USA), Kurosh Madani (Senart Institute of Technology/France), Nuno Martins
(MIT/USA), Rosalind Picard (MIT/USA) and Kevin Warwick (University of Reading, UK).
On behalf of the conference organizing committee, we would like to thank all participants. First of all
to the authors, whose quality work is the essence of the conference and to the members of the program
committee, who helped us with their expertise and time.
As we all know, producing a conference requires the effort of many individuals. We wish to thank all
the members of our organizing committee, whose work and commitment were invaluable. Special thanks
to Joaquim Filipe, Paula Miranda, Marina Carvalho and Vitor Pedrosa.
José Braz
Helder Araújo
Alves Vieira
Bruno Encarnação
CONFERENCE COMMITTEE
Conference Chair
Joaquim Filipe, Escola Superior de Tecnologia de Setúbal, Portugal
Program Co-Chairs
Helder Araújo, I.S.R. Coimbra, Portugal
Alves Vieira, Escola Superior de Tecnologia de Setúbal, Portugal
Programme Committee
Aguirre, L. (BRAZIL) Choras, R. (POLAND)
Allgöwer, F. (GERMANY) Christensen, H. (SWEDEN)
Arató, P.(HUNGARY) Cichocki, A. (JAPAN)
Arsénio, A. (U.S.A.) Coello, C. (MEXICO)
Asama, H. (JAPAN) Cordeiro, J. (PORTUGAL)
Babuska, R. (THE NETHERLANDS) Correia, L. (PORTUGAL)
Balas, M. (U.S.A.) Costeira, J. (PORTUGAL)
Balestrino, A. (ITALY) Couto, C. (PORTUGAL)
Bandyopadhyay, B. (INDIA) Crispin, Y. (U.S.A.)
Bars, R. (HUNGARY) Custódio, L. (PORTUGAL)
Bemporad, A. (ITALY) Dillmann, R. (GERMANY)
Birk, A. (GERMANY) Dochain, D. (BELGIUM)
Bonyuet, D.(U.S.A.) Dourado, A. (PORTUGAL)
Boucher, P.(FRANCE) Duch, W. (POLAND)
Bulsari, A. (FINLAND) Erbe, H. (GERMANY)
Burke, E. (U.K.) Espinosa-Perez, G. (MEXICO)
Burn, K. (U.K.) Feliachi, A. (U.S.A.)
Burrows, C. (U.K.) Feng, D. (HONG KONG)
Buss, M. (GERMANY) Ferrier, J. (FRANCE)
Camarinha-Matos, L. (PORTUGAL) Ferrier, N. (U.S.A.)
Campi, M. (ITALY) Figueroa, G. (MEXICO)
Cañete, J. (SPAIN) Filip, F. (ROMANIA)
Carvalho, J. (PORTUGAL) Filipe, J. (PORTUGAL)
Cassandras, C. (U.S.A.) Fyfe, C. (U.K.)
Chatila, R. (FRANCE) Gamberger, D. (CROATIA)
Chen, T. (CANADA) Garção, A. (PORTUGAL)
Cheng, A. (U.S.A.) Gheorghe, L. (ROMANIA)
xii Conference Committee
Invited Speakers
Kevin Warwick, University of Reading, UK
Kurosh Madani, PARIS XII University, France
F. Wolfgang Arndt, Fachhochschule Konstanz, Germany
Albert Cheng, University of Houston, USA
Rosalind Picard, Massachusetts Institute of Technology, USA
Nuno Martins, Massachusetts Institute of Technology, USA
INVITED SPEAKERS
ROBOT-HUMAN INTERACTION
Practical experiments with a cyborg
Kevin Warwick
Department of Cybernetics, University of Reading,
Whiteknights, Reading, RG6 6AY, UK
Email: k.warwick@reading.ac.uk
Abstract: This paper presents results to indicate the potential applications of a direct connection between the human
nervous system and a computer network. Actual experimental results obtained from a human subject study
are given, with emphasis placed on the direct interaction between the human nervous system and possible
extra-sensory input. An brief overview of the general state of neural implants is given, as well as a range of
application areas considered. An overall view is also taken as to what may be possible with implant tech-
nology as a general purpose human-computer interface for the future.
3
J. Braz et al. (eds.), Informatics in Control, Automation and Robotics I, 1–10.
© 2006 Springer. Printed in the Netherlands.
4 K. Warwick
prey robot was surrounded by a ring of lights and stimulation of the nerve with appropriate signal
the innate behaviour was employed to cause the sequences the user has been able to perceive shapes
robot to move swiftly towards the active light and letters indicated by bright light patterns. Al-
source, when different lights were switched on and though relatively successful thus far, the research
off. does appear to still have a long way to go, in that
Rats have been the subjects of several studies. In considerable software modification and tailoring is
one (Chapin et al., 1999), rats were trained to pull a required in order to make the system operative for
lever in order that they received a liquid reward for one individual.
their efforts. Electrodes were chronically implanted Electronic neural stimulation has proved to be ex-
into the motor cortex of the rats’ brains to directly tremely successful in other areas which can be
detect neural signals generated when each rat (it is loosely termed as being restorative. In this class,
claimed) thought about pulling the lever, but, impor- applications range from cochlea implants to the
tantly, before any physical movement occurred. The treatment of Parkinson’s disease symptoms. The
signals measured immediately prior to the physical most relevant to our study here however is the use of
action necessary for lever pulling were used to di- a single electrode brain implant, enabling a brain-
rectly release the reward before a rat actually carried stem stroke victim to control the movement of a
out the physical action of pulling the lever itself. cursor on a computer screen (Kennedy et al., 2000).
Over the time of the study, which lasted for a few In the first instance extensive functional magnetic
days, four of the six implanted rats learned that they resonance imaging (fMRI) of the subject’s brain was
need not actually initiate any action in order to ob- carried out. The subject was asked to think about
tain the reward; merely thinking about the action moving his hand and the fMRI scanner was used to
was sufficient. One problem area that needs to be determine where neural activity was most pro-
highlighted with this is that although the research is nounced. A hollow glass electrode cone containing
certainly of value, because rats were employed in two gold wires was subsequently positioned into the
the trial we cannot be sure what they were actually motor cortex, centrally located in the area of maxi-
thinking about in order to receive the reward, or mum-recorded activity. When the patient thought
indeed whether the nature of their thoughts changed about moving his hand, the output from the elec-
during the trial. trode was amplified and transmitted by a radio link
In another study carried out by the same group to a computer where the signals were translated into
(Talwar et al., 2002), the brains of a number of rats control signals to bring about movement of the cur-
were stimulated via electrodes in order to teach them sor. The subject learnt to move the cursor around by
to be able to carry out a maze solving problem. Re- thinking about different hand movements. No signs
inforcement learning was used in the sense that, as it of rejection of the implant were observed whilst it
is claimed, pleasurable stimuli were evoked when a was in position (Kennedy et al., 2000).
rat moved in the correct direction. Although the In the human studies described thus far, the main
project proved to be successful, we cannot be sure aim is to use technology to achieve some restorative
of the actual feelings perceived by the rats, whether functions where a physical problem of some kind
they were at all pleasurable when successful or un- exists, even if this results in an alternative ability
pleasant when a negative route was taken. being generated. Although such an end result is
certainly of interest, one of the main directions of
1.1 Human Integration the study reported in this paper is to investigate the
possibility of giving a human extra capabilities, over
and above those initially in place.
Studies which focus, in some sense, on integrating In the section which follows a MicroElectrode
technology with the Human Central Nervous System Array (MEA) of the spiked electrode type is de-
range from those considered to be diagnostic (De- scribed. An array of this type was implanted into a
neslic et al., 1994), to those which are clearly aimed human nervous system to act as an electrical sili-
solely at the amelioration of symptoms (Poboronuic con/biological interface between the human nervous
et al., 2002, Popovic et al., 1998, Yu et al., 2001) to system and a computer. As an example, a pilot study
those which are directed towards the augmentation is described in which the output signals from the
of senses (Cohen et al., 1999, Butz et al., 1999). By array are used to drive a range of technological
far the most widely reported research with human entities, such as mobile robots and a wheelchair.
subjects however, is that involving the development These are introduced merely as an indication of
of an artificial retina (Kanda et al., 1999). In this what is possible. A report is then also given of a
case small arrays have been attached directly onto a continuation of the study involving the feeding of
functioning optic nerve, but where the person con- signals obtained from ultrasonic sensors down onto
cerned has no operational vision. By means of the nervous system, to bring about sensory en-
Robot-Human Interaction 5
hancement, i.e. giving a human an ultrasonic sense. suited. MEAs can take on a number of forms, for
It is worth emphasising here that what is described example they can be etched arrays that lie flat
in this article is an actual application study rather against a neural surface (Nam et al., 2004) or spiked
than a computer simulation or mere speculation. arrays with electrode tips. The MEA employed in
this study is of this latter type and contains a total of
100 electrodes which, when implanted, become
distributed within the nerve fascicle. In this way, it
2 INVASIVE NEURAL is possible to gain direct access to nerve fibres from
INTERFACE muscle spindles, motor neural signals to particular
motor units or sensory receptors. Essentially, such a
There are, in general, two approaches for peripheral device allows a bi-directional link between the hu-
nerve interfaces when a direct technological connec- man nervous system and a computer (Gasson et al.,
tion is required: Extraneural and Intraneural. In 2002, Branner et al., 2001, Warwick et al., 2003).
practical terms, the cuff electrode is by far the most
commonly encountered extraneural device. A cuff
electrode is fitted tightly around the nerve trunk,
such that it is possible to record the sum of the sin- 2.1 Surgical Procedure
gle fibre action potentials apparent, this being
known as the compound action potential (CAP). In On 14 March 2002, during a 2 hour procedure at the
other words, a cuff electrode is suitable only if an Radcliffe Infirmary, Oxford, a MEA was surgically
overall compound signal from the nerve fibres is implanted into the median nerve fibres of my left
required. It is not suitable for obtaining individual or arm. The array measured 4mm x 4mm with each of
specific signals. It can though also be used for the electrodes being 1.5mm in length. Each elec-
crudely selective neural stimulation of a large region trode was individually wired via a 20cm wire bundle
of the nerve trunk. In some cases the cuff can con- to an electrical connector pad. A distal skin incision
tain a second or more electrodes, thereby allowing marked at the distal wrist crease medial to the pal-
for an approximate measurement of signal speed maris longus tendon was extended approximately 4
travelling along the nerve fibres. cm into the forearm. Dissection was performed to
For applications which require a much finer identify the median nerve. In order that the risk of
granularity for both selective monitoring and stimu- infection in close proximity to the nerve was re-
lation however, an intraneural interface such as duced, the wire bundle was run subcutaneously for
single electrodes either inserted individually or in 16 cm before exiting percutaneously. For this exit a
groups can be employed. To open up even more second proximal skin incision was made distal to the
possibilities a MicroElectrode Array (MEA) is well elbow 4 cm into the forearm. A modified plastic
Figure 1: A 100 electrode, 4X4mm MicroElectrode Array, shown on a UK 1 pence piece for scale.
6 K. Warwick
shunt passer was inserted subcutaneously between munications was developed to be worn on a gauntlet
the two incisions by means of a tunnelling proce- around the wrist. This custom hardware consisted of
dure. The MEA was introduced to the more proxi- a 20 way multiplexer, two independent filters, two
mal incision and pushed distally along the passer to 10bit A/D converters, a microcontroller and an FM
the distal skin incision such that the wire bundle radio transceiver module. Either 1 or 2 electrodes
connected to the MEA ran within it. By removing from the array could be quasi-statically selected,
the passer, the MEA remained adjacent to the ex- digitised and sent over the radio link to a corre-
posed median nerve at the point of the first incision sponding receiver connected to a PC. At this point
with the wire bundle running subcutaneously, exit- they could either be recorded or transmitted further
ing at the second incision. At the exit point, the wire in order to operate networked technology, as de-
bundle linked to the electrical connector pad which scribed in the following section. Onward transmis-
remained external to the arm. sion of the signal was via an encrypted TCP/IP tun-
The perineurium of the median nerve (its outer nel, over the local area network, or wider internet.
protective sheath) was dissected under microscope Remote configuration of various parameters on the
to facilitate the insertion of electrodes and to ensure wearable device was also possible via the radio link
that the electrodes penetrated the nerve fibres to an from the local PC or the remote PC via the en-
adequate depth. Following dissection of the per- crypted tunnel.
ineurium, a pneumatic high velocity impact inserter Stimulation of the nervous system by means of
was positioned such that the MEA was under a light the array was especially problematic due to the lim-
pressure to help align insertion direction. The MEA ited nature of existing results prior to the study re-
was pneumatically inserted into the radial side of the ported here, using this type of interface. Published
median nerve allowing the MEA to sit adjacent to work is restricted largely to a respectably thorough
the nerve fibres with the electrodes penetrating into but short term study into the stimulation of the sci-
a fascicle. The median nerve fascicle was estimated atic nerve in cats (Branner et al., 2001). Much ex-
to be approximately 4 mm in diameter. Penetration perimental time was therefore required, on a trial
was confirmed under microscope. Two Pt/Ir refer- and error basis, to ascertain what voltage/current
ence wires were also positioned in the fluids sur- relationships would produce a reasonable (i.e. per-
rounding the nerve. ceivable but not painful) level of nerve stimulation.
The arrangements described remained perma- Further factors which may well emerge to be rele-
nently in place for 96 days, until 18th June 2002, at vant, but were not possible to predict in this experi-
which time the implant was removed. mental session were firstly the plastic, adaptable
nature of the human nervous system, especially the
2.2 Neural Stimulation and Neural brain – even over relatively short periods, and sec-
ondly the effects of movement of the array in rela-
Recordings tion to the nerve fibres, hence the connection and
associated input impedance of the nervous system
Once it was in position, the array acted as a bi- was not completely stable.
directional neural interface. Signals could be trans- After experimentation lasting for approximately 6
mitted directly from a computer, by means of either weeks, it was found that injecting currents below
a hard wire connection or through a radio transmit- 80µA onto the median nerve fibres had little per-
ter/receiver unit, to the array and thence to directly ceivable effect. Between 80µA and 100µA all the
bring about a stimulation of the nervous system. In functional electrodes were able to produce a recog-
addition, signals from neural activity could be de- nisable stimulation, with an applied voltage of
tected by the electrodes and sent to the computer and around 20 volts peak to peak, dependant on the
thence onto the internet. During experimentation, it series electrode impedance. Increasing the current
was found that typical activity on the median nerve above 100µA had little additional effect; the stimu-
fibres occurs around a centroid frequency of ap- lation switching mechanisms in the median nerve
proximately 1 KHz with signals of apparent interest fascicle exhibited a non-linear thresholding charac-
occurring well below 3.5 KHz. However noise is a teristic.
distinct problem due to inductive pickup on the In all successful trials, the current was applied as
wires, so had to be severely reduced. To this end a a bi-phasic signal with pulse duration of 200µsec
fifth order band limited Butterworth filter was used and an inter-phase delay of 100µsec. A typical
with corner frequencies of flow= 250 Hz and fhigh = stimulation waveform of constant current being
7.5 KHz. applied to one of the MEAs implanted electrodes is
To allow freedom of movement, a small wearable shown in Fig. 2.
signal processing unit with Radio Frequency com-
Robot-Human Interaction 7
It was therefore possible to create alternative sen- poses, removing the need for any external control
sations via this new input route to the nervous sys- devices or for switches or buttons to be used. Essen-
tem, thereby by-passing the normal sensory inputs. tially signals taken directly from my nervous system
The reasons for the 6 weeks necessary for successful were used to operate the technology. To control the
nerve stimulation, in the sense of stimulation signals electric wheelchair, a sequential-state machine was
being correctly recognised, can be due to a number incorporated. Neural signals were used as a real-
of factors such as (1) suitable pulse characteristics, time command to halt the cycle at the intended
(i.e. amplitude, frequency etc) required to bring wheelchair action, e.g. drive forwards. In this way
about a perceivable stimulation were determined overall control of the chair was extremely simple to
experimentally during this time, (2) my brain had to ensure, thereby proving the general potential use of
adapt to recognise the new signals it was receiving, such an interface.
and (3) the bond between my nervous system and Initially selective processing of the neural signals
the implant was physically changing. obtained via the implant was carried out in order to
produce discrete direction control signals. With only
a small learning period I was able to control not only
the direction but also the velocity of a fully autono-
3 NEURAL INTERACTION WITH mous, remote mobile platform. On board sensors
TECHNOLOGY allowed the robot to override my commands in order
to safely navigate local objects in the environment.
It is apparent that the neural signals obtained Once stimulation of the nervous system had been
through the implant can be used for a wide variety achieved, as described in section 2, the bi-directional
of purposes. One of the key aims of the research nature of the implant could be more fully experi-
was, in fact, to assess the feasibility of the implant mented with. Stimulation of the nervous system was
for use with individuals who have limited functions activated by taking signals from fingertips sensors
due to a spinal injury. Hence in experimental tests, on the robotic hand. So as the robotic hand gripped
an object, in response to outgoing neural signals via
neural signals were employed to control the func-
the implant, signals from the fingertips of the robotic
tioning of a robotic hand and to drive an electric hand brought about stimulation. As the robotic hand
wheelchair around successfully (Gasson et al., 2002, applied more pressure the frequency of stimulation
Warwick et al., 2003). The robotic hand was also increased. The robotic hand was, in this experiment,
controlled, via the internet, at a remote location acting as a remote, extra hand.
(Warwick et al., 2004). By passing the neural signals not simply from
In these applications, data collected via the neural computer to the robot hand, and vice versa, but also
implant were directly employed for control pur- via the internet, so the hand could actually be lo-
8 K. Warwick
cated remotely. In a test (Warwick et al., 2004) of sensory capabilities. Potential application areas
signals were transmitted between Columbia Univer- are therefore considerable.
sity in New York City and Reading University in the
UK, with myself being in New York and the robot
hand in the UK. Effectively this can be regarded as
extending the human nervous system via the inter-
4 CONCLUSIONS
net. To all intents and purposes my nervous system
did not stop at the end of my body, as is the usual Partly this study was carried out in order to assess
case, but rather went as far as the internet would the implant interface technology in terms of its use-
take it, in this case across the Atlantic Ocean. fulness in helping those with a spinal injury. As a
In another experiment, signals were obtained positive result in this sense it can be reported that
from ultrasonic sensors fitted to a baseball cap. The during the course of the study there was no sign of
output from these sensors directly affected the rate infection or rejection. In fact, rather than reject the
of neural stimulation. With a blindfold on, I was implant, my body appeared to accept the device
able to walk around in a cluttered environment implicitly to the extent that its acceptance may well
whilst detecting objects in the vicinity through the have been improving over time.
(extra) ultrasonic sense. With no objects nearby, no Clearly the implant would appear to allow for the
neural stimulation occurred. As an object moved restoration of some movement and the return of
relatively closer, so the stimulation increased pro- body functions in the case of a spinally injured pa-
portionally (Gasson et al., 2005). tient. It would also appear to allow for the patient to
It is clear that just about any technology, which control technology around them merely by neural
can be networked in some way, can be switched on signals alone. Further human experimentation is
and off and ultimately controlled directly by means though clearly necessary to provide further evidence
of neural signals through an interface such as the in this area.
implant used in this experimentation. Not only that, Such implanted interface technology would how-
but because a bi-directional link has been formed, ever appear to open up many more opportunities. In
feedback directly to the brain can increase the range the case of the experiments described, an articulated
robot hand was controlled directly by neural signals.
Robot-Human Interaction 9
For someone who has had their original hand ampu- Roberts, S., Penny, W., and Rezek, I., 1999, “Temporal
tated this opens up the possibility of them ultimately and spatial complexity measures for electroencephalo-
controlling an articulated hand, as though it were gram based brain-computer interfacing”, Medical and
their own, by the power of their own thought. Biological Engineering and Computing, Vol. 37, Is-
Much more than this though, the study opens up sue.1, pp. 93-98.
the distinct possibility of humans being technically Wolpaw, J., McFarland, D., Neat, G. and Forneris, C.,
enhanced and upgraded, rather than merely repaired. 1991, “An EEG based brain-computer interface for
One example of this was the extra sensory (ultra cursor control”, Electroencephalography and Clinical
sonic) experiment that was far more successful than Neurophysiology, Vol. 78, Issue.3, pp. 252-259.
had been expected. Although this does open up a Kubler, A., Kotchoubey, B., Hinterberger, T., Ghanayim,
number of distinct ethical questions, as to what up- N., Perelmouter, J., Schauer, M., Fritsch, C., Taub, E.
grades are acceptable and for whom, it also opens up and Birbaumer, N., 1999, “The Thought Translation
an exciting period of experimentation to see how far device: a neurophysiological approach to communica-
the human brain can be expanded in a technical tion in total motor paralysis”, Experimental Brain Re-
sense. search, Vol. 124, Issue.2, pp. 223-232.
The author accepts the fact that this is a one off Thorp, E., “The invention of the first wearable computer”,
study based on only one implant recipient. It may be 1997, In Proceedings of the Second IEEE Interna-
that other recipients react in other ways and the tional Symposium on Wearable Computers, pp. 4–8,
experiments carried out would not be so successful Pittsburgh.
with an alternative recipient. In that sense the author Mann, S., 1997, “Wearable Computing: A first step to-
wishes this study to be seen as evidence that the wards personal imaging”, Computer, Vol. 30, Issue.2,
concept can work well, although it is acknowledged pp. 25-32.
that further human trials will be necessary to inves- Warwick, K., 2004, “I, Cyborg”, University of Illinois
tigate the extent of usefulness. Press.
As far as an implant interface is concerned, what Reger, B., Fleming, K., Sanguineti, V., Simon Alford, S.,
has been achieved is a very rudimentary and primi- Mussa-Ivaldi, F., 2000, “Connecting Brains to Robots:
tive first step. It may well prove to be the case that The Development of a Hybrid System for the Study of
implants of the type used here are not ultimately Learning in Neural Tissues”, Artificial Life VII, Port-
those selected for a good link between a computer land, Oregon.
and the human brain. Nevertheless the results ob- Chapin, J., Markowitz, R., Moxon, K., and Nicolelis, M.,
tained are felt to be extremely encouraging. 1999, “Real-time control of a robot arm using simul-
taneously recorded neurons in the motor cortex”. Na-
ture Neuroscience, Vol. 2, Issue.7, pp. 664-670.
Talwar, S., Xu, S., Hawley, E., Weiss, S., Moxon, K.,
ACKNOWLEDGEMENTS Chapin, J., 2002, “Rat navigation guided by remote
control”. Nature, Vol. 417, pp. 37-38.
Ethical approval for this research to proceed was Denislic, M., Meh, D., 1994, “Neurophysiological as-
obtained from the Ethics and Research Committee at sessment of peripheral neuropathy in primary
the University of Reading and, with regard to the Sjögren’s syndrome”, Journal of Clinical Investiga-
neurosurgery, by the Oxfordshire National Health tion, Vol. 72, 822-829.
Trust Board overseeing the Radcliffe Infirmary, Poboroniuc, M.S., Fuhr, T., Riener, R., Donaldson, N.,
Oxford, UK. 2002, “Closed-Loop Control for FES-Supported
My thanks go to Mr. Peter Teddy and Mr. Amjad Standing Up and Sitting Down”, Proc. 7th Conf. of the
Shad who performed the neurosurgery at the Rad- IFESS, Ljubljana, Slovenia, pp. 307-309.
cliffe Infirmary and ensured the medical success of Popovic, M. R., Keller, T., Moran, M., Dietz, V., 1998,
the project. My gratitude is also extended to NSIC, “Neural prosthesis for spinal cord injured subjects”,
Stoke Mandeville and to the David Tolkien Trust for Journal Bioworld, Vol. 1, pp. 6-9.
their support. Yu, N., Chen, J., Ju, M.; 2001, “Closed-Loop Control of
Quadriceps/Hamstring activation for FES-Induced
Standing-Up Movement of Paraplegics”, Journal of
Musculoskeletal Research, Vol. 5, No.3.
REFERENCES Cohen, M., Herder, J. and Martens, W.; 1999, “Cyberspa-
tial Audio Technology”, JAESJ, J. Acoustical Society
Penny, W., Roberts, S., Curran, E., and Stokes, M., 2000, of Japan (English), Vol. 20, No. 6, pp. 389-395, No-
“EEG-based communication: A pattern recognition vember.
approach”, IEEE Transactions on Rehabilitation Engi- Butz, A., Hollerer, T., Feiner, S., McIntyre, B., Beshers,
neering., Vol. 8, Issue.2, pp. 214-215. C., 1999, “Enveloping users and computers in a col-
10 K. Warwick
laborative 3D augmented reality”, IWAR99, San Fran- Branner, A., Stein, R. B. and Normann, E.A., 2001, “Se-
cisco, pp. 35-44. lective “Stimulation of a Cat Sciatic Nerve Using an
Kanda, H., Yogi, T., Ito, Y., Tanaka, S., Watanabe, M and Array of Varying-Length Micro electrodes”, Journal
Uchikawa, Y., 1999, “Efficient stimulation inducing of Neurophysiology, Vol. 54, No. 4, pp. 1585-1594.
neural activity in a retinal implant”, Proc. IEEE Inter- Warwick, K., Gasson, M., Hutt, B., Goodhew, I., Kyberd,
national Conference on Systems, Man and Cybernet- P., Andrews, B, Teddy, P and Shad. A, 2003, “The
ics, Vol 4, pp. 409-413. Application of Implant Technology for Cybernetic
Kennedy, P., Bakay, R., Moore, M., Adams, K. and Systems”, Archives of Neurology, Vol. 60, No.10, pp.
Goldwaithe, J., 2000, “Direct control of a computer 1369-1373.
from the human central nervous system”, IEEE Trans- Warwick, K., Gasson, M., Hutt, B., Goodhew, I., Kyberd,
actions on Rehabilitation Engineering, Vol. 8, pp. K., Schulzrinne, H. and Wu, X., 2004, “Thought
198-202. Communication and Control: A First Step using Ra-
Nam, Y., Chang, J.C.., Wheeler, B.C. and Brewer, G.J., diotelegraphy”, IEE Proceedings-Communications,
2004, “Gold-coated microelectrode array with Thiol Vol. 151, No. 3, pp. 185-189.
linked self-assembled monolayers for engineering Gasson, M., Hutt, B., Goodhew, I., Kyberd, P. and War-
neuronal cultures”, IEEE Transactions on Biomedical wick, K., 2005, “Invasive Neural Prosthesis for Neural
Engineering, Vol. 51, No. 1, pp. 158-165. Signal detection and Nerve Stimulation”, International
Gasson, M.., Hutt, B., Goodhew, I., Kyberd, P. and War- Journal of Adaptive Control and Signal Processing,
wick, K; 2002, “Bi-directional human machine inter- Vol. 19.
face via direct neural connection”, Proc. IEEE Work-
shop on Robot and Human Interactive Communica-
tion, Berlin, German, pp. 265-270.
INDUSTRIAL AND REAL WORLD APPLICATIONS OF
ARTIFICIAL NEURAL NETWORKS
Illusion or reality?
Kurosh Madani
2
Intelligence in Instrumentation and Systems Lab. (I S Lab.),
PARIS XII University, Senart Institute of Technology, Pierre Point avenue, F-77127 Lieusaint, France
Email: madani@univ-paris12.fr
Abstract: Inspired from biological nervous systems and brain structure, Artificial Neural Networks (ANN) could be
seen as information processing systems, which allow elaboration of many original techniques covering a
large field of applications. Among their most appealing properties, one can quote their learning and
generalization capabilities. If a large number of works have concerned theoretical and implementation
aspects of ANN, only a few are available with reference to their real world industrial application
capabilities. In fact, applicability of an available academic solution in industrial environment requires
additional conditions due to industrial specificities, which could sometimes appear antagonistic with
theoretical (academic) considerations. The main goal of this paper is to present, through some of main ANN
models and based techniques, their real application capability in real industrial dilemmas. Several examples
dealing with industrial and real world applications have been presented and discussed covering "intelligent
adaptive control", "fault detection and diagnosis", "decision support", "complex systems identification" and
"image processing".
11
J. Braz et al. (eds.), Informatics in Control, Automation and Robotics I, 11–26.
© 2006 Springer. Printed in the Netherlands.
12 K. Madani
signals are strongly noisy or deal with incomplete shown and discussed. The present paper has been
data. organized as follows: the next section will present
Over the past decades, Artificial Neural the general principle of Artificial Neural Networks
Networks (ANN) and issued approaches have relating it to biological considerations. In the same
allowed the elaboration of many original techniques section two classes of neural models will be
(covering a large field of applications) overcoming introduced and discussed: Multi-layer Perceptron
some of mentioned difficulties (Nelles, 1995) and Kernel Functions based Neural Networks. The
(Faller, 1995) (Maidon, 1996), (Madani, 1997) section 3 and related sub-sections will illustrate real
(Sachenco, 2000). Their learning and generalization world examples of application of such techniques.
capabilities make them potentially promising for Finally, the last section will conclude the paper.
industrial applications for which conventional
approaches show their failure. However, even if
ANN and issued approaches offer an attractive
potential for industrial world, their usage should
2 FROM NATURAL TO
always satisfy industrial “specificities”. In the ARTIFICIAL
context of the present paper, the word “specificity”
intends characteristic or criterion channelling As mentions Andersen (Anderson, 1995): "It is not
industrial preference for a strategy, option or absolutely necessary to believe that neural network
solution as an alternative to the others. models have anything to do with the nervous system,
In fact, several specificities distinguish the but it helps. Because, if they do, we are able to use a
industrial world and related constraints from the large body of ideas, experiments, and facts from
others. Of course, here the goal is not to analyse all cognitive science and neuroscience to design,
those specificities but to overview briefly the most construct, and test networks. Otherwise, we would
pertinent ones. As a first specificity one could have to suggest functions and mechanism for
mention the “reproducibility”. That means that an intelligent behavior without any examples of
industrial solution (process, product, etc…) should successful operation".
be reproducible. This property is also called solution Much is still unknown about how the brain trains
stability. A second industrial specificity is itself to process information, so theories abound. It
“viability”, which means implementation is admitted that in the biological systems (human or
(realization) possibility. That signifies that an animal brain), a typical neuron collects signals from
industrial solution should be adequate to available others through a host of fine structures called
technology and achievable in reasonable delay dendrites. Figure 1 shows a simplified bloc diagram
(designable, realizable). Another industrial of biological neural system comparing it to the
specificity is “saleability”, which means that an artificial neuron. The neuron sends out spikes of
industrial solution should recover a well identified electrical activity through a long, thin stand known
field of needs. Finally, an additional important as an axon, which splits into thousands of branches.
specificity is “marketability” making a proposed At the end of each branch, a structure called a
industrial solution attractive and concurrent (from synapse converts the activity from the axon into
the point of view of cost, price-quality ratio, etc…) electrical effects that inhibit or excite activity from
to other available products (or solutions) concerning the axon into electrical effects that inhibit or excite
the same area. activity in the connected neurones. When a neuron
Another key point to emphasize is related to the receives excitatory input that is sufficiently large
real world constraints consideration. In fact, dealing compared with its inhibitory input, it sends a spike
with real world environment and related realities, it of electrical activity down its axon. Learning occurs
is not always possible to put away the lower degree by changing the effectiveness of the synapses so that
phenomena’s influence or to neglect secondary the influence of one neuron on another changes.
parameters. That’s why a well known solved Inspired from biological neuron, artificial neuron
academic problem could sometime appear as an reproduces a simplified functionality of that
unachieved (unbearable) solution in the case of an complex biological neuron. The neuron’s operation
industry related dilemma. In the same way a viable could be seen as following: a neuron updates its
and marketable industrial solution may appear as output from weighted inputs received from all
primitive from academic point of view. neurons connected to that neuron. The decision to
The main goal of this paper is to present, through update or not the actual state of the neuron is
main ANN models and based techniques, the performed thank to the “decision function”
effectiveness of such approaches in real world depending to activity of those connected neurons.
industrial problems solution. Several examples Let us consider a neuron with its state denoted by xi
through real world industrial applications have been (as it is shown in figure 1) connected to M other
Industrial and Real World Applications of Artificial Neural Networks 13
x1
Xj Activation
Wij 6 Function Si
xN
Neuron i
Figure 1: Biological (left) and artificial (right) neurons simplified bloc-diagrams.
neurons, and let xj represent the state (response) Biologically, neural networks are constructed in
of the j-th neuron interconnected to that neuron with a three dimensional way from microscopic
j ^1,, M `. Let W ij be the weight (called also, components. These neurons seem capable of nearly
synaptic weight) between j-th and i-th neurons. In unrestricted interconnections. This is not true in any
this case, the activity of all connected neurons to the artificial network. Artificial neural networks are the
i-th neuron, formalized through the “synaptic simple clustering of the primitive artificial neurons.
potential” of that neuron, is defined by relation (1). This clustering occurs by creating layers, which are
Fall back on its synaptic potential (and sometimes to then connected to one another. How these layers
other control parameters), the neuron’s decision connect may also vary. Basically, all artificial neural
function will putout (decide) the new state of the networks have a similar structure or topology. Some
neuron according to the relation (2). One of the most of their neurons interface the real world to receive its
commonly used decision functions is the
inputs and other neurons provide the real world with
“sigmoidal” function given by relation (3) where K
is a control parameter acting on decision strictness
the network’s outputs. All the rest of the neurons are
or softness, called also “learning rate”. hidden form view. Figure 2 shows an artificial
neural network’s general bloc-diagram.
j M
Vi ¦W ij . xj (1) Input Layer Layer_h Output Layer
j 1 X1
1 1 S
1 1
§ j M · (2)
Si F xi , Vi F ¨¨ xi , ¦ Wij . x j ¸¸
© j 1 ¹ Xj
W
kj
W
ik S
j k
1 (3)
i i
F x x
K
1 e XM S
M P N M
one and an “error vector” is evaluated. Then all number of neurons in input layer corresponds to the
synaptic weights are corrected (adjusted) processed patterns dimensionality e.g. to the
proportionally to the evaluated output error. problem’s feature space dimension.
Synaptic weights correction is performed layer by The output layer represents a set of categories
layer from the output layer to the input layer. So, associated to the input data. Connections between
output error is back-propagated in order to correct hidden and output layers are established dynamically
synaptic weights. Generally, a quadratic error during the learning phase. It is the hidden layer
criterion, given by equation (6), is used. In this which is modified during the learning phase. A
relation Si represents the i-th output vector’s neuron from hidden layer is characterized by its
d
component and S i represents the desired value of “centre” representing a point in an N dimensional
this component. Synaptic weights are modified space (if the input vector is an N-D vector) and some
h decision function, called also neuron’s “Region Of
according to relation (7), where dWi , j represents Influence” (ROI). ROI is a kernel function, defining
the synaptic variation (modification) of the synaptic some “action shape” for neurons in treated
weight connecting the j-th neurone and i-th neuron problem’s feature space. In this way, a new learning
between two adjacent layers (layer h and layer h-1). pattern is characterized by a point and an influence
K is a real coefficient called also “learning rate”. field (shape) in the problem’s N-D feature space. In
the other words, the solution is mapped thank to
1 learning examples in problem’s N-D feature space.
Hi
2
S i S id
2
(6) The goal of the learning phase is to partition the
input space associating prototypes with a categories
dWi , j Șx grad W H
h
(7) and an influence field, a part of the input space
around the prototype where generalization is
possible. When a prototype is memorized, ROI of
The learning rate parameter is decreased neighbouring neurons are adjusted to avoid conflict
progressively during the learning process. The between neurons and related categories. The neural
learning process stops when the output error reaches network’s response is obtained from relation (8)
some acceptable value. where Cj represents a “category”,
V >V1 V2 V N @ is the input vector,
T
P1
2
C1 V2
V1 P1 V1
V2 1
C2 c1
Pj V1 P1 P2
V2 2
c2
P1
V2 2
VN CM P2
P2 P1 V1
1 1
Figure 3: Radial Basis Functions based ANN’s bloc-diagram (left). Example of learning process in 2-D feature space
(right).
16 K. Madani
Cj
F dist V , P j If
dist V , P j d O j
(8)
Cj 0 If
dist V , P j ! O j
n
dist n¦V p j (9)
i i i
1
§ 2 ·2
with
¦i Vi pij d ¨© ¦i Vi pij ¸¹ d max
i
Vi pij (10)
The choice of the distance calculation (choice of 3.1 MLP Based Adaptive Controller
the used norm) is one of the main parameters in the
case of the RCE-KNN like neural models (and Two meaningful difficulties characterize the
derived approaches). The most usual function used controller dilemma, making controllers design one
to evaluate the distance between two patterns is the of the most challenging tasks: the first one is the
Minkowski function expressed by relation (9), where plant parameters identification, and the second one
Vi is the i-th component of the input vector and pij is related to the consideration of interactions
the i-th component of the j-th memorized pattern between real world (environment) and control
(learned pattern). Manhattan distance ( n 1 , called system, especially in the case of real-world
also L1 norm) and Euclidean distance ( n 2 ) are applications where controlled phenomena and
particular cases of the Minkowski function and the related parameters deal with strong nonlinearities.
most applied distance evaluation criterions. One can Neural models and issued approaches offer original
write relation (10). perspectives to overcome these two difficulties.
However, beside these two difficulties, another chief
condition for conventional or unconventional control
is related to the controller’s implementation which
3 ANN BASED SOLUTIONS FOR deals with real-time execution capability. Recent
INDUSTRIAL ENVIRONMENT progresses accomplished on the one hand, in the
microprocessor design and architecture, and on the
If the problem’s complexity and the solution other hand, in microelectronics technology and
consistency, appearing through theoretical tools manufacturing, leaded to availability of powerful
(modeling or conceptual complexity) needing to microprocessors, offering new perspectives for
solve it, are of central challenges for applicability of software or hardware implementation, enlarging the
a proposed concepts, another key points field in real time execution capability.
characterizing application design, especially in Finally, it should always be taken into account
industrial environment, is related to implementation that proposed solution to a control dilemma (and so,
requirements. In fact, constraints related to the issued controller) emerges on the basis of former
production conditions, quality, etc. set the above- available equipments (plants, processes, factory,
mentioned point as a chief purpose to earn solution’s etc.). That’s why, with respect to above-discussed
viability. That is why in the next subsections, industrial specificities, preferentially it should not
dealing with real-world, and industrial applications lead to a substantial modification of the still existent
of above-presented ANN models, the materials. In fact, in the most of real industrial
implementation issues will be of central control problems, the solution should enhance
considerations. Moreover, progress accomplished existent equipments and be adaptable to an earlier
during the lasts decades concerning electrical technological environment.
engineering, especially in the microprocessors area,
3.1.1 General Frame and Formalization of
offers new perspectives for real time execution
capabilities and enlarges the field for solution
Control Dilemma
implementation ability.
The two usual strategies in conventional control are
open-loop and feed-back loop (known also as feed-
Industrial and Real World Applications of Artificial Neural Networks 17
back loop regulation) controllers. Figure 4 gives the Moreover, system’s reverse Jacobean computation is
general bloc-diagram of these two controllers, were not a trivial task. In the real world applications, only
Ek is the “input vector” (called also “order” vector), in very few cases (as linear transfer functions) the
Yk y k y k 1 y k m system’s reverse Jacobean is available. So, typically
T
is the “output
a rough approximation of this matrix is obtained.
vector” (plant’s or system’s state or response) and
U k u k u k 1 u k n is the “command
T
3.1.2 ANN Based Controller
vector”. k represents the discrete time variable. The
output vector is defined as a vector which Let us consider a neural network approximating
components are the m last system’s outputs. In the (learning) a given system (process or plant). Let Y
same way, the command vector is defined as a be the system’s output, U be the system’s command
vector which components are the n last commands. (U becomes also the neural network’s output), Wij
Such vectors define output and command feature be synaptic weights of the neural network andHbe
spaces of the system. Taking into account the the output error representing some perturbation
general control bloc diagram (figure 4), the goal of occurring on output. The part of output perturbation
the command is to make converge the system’s (output error) due to the variation of a given synaptic
output with respect to some “desired output” noted weight (Wij) of the neural network noted as wH
wWij
Yd. If the command vector is a subject to some
modifications, then the output vector will be could be written conformably to relation (13).
modified. The output modification will be performed
with respect to the system’s (plant, process or wH wH wy wu (13)
system under control) characteristics according to
equation (11), where J represents the Jacobean
wWij wy wu wWij
matrix of the system. One can remark that wy is the system’s
wu
Jacobean element and wu could be interpreted as
dYk J dU k (11) wWij
the “neural network’s Jacobean” element. As the
output error is related to the system’s controller
So, considering that the actual instant is k, it
characteristics (represented by system’s Jacobean),
appears that to have an appropriated output (Y k+1 =
so the modification of synaptic weights with respect
Y d), the output should be corrected according to the
to the measured error (e.g. the neural network
output error defined by: dYk = Yk – Yd. In the frame
appropriated training) will lead to the correction of
of such formulation, supposing that one could
the command (dU) minimizing the output error.
compute the system’s reverse Jacobean the
Several Neural Network based adaptive control
command correction making system’s output to
architectures have still been proposed. However,
converge to the desired state (or response) will be
taking into account the above-discussed industrial
conform to relation (12).
specificities, the most effective scheme is the hybrid
neuro-controller (Hormel, 1992) (Miller, 1987)
dU k J 1 dYk (12) (Madani, 1996) (Albus, 1975) (Comoglio, 1992).
This solution operates according to a Neural
Network based correction of a conventional
System’s Jacobean is related to plant’s features controller. Figure 5 shows the bloc diagram of such
(parameters) involving difficulties mentioned before. approach.
Figure 4: General bloc-diagrams of control strategies showing open-loop controller (left) and feed-back loop controller
(Right) principles.
18 K. Madani
As one can see in our ANN based control to control the field excitation current and the torque
strategy, the command U(t) is corrected thanks to the generating current separately (Madani, 1999). The
additional correction dU, generated by neural device input currents of the motor should provide an
and added to the conventional command component. electromagnetic torque corresponding to the
The Neural Network’s learning could be performed command specified by the velocity regulator. For
on-line or off-line. synchronous motor, the secondary magnetic flux
Several advantages characterize the proposed (rotor) rotates at the same speed and in the same
strategy. The first one is related to the control direction as the primary flux (stator). To achieve the
system stability. En fact, in the worst case the above-mentioned goal, the three phases must be
controlled plant will operate according to the transformed into two equivalent perpendicular
conventional control loop performances and so, will phases by using the Park transformation which needs
ensure the control system’s stability. The second the rotor position, determined by a transducer or a
advantage of such strategy is related to the fact that tachometer. In synchronous machine, the main
the proposed architecture acts as a hybrid control parameters are Ld (inductance of d-phase), Lq
system where usual tasks are performed by a (inductance of q-phase), and Rs (statoric resistor),
conventional operator and unusual operations (such which vary in relation with currents (Id and Iq),
as highly non linear operations or those which are voltages (Vd and Vq), mechanical torque and speed
difficult to be modelled by conventional approaches) (of such machine). The relations between voltages or
are realized by neural network based component. currents depend on these three parameters defining
This second advantage leads to another main welfare the motor’s model. However, these parameters are
which is the implementation facility and so, the real- not easily available because of their strongly
time execution capability. Finally, the presented nonlinear dependence to the environment conditions
solution takes into account industrial environment and high number of influent conditions.
reality where most of control problems are related to The neural network is able to identify these
existent plants behaviours enhancement dealing with parameters and to correct the machine’s reference
an available (still implemented) conventional model, feeding back their real values through the
controller. This last advantage of the proposed control loop. Parameters are related to voltages,
solution makes it a viable option for industrial currents, speed and position. The command error
environment. (measured as voltage error) could be linked to the
plant’s parameters values error. In the first step, the
3.1.3 MLP Based Adaptive Controller command is computed using nominal theoretical
Driving Turning Machine plant parameters. The neural network learns the
plant’s behaviour comparing outputs voltages (Vd
The above-exposed neural based hybrid controller ,Vq), extracted from an impedance reference model,
has been used to enhance the conventional vector- with measured voltages (Vdm,Vqm). In the second
control driving a synchronous 3-phased alternative step when the system is learned, the neural network
motor. The goal of a vector control or field-oriented gives the estimated plant’s parameters to the
control is to drive a 3-phased alternative motor like controller (Madani, 1999).
an independent excitation D.C motor. This consists
Industrial and Real World Applications of Artificial Neural Networks 19
re so lve r
In v erter
is 1
E
is 2
L eg 1 L eg 2 L eg 3 stato r ro to r
p erm ane nt
Inve rt er le g s
m a g net s
co m m an d
S y n ch r o n o u s m a c h in e
PW M PW M PW M stato ric
m easu rem ent
D S P C a rd ADC
cu rren ts
ADC
ADC
ADC
DC LOAD C o m p uter
Figure 6: View of the main plant and the load coupled to the main motor (left). Implementation block diagram (right).
Output SPEED
with Conventional
Vector controller
Figure 7: Experimental plant parameters identification by neural net (left). Experimental measured speed when the plant is
unloaded (right).
The complete system, including the intelligent inefficiency of the conventional control loop
neuro-controller, a power interface and a permanent (achieving a 74 rad/sec angular speed).
synchronous magnet motor (plant), has been
implemented according to the bloc diagram of figure 3.2 Kernel Functions ANN Based
6. Our intelligent neuro-controller has been Image Processing for Industrial
implemented on a DSP based board. In this board,
the main processor is the TMS C330 DSP from Applications
Texas Instruments. The learning data base includes
675 different values of measurement extracted Characterization by a point and an influence field
motor’s parameters (Ld and Lq). Different values of (shape) in the problem’s N-D feature space of a
measurable parameters (currents, voltages, speed learned becomes particularly attractive when the
and position), leading to motor’s parameters problem’s feature space could be reduced to a 2-D
extraction, have been obtained for different space. In fact, in this case, the learning process, in
operation modes of the experimental plant, used to the frame of kernel functions ANN, could be
validate our concepts. The ANN learning is shifted interpreted by a simple mapping model. In the case
for 4 seconds after power supply application to of images the bi-dimensionality (2-D nature) is a
avoid unstable data in the starting phase of the natural property. That’s why, such kind of neural
motor. models and issued techniques become very attractive
Figures 7 gives experimental results relative to for image processing issues. Moreover, their relative
the motor’s internal parameter evolution and the implementation facility makes them powerful
plant’s measured speed, respectively. One can candidates to overcome a large class of industrial
remark from those figures that: requirements dealing with image processing and
- Internal plant model’s parameters are identified image analysis.
by the neural network. Before presenting the related industrial
- Such neural based controller compensates the applications, let focus the next sub-section on a brief
20 K. Madani
description of ZISC-036 neuro-processor from IBM, x memorize a prototype (64 components coded
which implements some of kernel functions ANN on 8 bits), the associated category (14 bits),
based models. an influence field (14 bits) and a context (7
bits),
3.2.1 IBM ZISC-036 Neuro-Processor x compute the distance, based on the selected
norm (norm L1 given by relation or LSUP)
The IBM ZISC-036 (Tremiolles, 1996) (Tremiolles, between its memorized prototype and the
1997) is a parallel neural processor based on the input vector (the distance is coded on fourteen
RCE and KNN algorithms. Each chip is capable of bits),
performing up to 250 000 recognitions per second. x compare the computed distance with the
Thanks to the integration of an incremental learning influence fields,
algorithm, this circuit is very easy to program in
x communicate with other neurons (in order to
order to develop applications; a very few number of
find the minimum distance, category, etc.),
functions (about ten functions) are necessary to
x adjust its influence field (during learning
control it. Each ZISC-036 like neuron implements
phase).
two kinds of distance metrics called L1 and LSUP
respectively. Relations (14) and (15) define the
Two kinds of registers hold information in ZISC-
above-mentioned distance metrics were Pi represents
O36 architecture: global registers and neuron
the memorized prototype and Vi is the input pattern. registers. Global registers hold information for the
The first one (L1) corresponds to a polyhedral device or for the full network (when several devices
volume influence field and the second (LSUP) to a are cascaded). There are four global registers
hyper-cubical influence field. implemented in ZISC-036: a 16-bits Control &
n Status Register (CSR), a 8-bits Global Context
L1: dist ¦ V Pi i (14) Register (GCR), a 14-bits Min. Influence Field
register (MIF) and a 14-bits Max. Influence Field
i 0
register (MAF). Neuron registers hold local data for
LSUP: dist max Vi Pi (15) each neuron. Each neuron includes five neuron
i 0...n
registers: Neuron Weight Register (NWR), which is
Figure 8 gives the ZISC-036 chip’s bloc diagram a 64-by-8 bytes register, a 8-bits Neuron Context
and an example of input feature space mapping in a Register (NCR), Category register (CAT), Distance
2-D space. A 16 bit data bus handles input vectors register (DIST) and Neuron Actual Influence Field
as well as other data transfers (such as category and register (NAIF). The last three registers are both 14-
distance), and chip controls. Within the chip, bites registers. Association of a context to neurons is
controlled access to various data in the network is an interesting concept, which allows the network to
performed through a 6-bit address bus. ZISC-036 is be divided in several subsets of neurons. Global
composed of 36 neurons. This chip is fully Context Register (GCR) and Neuron Context
Register (NCR) hold information relative to such
cascadable which allows the use of as many neurons
subdivision at network and neuron levels
as the user needs (a PCI board is available with a
respectively. Up to 127 contexts can be defined.
684 neurons). A neuron is an element, which is able
to:
V2 V2
(a) V1 (b) V1
Figure 8: IBM ZISC-036 chip’s bloc diagram (left) and an example of input feature space mapping in a 2-D space using
ROI and 1-NN modes, using norm L1 (right).
Industrial and Real World Applications of Artificial Neural Networks 21
3.2.2 Application in Media and Movie An example (pattern) from the learning base is
Production Industry chosen and the learning criterion for that example is
calculated. If the value of the learning criteria is
The first class of applications concerns image greater than the threshold, then a neuron is engaged
enhancement in order to: restore old movies (noise (added). If the learning criteria’s value is less than
reduction, focus correction, etc.), improve digital the threshold, no neuron is engaged. The
television, or handle images which require adaptive aforementioned threshold is decreased progressively.
processing (medical images, spatial images, special Once learning database is learned the training phase
effects, etc.). is stopped. Figure 9 shows a pattern-to-category
The used principle is based on an image's association learning example and the generalization
physics phenomenon which states that when looking (application) phase for the case of an image
at an image through a small window, there exist enhancement process.
several kinds of shapes that no one can ever see due The image enhancement or noise reduction
to their proximity and high gradient (because, the principles are the same as described above. The
number of existing shapes that can be seen with the main difference lies in the pixel value associated to
human eye is limited). ZISC-036 is used to learn as each memorized example. In noise reduction, the
many shapes as possible that could exist in an learned input of the neural network is a noisy form
image, and then to replace inconsistent points by the of the original image associated with the correct
value of the closest memorized example. The value (or form). For example, in the figure 9
learning phase consists of memorizing small blocks learning process example, for each learned pattern (a
of an image (as an example 5x5) and associating to block of 5x5) from the input image (degraded one),
each the middle pixel’s value as a category. These the middle pixel of the corresponding block from the
blocks must be chosen in such a way that they output image (correct one) is used as the "corrected
represent the maximum number of possible pixel value" and is memorized as the associated
configurations in an image. To determine them, the category. After having learned about one thousand
proposed solution consists of computing the five hundred examples, the ZISC-036 based system
distances between all the blocks and keeping only is able to enhance an unlearned image.
the most different. Figure 10 gives results corresponding to movie
The learning algorithm used here incorporates a sequences coloration. In this application unlearned
threshold and learning criteria (Learn_Crit (V)). The scenes of a same sequence are collared (restored) by
learning criteria is the criteria given by relation (16) learning a representative (sample) scene of the same
k
where Vl represents the l-th component of the input sequence. For both cases of image restoration and
k j coloration it has been shown (Tremiolles, 1998)
vector V , Pl represents the l-th component of the (Madani, 2003) that the same neural concept could
k
j-th memorized prototype, C represents the perform different tasks as noise reduction, image
k enhancement and image coloration which are
category value associated to the input vector V ,
j necessary to restore a degraded movie. Quantitative
C is the category value associated to the comparative studies established and analysed in
j
memorized prototype P and, D and E are real above-mentioned references show pertinence of such
coefficients adjusted empirically. techniques.
Learn _ Crit V k D V k P j E C k C j
¦ l l
(16)
l
(a) (b)
WTA
WTA
Figure 9: Image enhancement learning process using association of regions from the degraded and correct images (left) and
image enhancement operation in generalization phase using an unlearned image (right).
22 K. Madani
Figure 10: Result concerning movie coloration showing from left to right the image used to train the neural network and the
result obtained on coloration of an unlearned scene (left). Blue component cross sections comparison between the coloured
(reconstructed) and the original images in generalization phase (right).
3.2.3 Probe Mark Inspection in VLSI Chips time execution (production constraints) and methods
Production reliability. In fact, even sophisticated hardware
implementations using DSPs and ASICs specialized
One of the main steps in VLSI circuit production is in image processing are not able to perform
the testing step. This step verifies if the final product sufficiently well to convince industrials to switch
(VLSI circuit) operates correctly or not. The from human operator (expert) defects recognition to
verification is performed thank to a set of electronically automatic PMI. That’s why a neural
characteristic input signals (stimulus) and associated network based solution has been developed and
responses obtained from the circuit under test. A set implemented on ZISC-036 neuro-processor, for the
of such stimulus signals and associated circuit’s IBM Essonnes plant. The main advantages of
responses are called test vectors. Test vectors are developed solutions are real-time control and high
delivered to the circuit and the circuit’s responses to reliability in fault detection and classification tasks.
those inputs are catch through standard or test Our automatic intelligent PMI application, detailed
dedicated Input-Output pads (I/O pads) called also in (Tremiolles, 1997) and (Madani, 2003, a),
vias. As in the testing step, the circuit is not yet consists of software and a PC equipped with this
packaged the test task is performed by units, which neural board, a video acquisition board connected to
are called probers including a set of probes a camera and a GPIB control board connected to a
performing the communication with the circuit. wafer prober system. Its goal is image analysis and
Figure 11 shows a picture of probes relative to such prober control.
probers. The problem is related to the fact that the The process of analyzing a probe mark can be
probes of the prober may damage the circuit under described as following: the PC controls the prober to
test. So, an additional step consists of inspecting the move the chuck so that the via to inspect is precisely
circuit’s area to verify vias (I/O pads) status after located under the camera; an image of the via is
circuit’s testing: this operation is called developed taken through the video acquisition board, then, the
Probe Mark Inspection (PMI). Figure 11 shows a ZISC-036 based PMI:
view of an industrial prober and examples of faulty x finds the via on the image,
and correct vias. x checks the integrity of the border (for
Many prober constructors had already developed damage) of via,
PMI software based on conventional pattern x locates the impact in the via and estimates its
recognition algorithms with little success]. The surface for statistics.
difficulty is related to the compromise between real
Figure 11: Photograph giving an example of probes in industrial prober (left). Example of probe impact: correct and faulty
(right).
Industrial and Real World Applications of Artificial Neural Networks 23
Grey Level
Faulty OK
Faulty OK
pixels
Faulty OK
Figure 12: Example of profiles extraction after via centring process (left). Example of profiles to category association
during the learning phase (right).
Figure 13: Profiles extraction for size and localization of the probe mark (left). Experimental result showing a fault
detection and its localization in the via (right).
All vias of a tested wafer are inspected and was negligible compared to the time spent for
analysed. At the end of the process, the system mechanical movements, as well as for the image
shows a wafer map which presents the results and acquisition (a ratio of 12 to 1 on any via). This
statistics on the probe quality and its alignment with application is presently inserted on a high throughput
the wafer. All the defects are memorized in a log production line.
file. In summary, the detection and classification
tasks of our PMI application are done in three steps: 3.3 Bio-inspired Multiple Neural
via localization in the acquired image, mark size Networks Based Process
estimation and probe impact classification (good, Identification
bad or none).
The method, which was retained, is based on
The identification task involves two essential steps:
profiles analysis using kennel functions based ANN.
structure selection and parameter estimation. These
Each extracted profile of the image (using a square
two steps are linked and generally have to be
shape, figures 12 and 13) is compared to a reference
realized in order to achieve the best compromise
learned database in which each profile is associated
between error minimization and the total number of
with its appropriated category. Different categories,
parameters in the final global model. In real world
related to different needed features (as: size,
applications (situations), strong linearity, large
functional signature, etc).
number of related parameters and data nature
Experiments on different kinds of chips and on
complexity make the realization of those steps
various probe defects have proven the efficiency of
challenging, and so, the identification task difficult.
the neural approach to this kind of perception
To overcome mentioned difficulties, one of the
problem. The developed intelligent PMI system
key points on which one can act is the complexity
outperformed the best solutions offered by
reduction. It may concern not only the problem
competitors by 30%: the best response time per via
representation level (data) but also may appear at
obtained using other wafer probers was about 600
processing procedure level. An issue could be model
ms and our neural based system analyzes one via
complexity reduction by splitting a complex
every 400 ms, 300 of which were taken for the
problem into a set of simpler problems: multi-
mechanical movements. Measures showed that the
modelling where a set of simple models is used to
defect recognition neural module’s execution time
24 K. Madani
N.N.M. Yk
k
Output-k
Input
N.N.M. YM
M
Output-M
Supervisor
Scheduler
Unit
Figure 14: Left side of a bird’s brain scheme and it’s auditory and motor pathways involved in the recognition and the
production of song (left) and inspired T-DTS multiple model generator's general bloc-diagram (right).
sculpt a complex behaviour (Murray, 1997). On this system for processing unlearned (work) data. The
basis and inspired from animal brain structure (left SSU, constructed during the learning phase, receives
picture of figure 14, showing the left side of a bird’s data and classifies that data (pattern). Then, the most
brain scheme and it’s auditory and motor pathways appropriated NNM is authorized (activated) to
involved in the recognition and the production of process that pattern.
song), we have designed an ANN based data driven W W WN
NNM NNM
Scheduler Unit SU
NNM SU
algorithm construct a treelike evolutionary neural
architecture automatically where nodes, called also
"Supervisor/Scheduler Units" (SU) are decision SU
units and leafs called also "Neural Network based
Models" (NNM) correspond to neural based NNM NNM NNM NNM NNM NNM NNM NNM
processing units. N
Number of Generated Models
0
ACKNOWLEDGEMENTS
Reported works were sponsored and supported by
several research projects and industrial partners
among which, French Ministry of Education, French
Ministry of Research and IBM-France Company.
Author whish thank especially Dr. P. Tanhoff, and
Dr. G. Detremiolles from IBM-France for their
partnership and joint collaboration. I would also
acknowledge Dr. V. Amarger, Dr. A. Chebira and
Dr. A. Chohra from my research team (I2S Lab.)
involved in presented works. I would thank Dr. G.
Figure 17: Process identification results showing the Mercier from PARIS XII University, who worked
plant’s output prediction in the working phase. with me, during his Ph.D. and during several years
in my lab, on intelligent adaptive control dilemma.
A Kohonen SOM based SU with a 4x3 grid Finally, I would express my gratitude to Mr. M.
generates and supervises 12 NNM trained from Rybnik, my Ph.D. student, working on aspects
learning database. Figures 16 and 17 show the bloc related to T-DTS, for useful discussions concerning
diagram of industrial processing loop and the the last part of this paper.
identification result in the working phase,
respectively. One can conclude that the predicted
output is in accord with the measured one, obtained
from the real plant. REFERENCES
Nelles, O., 1995. On the identification with neural
networks as series-parallel and parallel models. In
4 CONCLUSION ICANN’95, International Conference on Artificial
Neural Networks, Paris, France.
Advances accomplished during last decades in Faller W., Schreck S., 1995. Real-Time Prediction Of
Artificial Neural Networks area and issued Unsteady Aerodynamics : Application for Aircraft
techniques made possible to approach solution of a Control and Manoeuvrability Enhancement. In IEEE
large number of difficult problems related to Transac. on Neural Networks, Vol. 6, N¡ 6, Nov. 95.
optimization, modeling, decision making, Maidon Y., Jervis B. W., Dutton N., Lesage S., 1996.
classification, data mining or nonlinear functions Multifault Diagnosis of Analogue Circuits Using
(behavior) approximation. Inspired from biological Multilayer Perceptrons. In IEEE European Test
nervous systems and brain structure, these models Workshop 96, Montpellier, June 12-14, 1996.
take advantage from their learning and Anderson C.W., Devulapalli S.V., Stolz E.A., 1995.
generalization capabilities, overcoming difficulties Determining Mental State from EEG Signals Using
and limitations related to conventional techniques. Parallel Implementations of Neural Networks. In
Today, conjunction of these new techniques with Scientific Programming, Special Issue on Applications
recent computational technologies offers attractive Analysis, 4, 3, Fall, pp. 171-183.
potential for designing and implementation of real- Madani K., Bengharbi A., Amarger V., 1997. Neural Fault
time intelligent industrial solutions. The main goal Diagnosis Techniques for Nonlinear Analog Circuit.
of the present paper was focused on ANN based In SPIE Vol. 3077, pp 491-502, Orlando, Florida,
techniques and their application to solve real-world U.S.A., April 21 to 24, 1997.
and industrial problems. Of course, the presented Sachenko A., Kochan V., Turchenko V., Golovko V.,
models and applications don’t give an exhaustive Savitsky J., Dunets A., Laopoulos T., 2000. Sensor
state of art concerning huge potential offered by errors prediction using neural networks. In
such approaches, but they could give, through Proceedings IJCNN'2000, Jul 24-Jul 27 2000, Como,
above-presented ANN based applications, a good Italy, pp. 441-446.
idea of promising capabilities of ANN based Arbib M.A., 2003. Handbook of Brain Theory and Neural
solutions to solve difficult future industrial changes. Networks” 2ed. M.I.T. Press. 2003.
26 K. Madani
Hebb S., 1949. The Organization of Behaviour, Wiley and Albus J.S., 1975. A new Approach to Manipulator
Sons, New-York, U.S.A., 1949. Control, Transa of ASME, Sept. 1975 pp. 220-227.
Kohonen T., 1984. Self-Organization and Associative Comoglio R.F, 1992. CMAC Neural network Architecture
Memory, Springer-Verlag, Germany, 1984. of Autonomous Undersea Vehicle. In SPIE vol 1709.
Rumelhart D., Hinton G., Williams R., 1986. Learning Applications of artificial Neural Networks III, pp. 517-
Internal Representations by Error Propagation". 527, 1992.
Parallel Distributed Processing: Explorations in the Madani K., Mercier G., Dinarvand M., Depecker JC,
Microstructure of Cognition, MIT Press, MA, 1986. 1999. A Neuro-Vector based electrical machines
Bigot P., Cosnard M., 1993. Probabilistic Decision Trees driver combining a neural plant identifier and a
and Multilayered Perceptrons. In Proc. of the Europ. conventional vector controller. In SPIE Intern. Symp.
Symp. on A. N. N., ESANN'93, pp. 91-96, 1993. AeroSense’99, Orlando, Florida, USA, April 1999.
Bogdan M., Speakman H., Rosenstiel W., 1994. Kobold: Trémiolles G., Tannhof P., Plougonven B., Demarigny C.,
A neural Coprocessor for Back-propagation with on- Madani K., 1997. Visual Probe Mark Inspection, using
line learning. In Proc. NeuroMicro 94, Torino, Italy, Hardware Implementation of Artificial Neural
pp. 110-117. Networks, in VLSI Production. In LNCS. Biological
Reyneri L.M., 1995. Weighted Radial Basis Functions for and Artificial Computation:From Neuroscience to
Improved Pattern Recognition and Signal Processing. Technology, Ed.: J. Mira, R.M. Diaz and J. Cabestany
Neural Processing Letters, Vol. 2, No. 3, pp. 2-6, May - Springer Verlag Berlin Heidelberg, pp. 1374-1383,
1995. 1997.
Tremiolles G, 1998. Contribution to the theoretical study
Trémiolles G., Madani K., Tannhof P., 1996. A New
of neuromimetic models and to their experimental
Approach to Radial Basis Function’s like Artificial
validation: use in industrial applications. Ph.D.
Neural Networks. In NeuroFuzzy'96, IEEE European
Report, University of PARIS XII – Val de Marne.
Workshop, Vol. 6 N° 2, pp. 735-745, April 16 to 18,
Prague, Czech Republic, 1996. Madani K., Tremiolles G., Tanhoff P., 2003 - a. Image
processing using RBF like neural networks: A ZISC-
Hormel M.A., 1992. Self-organizing associative memory
036 based fully parallel implementation solving real
system for control applications. Advances Neural
world and real complexity industrial problems. In
Information processing Systems 2,Touretzky Ed. Los
Journal of Applied Intelligence N°18, 2003, Kluwer
Altos ,CA: Morgan Kaufmann,1992 pp. 332-339.
Academic Publishers, pp. 195-231.
Miller W.T, 1987. Sensor based control of robotic
Murray-Smith R., Johansen T.A., 1997. Multiple Model
manipulators using a general learning algorithm, IEEE
Approaches to Modeling and Control. Taylor &
J. of Robotics and Automation, pp. 157-165.
Francis Publishers, 1997, ISBN 0-7484-0595-X.
Madani K., Mercier G., Chebira A., Duchesne S., 1996.
Madani K., Chebira A., Rybnik M., 2003 - b. Data Driven
Implementation of Neural Network Based Real Time
Multiple Neural Network Models Generator Based on
Process Control on IBM Zero Instruction Set
a Tree-like Scheduler, LNCS "Computational Methods
Computer. In SPIE AeroSense'96, Applications and
in Neural Modeling", Ed. J. Mira, J.R. Alvarez -
Science of Artificial Neural Networks , Orlando, USA,
Springer Verlag 2003, ISBN 3-540-40210-1, pp. 382-
SPIE Proc. Vol. 2760, pp. 250-261.
389.
THE DIGITAL FACTORY
Planning and simulation of production in automotive industry
F. Wolfgang Arndt
Fachhochschule Konstanz, Fachbereich Informatik, Brauneggerstr. 55, 76xxx Konstanz, Germany
Email: arndt@fh-konstanz,de; wolfgang@ppgia.pucpr.bru
Abstract: To improve and to shorten product and production planning as well as to get a higher planning and product
quality the idea of the Digital Factory was invented. Digital Factory means a general digital support of
planning following the process chain from SURGXFW development over process and product planning to
production by using virtual working techniques. It follows that the whole process of developing a new
product with its associated production equipment has to be completely simulated before starting any
realisation. That calls for the integration of heterogeneous processes and a reorganisation of the whole
factory. The Digital Factory will be one of the core future technologies and revolutionize all research,
development and production activities in mechanical and electrical industries. International enterprises like
DaimlerChrysler and Toyota are making a considerable effort to introduce this technique as soon as possible
in their factories. It will give them a significant advance in time and costs.
27
J. Braz et al. (eds.), Informatics in Control, Automation and Robotics I, 27–29.
© 2006 Springer. Printed in the Netherlands.
28 F.W. Arndt
dized. The data outcome of every step of the work- assures, that the global database always contains the
flow has to be specified and measures have to be actual data.
taken, that the data of the workflow, when a step is There are standardized workflows and order or
finished, are immediately stored into a global factory client specific ones. The data outcome of the special
wide database. The final target is to start develop- workflow cannot be defined in advance, because the
ment and production -that means- any realisation activities or the workflow respectively depends on
only, if the simulation shows, that product and the work to do. Therefore it is very important to
production will met the given investments, the reduce the number of special workflows. They must
predefined time schedule and the necessary quality. be converted to standard workflows or integrated
into existing standard ones.
Every activity will be computer based. Each
process step has to be supported by a computer
3 GLOBAL DATA BASE system. There are different software systems
available on the market like Delmia Process
The success of simulation depends on the quality Engineer of Dassault Systémes. That assures that the
and actuality of the available data. At any moment defined sequence of steps of a workflow is
simulation must have access to the actual data of respected. A new step can only be initiated, if the
development and planning. The quality of the simu- previous one has been completed. After the
lation results depends on the quality and actuality of definition of the workflows and the outcome of each
the available data. step, the management of the workflows is done by
There are in every factory two different types of computer.
data, the geometric or engineering data, which are
produced, when a new product is developed and the
associated production line is planed, and the com-
mercial and administrative data, which are used by 5 SUBCONTRACTORS AND
the purchase, sales and controlling departments. COLLABORATIVE
First of all these both areas have to be to inte-
grated. To optimise e.g. the planning of a production ENDINEERING
line engineering and commercial data are needed.
Special data structures have to be implemented to Generally the production of a car manufacturer is
enable a data flow between these two areas. The data limited to the car body, the engine, the gearbox and
structures must be able to stores both types of data the assembly of the whole car. Therefore a large part
and to store all data, which the engineering and of the car components has to be developed and
commercial departments need. produced by subcontractors. But the concept of a
The design of theses structures is of paramount digital factory requires the simulation of the whole
importance for the well working of the digital vehicle and consequently the integration of the
factory. They must de designed to store all data and subcontractors.
to permit an effective and fast access to the data. The exchange of information between car manu-
When the data structures are defined, it must be facturer and subcontractors has to be started, before
assured that they always contain actual data. a component is completely developed. Both sides
have to inform each other of the daily progress of
work. That calls for collaborative engineering.
Something like a virtual team has to be created. The
4 WORKFLOW MANAGEMENT team members are working in different places, but
there is a permanent information exchange between
In an automotive factory at any moment a large them. If the development of the car body and the
number of activities are taking place. These engine is terminated, all components will be also
activities are embedded in different workflows. A available.
workflow consists of a sequence of different process This gives to the subcontractors tremendous
steps. The activities of each step and the sequence of problems. They have to dispose of the same simu-
the different activities must be defined. Every lation tools as the car manufacturer, which will
employee must respect the factory specific workflow cause high investments. They have to standardize
directions. their workflows, to deliver to the car manufacturer
For every process step the data outcome has to continuously information about the work in
be defined. As soon as a step is executed the progress. They need to use the similar data structures
generated data are stored in the global database. That to store engineering and commercial data. Every
The Digital Factory 29
partner must give to access to his engineering data to secret services can be prevented to seize data or
the other participants. As subcontractors normally hackers to destroy them.
are working for different car manufacturers, who are
using different simulation tools and have different
data structures, they will face considerable problems 7 SUMMARY
in the future.
Concept and realisation of the digital factory form a
key technology and will revolutionize significantly
the way development and planning is done in
6 DANGER AND UNRESOLVED mechanical and electrical industry. It will help to re-
PROBLEMS duce significantly the production costs and speed up
the product live cycle. But it will also increase the
Such a close collaboration needs a very intensive interdependence between the automotive industry or
data interconnection, which brings with out doubts leading companies respectively and their sub-
considerable dangers. There are still today no mea- contractors and make companies more vulnerable.
sures to protect data networks against foreigners
with an absolute security.
There are unresolved problems like how the own
REFERENCES
data can be protected against competitors, how a Schiller, E.; Seuffert, W.-P. Digitale Fabrik bei
furnisher can be hindered from passing secret DaimlerChrysler. In Sonderdruck Automobil Produktion
information to another car manufacturer, how to 2/2002, 2002.
WHAT'S REAL IN "REAL-TIME CONTROL SYSTEMS"?
Applying formal verification methods and real-time
rule-based systems to control systems and robotics
Albert M. K. Cheng
cheng@cs.uh.edu
University of Houston, Texas
USA
31
J. Braz et al. (eds.), Informatics in Control, Automation and Robotics I, 31–35.
© 2006 Springer. Printed in the Netherlands.
32 A.M.K. Cheng
Central to process algebras is the notion of Since the solutions to many of these decision
equivalence, which is used to show that two problems are often nondeterministic or cannot be
processes have the same behavior. Well-established easily expressed in algorithmic form, these
process algebras such as Hoare's Communicating applications increasingly employ rule-based (or
Sequential Processes (CSP) (1978, 1985), Milner's knowledge-based) expert systems. In recent years,
Calculus of Communicating Systems (CCS) (1980, such systems are also increasingly used to monitor
1989), and Bergstra and Klop's Algebra of and control the operations of complex safety-critical
Communicating Processes (ACP) (1985) have been real-time systems.
used to specify and analyze concurrent processes
with interprocess communication. These are untimed
algebras since they only allow one to reason about
the relative ordering of the execution steps and
8 REAL-TIME DECISION
events. SYSTEMS
To use a process algebra or a process-algebraic
approach to specify and analyze a system, we write A real-time decision system interacts with the
the requirements specification of the system as an external environment by taking sensor readings and
abstract process and the design specification as a computing control decisions based on sensor
detailed process. We then show that these two readings and stored state information. We can
processes are equivalent, thus showing the design characterize a real-time decision system by the
specification is correct with respect to the following model with 7 components:
requirements specification. Here, the requirements
specification may include the desired safety (1) a sensor vector x in X,
properties. (2) a decision vector y in Y,
(3) a system state vector s in S,
(4) a set of environmental constraints A,
(5) a decision map D, D: S * X -> S * Y,
7 REAL-TIME RULE-BASED (6) a set of timing constraints T, and
(7) a set of integrity constraints I.
DECISION SYSTEMS
As the complexity of control systems increases, In this model, X is the space of sensor input values,
it is obvious that more intelligent Y is the space of decision values, and S is the space
decision/monitoring/control software must be of system state values. (We shall use x(t) to denote
developed and installed to monitor and control these the value of the sensor input x at time t, etc.)
control systems. Real-time decision systems must The environmental constraints A are relations over
react torrr events in the external environment by X, Y, S and are assertions about the effect of a
making decisions based on sensor inputs and state control decision on the external world which in turn
information sufficiently fast to meet environment- affect future sensor input values. Environmental
imposed timing constraints. They are used in constraints are usually imposed by the physical
applications that would require human expertise if environment in which the real-time decision system
such decision systems are not available. Human functions.
beings tend to be overwhelmed by a transient The decision map D relates y(t+1), s(t+1) to x(t),
information overload resulting from an emergency s(t), i.e., given the current system state and sensor
situation, thus expert systems are increasingly used input, D determines the next decisions and system
under many circumstances to assist human state values. For our purpose, decision maps are
operators. implemented by rule-based programs.
These embedded control systems include airplane The decisions specified by D must conform to a set
avionics navigation systems, automatic vehicle of integrity constraints I. Integrity constraints are
control systems fly-by-wire Airbus 330/340/380 and relations over X, S, Y and are assertions that the
Boeing 777/7E7, smart robots (e.g., the Autonomous decision map D must satisfy in order to ensure safe
Land Vehicle), space vehicles (e.g., unmanned operation of the physical system under control. The
spacecrafts), the Space Shuttle and satellites, and the implementation of the decision map D is subject to a
International Space Station), electric and set of timing constraints T which are assertions
communication grid monitoring centers, portable about how fast the map D has to be performed. Let
wireless devices and hospital patient-monitoring
devices.
What’s Real in “Real-Time Control Systems”? 35
us consider a simple example of a real-time decision There are two practical problems of interest with
system. Suppose we want to automate a toy race car respect to this model: Analysis problem: Does a
so that it will drive itself around a track as fast as given rule-based decision program satisfy the
possible. The sensor vector consists of variables integrity and timing constraints of the real-time
denoting the position of the car and the distance of control system?
the next obstacle ahead. The decision vector consists
of two variables: one variable to indicate whether to Synthesis problem: Given a rule-based decision
accelerate, decelerate or maintain the same speed, program that
another variable to indicate whether to turn left, right satisfies the integrity constraints but is not fast
or keep the same heading. The system state vector enough to meet
consists of variables denoting the current speed and the timing constraints, can we transform the given
heading of the car. The set of environmental program into one
constraints consists of assertions that express the which meets both the integrity and timing
physical laws governing where the next position of constraints?
the car will be, given its current position, velocity,
and acceleration. The integrity constraints are
assertions restricting the acceleration and heading of In view of the safety-critical functions that
the car so that it will stay on the race track and not to computers and software are beginning to be relied
run into an obstacle. The decision map may be upon to perform in real time, it is incumbent upon us
implemented by some equational rule-based to ensure that some acceptable performance level
program. The input and decision variables of this can be provided by a rule-based program, subject to
program are respectively the sensor vector and reasonable assumptions about the quality of the
decision vectors. The timing constraint consists of a input.
bound on the length of the monitor-decide cycle of
the program, i.e., the maximum number of rule
firings before a fixed point is reached.
SUFFICIENT CONDITIONS FOR THE STABILIZABILITY OF
MULTI-STATE UNCERTAIN SYSTEMS, UNDER INFORMATION
CONSTRAINTS
Nicola Elia
Iowa State University
Abstract: We study the stabilizability of uncertain stochastic systems in the presence of finite capacity feedback. Mo-
tivated by the structure of communication networks, we consider a stochastic digital link that sends words
whose size is governed by a random process. Such link is used to transmit state measurements between the
plant and the controller. We extend previous results by deriving sufficient conditions for internal and external
stabilizability of multi-state linear and time-invariant plants. In accordance with previous publications, stabi-
lizability of unstable plants is possible if the link’s average transmission rate is above a positive critical value.
In our formulation the plant and the link can be stochastic. In addition, stability in the presence of uncertainty
in the plant is studied using a small-gain argument.
multi-state linear systems. Necessary conditions for by the type of constraints that arise in most computer
the multi-state case can also be found in (N. Martins networks, we consider the following class of stochas-
and Dahleh, 2004). As pointed out in (G. Nair, 2003), tic links:
non-commutativity creates difficulties in the study of
arbitrary time-varying stochastic systems. Results for Definition 2.1 (Stochastic Link) Consider a link
the fully-observed Markovian case over finite alpha- that, at every instant k, transmits r(k) bits. We de-
bets, in the presence of a deterministic link, can be fine it to be a stochastic link, provided that r(k) ∈
found in (G. Nair, 2003). {0, . . . , r̄} is an independent and identically distrib-
Besides the introduction, the paper has 3 sections: uted (i.i.d.) random process satisfying:
section 2 comprises the problem formulation and pre- r(k) = C − rδ (k) (2)
liminary definitions; in section 3 we prove suffi-
ciency conditions by constructing a stabilizing feed- where E[rδ (k)] = 0 and C ≥ 0. The term rδ (k)
back scheme for first order systems and section 4 ex- represents a fluctuation in the transfer rate of the link.
tends the sufficient conditions to a class of multi-state More specifically, the link
linear systems. r̄is a stochastic truncation
operator Fkl : {0, 1}r̄ → i=0 {0, 1}i defined as:
The following notation is adopted:
• Whenever that is clear from the context we refer to Fkl (b1 , . . . , br̄ ) = (b1 , . . . , br(k) ) (3)
a sequence of real numbers x(k) simply as x. In
such cases we may add that x ∈ R∞ . where bi ∈ {0, 1}.
• Random variables are represented using boldface Given x(0) ∈ [− 21 , 12 ] and d¯ ≥ 0, we consider nomi-
letters, such as w nal systems of the form:
• if w(k) is a stochastic process, then we use w(k) x(k + 1) = a(k)x(k) + u(k) + d(k) (4)
to indicate a specific realization. According to
the convention used for sequences, we may denote with |d(k)| ≤ d¯ and x(i) = 0 for i < 0.
w(k) just as w and w(k) as w.
• the expectation operator over w is written as E[w] 2.1 Description of Uncertainty in the
• if E is a probabilistic event, then its probability is Plant
indicated as P(E)
• we write log2 (.) simply as log(.) Let ∈ N+ {∞}, z̄f ∈ [0, 1) and z̄a ∈ [0, 1) be
given constants, along with the stochastic process za
• if x ∈ R∞ , then
and the operator Gf : R∞ → R∞ satisfying:
∞
x1 = |x(i)| |za (k)| ≤ z̄a (5)
i=0
Gf causal and Gf ∞() ≤ z̄f (6)
x∞ = sup |x(i)|
i∈N Given x(0) ∈ [− 21 , 12 ]
and d¯ ≥ 0, we study the
Definition 1.1 Let ∈ N+ {∞} be an upper- existence of stabilizing feedback schemes for the fol-
bound for the memory horizon of an operator. If lowing perturbed plant:
Gf : R∞ → R∞ is a causal operator then we de-
fine Gf ∞() as: x(k + 1) = a(k) (1 + za (k)) x(k) + u(k)
|Gf (x)(k)| +Gf (x)(k) + d(k) (7)
Gf ∞() = sup
maxj∈{k−+1,...,k} |x(j)|
k≥0,x=0 where the perturbation processes za and Gf (x) sat-
(1) isfy (5)-(6). Notice that za (k) may represent uncer-
Note that, since Gf is causal, Gf ∞(∞) is just the tainty in the knowledge of a(k), while Gf (x)(k) is
infinity induced norm of Gf : the output of the feedback uncertainty block Gf . We
chose this structure because it allows the representa-
Gf (x)∞
Gf ∞(∞) = Gf ∞ = supx=0 tion of a wide class of model uncertainty. It is also al-
x∞ lows the construction of a suitable stabilizing scheme.
Example 2.1 If Gf (x)(k) = µ0 x(k)+ ... +
µn−1 x(k − n + 1) then Gf ∞() = |µi | for
2 PROBLEM FORMULATION ≥ n.
We study the stabilizability of uncertain stochastic In general, the operator Gf may be nonlinear and
systems under communication constraints. Motivated time-varying.
Sufficient Conditions for the Stabilizability of Multi-State Uncertain Systems 39
2.2 Statistical Description of a(k) a(k), Gf (x)(k), za (k) and d(k), the worst case en-
velope x̄(k) is the random variable whose realization
The process a(k) is i.i.d. and independent of r(k) and is defined by:
x(0), meaning that it carries no information about the
x̄(k) = sup |x(k)| (12)
link nor the initial state. In addition, for convenience, x(0)∈[− 21 , 12 ]
we use the same representation as in (2) and write:
Consequently, x̄(k) is the smallest envelope that con-
log(|a(k)|) = R + lδa (k) (8) tains every trajectory generated by an initial condi-
where E[lδa (k)] = 0. Notice that lδa (k) is responsible tion in the interval x(0) ∈ [− 21 , 12 ]. We adopted the
for the stochastic behavior, if any, of the plant. Since interval [− 21 , 12 ] to make the paper more readable. All
a(k) is ergodic, we also assume that P (a(k) = 0) = results are valid if it is replaced by any other symmet-
0, otherwise the system is trivially stable. Such as- ric bounded interval.
sumption is also realistic if we assume that (7) comes Our problem consists in determining sufficient con-
from the discretization of a continuous-time system. ditions that guarantee the existence of a stabilizing
feedback scheme. The results must be derived for the
2.3 Functional Structure of the following notion of stability.
Feedback Interconnection Definition 2.4 (m-th
Moment Robust Stability) Let
m > 0, ∈ N+ {∞}, z̄f ∈ [0, 1), z̄a ∈ [0, 1) and
In the subsequent text we describe the feedback loop d¯ ≥ 0 be given. The system (7), under a given feed-
structure, which might also be designated as informa- back scheme, is m-th moment (robustly) stable pro-
tion pattern (Witsenhausen, 1971). Besides the plant, vided that the following holds:
there are two blocks denoted as encoder and controller
which are stochastic operators. At any given time k, limk→∞ E [x̄(k)m ] = 0 z̄f = d¯ = 0
we assume that both the encoder and the controller ∃b > 0, lim supk→∞ E [x̄(k)m ] < b otherwise
have access to a(0), . . . , a(k) and r(k − 1) as well as (13)
the constants , z̄f , z̄a and d.¯ The encoder and the
The first limit in (13) is an internal stabil-
controller are described as: ity condition while the second establishes exter-
• The encoder is a function Fke : Rk+1 → {0, 1}r̄ nal stability. The constant b must be such that
that has the following dependence on observations: lim supk→∞ E [x̄(k)m ] < b holds for all allowable
perturbations za and Gf (x) satisfying (5)-(6).
Fke (x(0), . . . , x(k)) = (b1 , . . . , br̄ ) (9)
• The control action results 2.5 Motivation for our Definition of
r̄ from a map, not necessar-
ily memoryless, Fkc : i=0 {0, 1}i → R exhibiting Stochastic Link and Further
the following functional dependence: Comments on the Information
u(k) = Fkc (b(k)) (10) Pattern
where b(k) are the bits successfully transmitted The purpose of this section1 is to motivate the trun-
through the link, i.e.: cation operator of definition 2.1. In addition, details
of the synchronization between the encoder and the
b(k) = F l (b1 , . . . , br̄ ) = b1 , . . . , br(k) (11)
k decoder are discussed in subsection 2.5.1.
Consider that we want to use a wireless medium
As such, u(k) can be equivalently expressed as
to transmit information between nodes A and B. In
u(k) = (Fkc ◦ Fkl ◦ Fke )(x(0), . . . , x(k)) our formulation, node A represents a central station,
which measures the state of the plant. The goal of the
Definition 2.2 ( Feedback Scheme) We define a feed- transmission system is to send information, about the
back scheme as the collection of a controller Fkc and state, from node A to node B, which represents a con-
an encoder Fke . troller that has access to the plant. Notice that node A
maybe a communication center which may communi-
2.4 Problem Statement and M-th cate to several other nodes, but we assume that node
B only communicates with node A. Accordingly, we
Moment Stability will concentrate on the communication problem be-
tween nodes A and B only, without loss of generality.
Definition 2.3 (Worst Case Envelope) Let x(k) be
the solution to (7) under a given feedback scheme. 1
This section is not essential for understanding the suf-
Given any realization of the random variables r(k), ficiency theorems of sections 3 and 4.
40 N.C. Martins, M.A. Dahleh and N. Elia
Definition 2.5 (Basic Communication Scheme) • Step 2: Wait until it can send an ACK signal to
We assume the existence of an external time- node A. Once ACK is sent, go to step 1.
synchronization variable, denoted as k. The interval The scheme of definition 2.5 is the simplest version
between k and k + 1 is of T seconds, of which of a class of media access control (MAC) protocols,
TT < T is reserved for transmission. We also denote denoted as Carrier Sense Multiple Access (CSMA).
the number of bits in each packet as Π, excluding A recent discussion and source of references about
headers. In order to submit an ordered set of packets CSMA is (M. Heusse, 2003). Such scheme also de-
for transmission, we consider the following basic scribes the MAC operation for a wireless communi-
communication protocol, at the media access control cation network between two nodes. Also, we adopt
level: the following strong assumptions:
(Initialization) A variable denoted by c(k) is used
to count how many packets are sent in the interval • Every time node A sends a packet to node B: either
t ∈ [kT, kT + TT ]. We consider yet another counter it is sent without error or it is lost. This assumption
p, which is used to count the number of periods for means that we are not dealing with, what is com-
which no packet is sent. The variables are initialized monly referred to as, a noisy channel.
as k = 0, p = 0 and c(0) = 0. • Every ACK signal sent by node B will reach node
(For node A) A before k changes to k + 1. This assumption
(Synchronization) If k changes to k := k + 1 then is critical to guarantee that no packets are wasted.
step 1 is activated. Notice that node B can use the whole interval
• Step1 The packets to be submitted for transmis- t ∈ (kT + TT , (k + 1)T ) to send the last ACK.
sion are numbered according to their priority; 0 During this period, the controller is not expecting
is the highest priority. The order of each packet new packets. The controller will generate u(k)
is included in the header of the packet. The vari- using the packets that were sent in the interval
able c(k) is initialized to c(k) = 0 and p is in- t ∈ [kT, kT + TT ]. Consequently, such ACK is
cremented to p := p + 1. The first packet (packet not important in the generation of u(k). It will be
number 0) has an extra header, comprising the pair critical only for u(i) for i > k.
(c(k − p − 1), p). Move to step 2. We adopt k, the discrete-time unit, as a reference.
• Step 2: Stands by until it can send packet number According to the usual framework of digital control,
c(k). If such opportunity occurs, move to step 3. k will correspond to the discrete time unit obtained
• Step 3: Node A sends packet number c(k) to node by partitioning the continuous-time in periods of du-
B and waits for an ACK signal from node B. If node ration T . Denote by TT < T the period allocated
A receives an ACK signal then c(k) := c(k) + 1, for transmission. Now, consider that the aim of a
p = 0 and move back to step 2. If time-out then go discrete-time controller is to control a continuous-
back to Step 2. time linear system, which admits2 a discretization of
the form xc ((k + 1)T ) = A(k)xc (kT ) + u(k). The
The time-out decision may be derived from several discretization is such that u(k) represents the effect
events: a fixed waiting time; a random timer or a new of the control action over t ∈ (kT + TT , (k + 1)T ).
opportunity to send a packet. Information about x(k) = xc (kT ), the state of the
(For node B) plant at the sampling instant t = kT , is transmitted
• Step 1: Node B stands by until it receives a packet during t ∈ [kT, kT + TT ]. Whenever k changes, we
from node A. Once a packet is received, check if it construct a new queue and assume that the cycle of
is a first packet: if so, extract (c(k − p − 1), p) and definition 2.5 is reset to step 1.
construct rdec (i), with i ∈ {k − p − 1, . . . , k − 1},
according to: 2.5.1 Synchronization Between the Encoder and
the Decoder
(If p ≥ 1)
rdec (k − p − 1) = c(k − p − 1)Π (14) Denote by renc (k) the total number of bits that the en-
coder has successfully sent between k and k + 1, i.e.,
rdec (i) = 0, i ∈ {k − p, . . . , k − 1} (15) the number of bits for which the encoder has received
(If p = 0) an ACK. The variable renc (k) is used by the encoder
to keep track of how many bits were sent. The cor-
rdec (k − 1) = c(k − 1)Π (16) responding variable at the decoder is represented as
rdec (k). From definition 2.5, we infer that rdec (k −1)
where Π is the size of the packets, excluding the
header. If the packet is not duplicated then make 2
A controllable linear and time-invariant system admits
the packet available to the controller. Move to step a discretization of the required form. If the system is sto-
2. chastic an equivalent condition has to be imposed
Sufficient Conditions for the Stabilizability of Multi-State Uncertain Systems 41
may not be available at all times. On the other hand, 3 SUFFICIENCY CONDITIONS
we emphasize that the following holds: FOR THE ROBUST
STABILIZATION OF FIRST
c(k) = 0 =⇒ rdec (i) = renc (i), i ∈ {0, . . . , k − 1} ORDER LINEAR SYSTEMS
(17)
In section 3, the stabilizing control is constructed in
In this section, we derive constructive sufficient con-
a way that: if no packet goes through between k and
ditions for the existence of a stabilizing feedback
k + 1, i.e., c(k) = 0 then u(k) = 0. That shows
scheme. We start with the deterministic case in sub-
that rdec (k − 1) is not available only when it is not
section 3.1, while 3.2 deals with random r and a. We
needed. That motivated us to adopt the simplifying
stress that our proofs hold under the framework of
assumption that r(k − 1) = renc (k − 1) = rdec (k −
section 2. The strength of our assumptions can be
1). We denote by r(k) the random variable which
accessed from the discussion in section 2.5.
represents the total number of bits that are transmitted
The following definition introduces the main idea
in the time interval t ∈ [kT, kT + TT ]. The r(k)
behind the construction of a stabilizing feedback
transmitted bits are used by the controller to generate
scheme.
u(k). Notice that our scheme does not pressupose
an extra delay, because the control action will act, in Definition 3.1 (Upper-bound Sequence) Let z̄f ∈
continuous time, in the interval t ∈ (kT + TT , (k + [0, 1), z̄a ∈ [0, 1), d¯ ≥ 0 and ∈ N+ {∞} be
1)T ). given. Define the upper-bound sequence as:
Given the transmission scheme described above, the re (k) = − log(2−r(k) + z̄a ) (19)
only remaining degrees of freedom are how to en-
Definition 3.2 Following the representation for r(k)
code the measurement of the state and how to con-
we also define Ce and rδe (k) such that:
struct the queue. From the proofs of theorems 3.2 and
3.4, we infer that a sufficient condition for stabiliza- re (k) = Ce − rδe (k) (20)
tion is the ability to transmit, between nodes A and B,
an estimate of the state x̂(k) with an accuracy lower- where E[rδe (k)] = 0.
bounded3 by E[|x̂(k)−x(k)|m ] < 2−R , where R > 0
is a given constant that depends on the state-space rep- We adopt v(0) = 21 to guarantee that |x(0)| ≤
resentation of the plant. Since the received packets v(0). If x(0) = 0 then we can select v(0) = 0. Notice
preserve the original order of the queue, we infer that that the multiplicative uncertainty z̄a acts by reduc-
the best way to construct the queues, at each k, is to ing the effective rate re (k). After inspecting (19), we
compute the binary expansion of x(k) and position find that re (k) ≤ min{r(k), − log(z̄a )}. Also, notice
the packets so that the bits corresponding to higher that:
powers of 2 are sent first. The lost packets will al- z̄a = 0 =⇒ (re (k) = r(k), rδe (k) = rδ (k), C = Ce )
ways4 be the less important. The abstraction of such (21)
procedure is given by the truncation operator of defi-
nition 2.1. The random behavior of r(k) arises from Definition 3.3 (Stabilizing feedback scheme) We
random time-out, the existence of collisions generated make use of the sequence specified in definition 3.1.
by other nodes trying to communicate with node A or Notice that v(k) can be constructed at the controller
from the fading that occurs if node B is moving. The and the encoder because both have access to , z̄f ,
fading fenomena may also occur from interference. ¯ r(k − 1) and a(k − 1).
z̄a , d,
The feedback scheme is defined as:
• Encoder: Measures x(k) and computes bi ∈ {0, 1}
3
such that:
This observation was already reported in (Tatikonda,
2000a) r̄
1
4
The situation were the packets lost are in random posi- (b1 , . . . , br̄ ) = arg max bi i
Σi=1 bi 2i ≤( 2v(k) + 2 ) i=1 2
r̄ 1 x(k) 1
tions is characteristic of large networks where packets travel
through different routers. (22)
42 N.C. Martins, M.A. Dahleh and N. Elia
Place (b1 , . . . , br̄ ) for transmission. For any 3.1 The Deterministic Case
r(k) ∈ {0, . . . , r̄}, the above construction pro-
vides the following centroid approximation x̂(k) We start by deriving a sufficient condition for the ex-
for x(k) ∈ [−v(k), v(k)]: istence of a stabilizing feedback scheme in the deter-
ministic case, i.e., r(k) = C and log(|a(k)|) = R.
r(k)
1 1 1
x̂(k) = 2v(k)( bi + r(k)+1 − ) (23) Subsequently, we move for the stochastic case where
i=1
2i 2 2 we derive a sufficient condition for stabilizability.
which satisfies |x(k) − x̂(k)| ≤ 2−r(k) v(k). Theorem 3.2 (Sufficiency conditions for Robust
Stability) Let ∈ N+ {∞}, z̄f ∈ [0, 1), z̄a ∈ [0, 1)
• Controller: From the r̄ bits placed for transmission
in the stochastic link, only r(k) bits go through. and d¯ ≥ 0 be given and h(k) be defined as
Compute u(k) as: h(k) = 2k(R−Ce ) , k ≥ 0
u(k) = −a(k)x̂(k) (24) where Ce = re = − log(2−C + z̄a ).
As expected, the transmission of state information Consider that x(k) is the solution of (7) under the
through a finite capacity medium requires quantiza- feedback scheme of definition 3.3 as well as the fol-
tion. The encoding scheme of definition 3.3 is not an lowing conditions:
exception and is structurally identical to the ones used • (C 1) Ce > R
by (R. W. Brocket, 2000; Tatikonda, 2000b), where • (C 2) z̄f h1 < 1
sequences were already used to upper-bound the state If conditions (C 1) and (C 2) are satisfied then the
of the plant. following holds for all |d(t)| ≤ d, ¯ Gf ∈ ∆f, and
The following lemma suggests that, in the con- |za (k)| ≤ z̄a :
struction of stabilizing controllers, we may choose to
h1 d¯ + 12 ¯ 1
focus on the dynamics of the sequence v(k). That x̄(k) ≤ h1 z̄f + d + h(k) (28)
simplifies the analysis in the presence of uncertainty 1 − h1 z̄f 2
because the dynamics of v(k) is described by a first- where ∆f, is given by:
order difference equation. ∆f, = {Gf : R∞ → R∞ : Gf ∞() ≤ z̄f } (29)
Lemma 3.1 Let z̄f ∈ [0, 1), z̄a ∈ [0, 1) and d¯ ≥ 0 be Proof: From definition 3.1, we know that, for arbi-
given. If x(k) is the solution of (7) under the feedback trary ∈ N+ {∞}, the following is true:
scheme of definition 3.3, then the following holds:
v(k + 1) = 2R−Ce v(k)
x̄(k) ≤ v(k)
+ z̄f max{v(k − + 1), . . . , v(k)} + d¯ (30)
for all ∈ N+ {∞}, every choice Gf ∈ ∆f, and
|za (k)| ≤ z̄a , where Solving the difference equation gives:
v(k) = 2k(R−Ce ) v(0)
∞ ∞
∆f, = {Gf : R → R : Gf ∞() ≤ z̄f } (25)
k−1
Proof: We proceed by induction, assuming that + 2(k−i−1)(R−Ce )
x̄(i) ≤ v(i) for i ∈ {0, . . . , k} and proving that i=0
x̄(k + 1) ≤ v(k + 1). From (7), we get: × z̄f max{v(i − + 1), . . . , v(i)} + d¯ (31)
u(k) which, using Πk v∞ = max{v(0), . . . , v(k)},
|x(k + 1)| ≤ |a(k)||x(k) + | leads to:
a(k)
v(k) ≤ h1 (z̄f Πk v∞ + d) ¯ + 2k(R−Ce ) v(0) (32)
+|za (k)||a(k)||x(k)| + |Gf (x)(k)| + |d(k)| (26)
The way the encoder constructs the binary expansion But we also know that 2k(R−Ce ) is a decreasing func-
of the state, as well as (24), allow us to conclude that tion of k, so that:
Πk v∞ ≤ h1 (z̄f Πk v∞ + d) ¯ + v(0) (33)
u(k)
|x(k) + | ≤ 2−r(k) v(k) which implies:
a(k)
Now we recall that |za (k)| ≤ z̄a , |Gf (x)(k)| ≤ h1 d¯ + v(0)
Πk v∞ ≤ (34)
¯
z̄f max{v(k − + 1), . . . , v(k)} and that |d(k)| ≤ d, 1 − h1 z̄f
so that (26) implies: Direct substitution of (34) in (32) leads to:
h1 d¯ + v(0)
|x(k + 1)| ≤ |a(k)|(2−r(k) + z̄a )v(k) v(k) ≤ h1 z̄f + d +2k(R−Ce ) v(0)
¯
1 − h1 z̄f
+ z̄f max{v(k − + 1), . . . , v(k)} + d¯ (27) (35)
The proof is concluded once we realize that |x(0)| ≤ The proof is complete once we make v(0) = 21 and
v(0). use lemma 3.1 to conclude that x̄(k) ≤ v(k).
Sufficient Conditions for the Stabilizability of Multi-State Uncertain Systems 43
3.2 Sufficient Condition for the which, using the inductive assumption, implies the
Stochastic Case following inequality:
1
1
E[v(k + 1)m ] m +hm 1 m z̄f Πk vm ∞ + d¯ (45)
1 1
≤ E[2m(log(|a(k)|)−re (k))
] E[v(k) ]
m m m
where we use
1
+ z̄f E[max{v(k − + 1), . . . , v(k)}m ] m + d¯ (40) Πk vm ∞ = max{vm (0), . . . , vm (k)}
44 N.C. Martins, M.A. Dahleh and N. Elia
but stabilizable, then we can ignore the stable dynam- where JiR (k) ∈ Rqi are given by:
ics and consider only the unstable part which can be
written in the form (50). R sgn(ηi (k))I ηi (k) ∈ R
Ji (k) =
If the system is stochastic then, in general, there is diag(R(θi (k)), . . . , R(θi (k))) otherwise
no state transformation leading to A(k) in real Jor- (56)
dan form. The following is a list of conditions, un-
der which a state-space representation of the form For technical reasons, we use the idea of
x(k + 1) = A(k)x(k) + u(k) can be transformed (Tatikonda, 2000a) and study the stability of x given
by:
in a new one, for which à is in real Jordan form:
• When the original dynamic matrices are already in x(k) = RÃ (k − 1)−1 · · · RÃ (0)−1 x̃(k) (57)
real Jordan form. A particular instance of that are
Remark 4.1 The motivation for such time-varying
the second order stochastic systems with complex
transformation is that, by multiplying (50) on the left
poles.
by RÃ (k)−1 · · · RÃ (0)−1 , the nominal dynamics of
• A collection of systems with a state-space realiza- x is given by:
tion of the type x(k +1) = J(k)x(k)+u(k) which
connected in a shift-invariant topology. Here we x(k + 1) = A(k)x(k) + d(k) + u(k) (58)
used the fact that if several copies of the same sys-
tem are connected in a shift-invariant topology then where d(k) = RÃ (k − 1)−1 · · · RÃ (0)−1 d̃(k),
they can be decoupled by means of a time-invariant u(k) = RÃ (k − 1)−1 · · · RÃ (0)−1 ũ(k) and A(k)
transformation (N. C. Martins, 2001). is the following upper-triangular matrix6 :
Still, the representation (50)-(51) cannot be stud-
ied directly due to the fact that it may have com- A(k) = RÃ (k)−1 Ã(k)
plex eigenvalues. We will use the idea in (Tatikonda, |λ1 (Ã(k))| ···
2000a) and show that, under certain conditions, there = ..
.
..
(59)
exists a transformation which leads to a more conve- 0 .
nient state-space representation. Such representation 0 0 |λn (Ã(k))|
has a dynamic matrix which is upper-triangular and
The following proposition is a direct consequence
has a diagonal with elements given by |λi (Ã(k))|.
of the previous discussion:
If we denote R(θ) as the following rotation:
Proposition 4.1 (Condition for equivalence of repre-
cos(θ) sin(θ)
R(θ) = (52) sentations) Let Ã(k) be such that RÃ (k) satisfies:
−sin(θ) cos(θ)
then the general structure of Ji (k) ∈ Rqi is: sup RÃ (k)−1 · · · RÃ (0)−1 1 ≤ Γ1 < ∞ (60)
(If ηi (k) is real) k
η (k) −1
i 1 ··· sup RÃ (k)−1 · · · RÃ (0)−1 1 ≤ Γ2 < ∞
k
.. (61)
0 ηi (k) 1 .
Ji (k) = . (53) Under the above conditions, the stabilization of (58)-
. ..
.
. (59) and the stabilization of (50)-(51) are equivalent
0 0 0 in the sense of (62)-(63).
(otherwise)
lim sup x(k)∞ ≤ Γ1 lim sup x̃(k)∞
k→∞ k→∞
Ji (k) ≤ Γ1 Γ2 lim sup x(k)∞ (62)
k→∞
|ηi (k)|R(θi (k)) I ··· 0
= 0 |η (k)|R(θ i (k)) I 0
i
.. .. lim sup E[x(k)m
∞ ] ≤ Γ1 lim sup E[x̃(k)∞ ]
m m
. . k→∞ k→∞
Remark 4.2 Examples of Ã(k) for which (60)-(61) 4.3 Feedback Structure and Channel
hold are: Usage Assumptions
• all time-invariant Ã
• Ã(k) = diag(J1 (k), . . . , Jq (k)) where qi are in- In order to study the stabilization of systems of order
variant. higher than one, we assume the existence of a channel
• all 2-dimensional A(k). In this case RÃ (k) is al- allocation r(k) ∈ {0, . . . , r̄}n satisfying:
ways a rotation matrix, which includes the iden-
n
tity as a special case. Under such condition, the [r(k)]j = r(k) (68)
bounds in (60)-(61) are given by j=1
sup RÃ (k)−1 · · · RÃ (0)−1 1 ≤ 2 where r(k) is the instantaneous rate sequence as de-
k scribed in section 2.5.1. We also emphasize that A(k)
−1 and r(k) are i.i.d and independent of each other.
sup RÃ (k)−1 · · · RÃ (0)−1 1 ≤ 2 Using the same notation of section 1, we define Cj
k
and [rδ (k)]j as:
4.2 Description of Uncertainty and [r(k)]j = Cj − [rδ (k)]j (69)
Robust Stability
Similarly, we also define αi (m) as:
Let ∈ N+ {∞}, d¯ ≥ 0, z̄f ∈ [0, 1) and z̄a > 0 1 δ
be given constants then we study the stabilizability of αi (m) = log E[2m[r (k)]i ] (70)
m
the following uncertain system:
In the general case, the allocation problem is dif-
ficult because it entails a change of the encoding
x(k +1) = A(k)(I +Za (k))x(k)+u(k)+d(k) process described in section 2.5.2. The encoding must
be such that each [rδ (k)]i corresponds to the instanta-
+ Gf (x)(k) (64)
neous rate of a truncation operator. In section 4.8 we
solve the allocation problem for a class of stochastic
|λ1 (A(k))| · · ·
systems in the presence of a stochastic link.
A(k) = .. ..
0 . . (65) As in the one dimensional case, we assume that
0 0 |λn (A(k))| both the encoder and the controller have access to
A(0), . . . , A(k) and r(k − 1) as well as the constants
where d∞ ≤ d, ¯ |[Za (k)]ij | ≤ z̄a and Gf ∞() ≤ ¯ The encoder and the controller are
, z̄f , z̄a and d.
z̄f . Recall, from Proposition 4.1, that the stabilizabil- described as:
ity of a state-space representation of the form (50),
satisfying (60)-(61), can be studied in the equivalent • The encoder is a function Fke : Rn×(k+1) →
form where (65) holds. {0, 1}n×r̄ that has the following dependence on ob-
A given feedback scheme is robustly stabilizing if servations:
it satisfies the following definition. Fke (x(0), . . . , x(k)) = (b1 , . . . , br̄ ) (71)
Definition 4.2 (m-th Moment Robust Stability) Let where bi ∈ {0, 1} . n
m > 0, ∈ N+ {∞}, z̄f ∈ [0, 1), z̄a ∈ [0, 1) and
• The control action resultsfrom a map, not neces-
d¯ ≥ 0 be given. The system (64), under a given feed- r̄
back scheme, is m-th moment (robustly) stable pro- sarily memoryless, Fkc : i=0 {0, 1}n×i → R ex-
vided that the following holds: hibiting the following functional dependence:
(if z̄f = d¯ = 0) u(k) = Fkc (b(k)) (72)
lim E [x̄(k)m
∞] =0 (66)
k→∞ where b(k) is the vector for which, each compo-
(Otherwise) nent [b(k)]j , comprises a string of [r(k)]j bits suc-
cessfully transmitted through the link, i.e.:
= |A(k)| diag(2−[r(k)]1 , . . . , 2−[r(k)]n ) + z̄a11T Theorem 4.3 (Sufficiency conditions for Robust
Stability)
Let A be the dynamic matrix of (64), ∈
(75) N+ {∞}, z̄f ∈ [0, 1), z̄a ∈ [0, 1) and d¯ ≥ 0 be
given and H(k) be defined as
Adopt the feedback scheme of definition 3.3, mu-
H(k) = Akcl , k ≥ 0
tatis mutandis, for the multi-dimensional case. By
measuring the state x(k) and using [r(k)]j bits, at where Acl = |A| diag(2−C1 , . . . , 2−Cn ) + z̄a11T
time k, to encode each component [x(k)]j , we con-
struct [x̂(k)]j such that and [|A|]ij = |[A]ij |. Consider that x(k) is the solu-
tion of (64) under the feedback scheme of (76)-(77) as
well as the following conditions:
|[x(k)]j − [x̂(k)]j | ≤ 2−[r(k)]j [v(k)]j (76)
• (C 1) maxi λi (Acl ) < 1
Accordingly, u(k) is defined as: • (C 2) z̄f H1 < 1
If conditions (C 1) and (C 2) are satisfied then the
u(k) = −A(k)x̂(k) (77) following holds:
x̄(k)∞
The following lemma establishes that the stabiliza-
H1 d¯ + g̃∞ 12 1
tion of v(k) is sufficient for the stabilization of x(k). ≤ H1 z̄f + d¯ + g̃(k)∞
1 − z̄f H1 2
Lemma 4.2 Let z̄f ∈ [0, 1), z̄a ∈ [0, 1) and d¯ ≥ 0 be (79)
given. If x(k) is the solution of (64) under the feed-
where g̃(k) = Akcl1.
back scheme given by (76)-(77), then the following
holds: Proof: We start by noticing that the condition (C1)
is necessary and sufficient to guarantee that H1 is
[x̄(k)]j ≤ [v(k)]j finite. Following the same steps, used in the proof of
theorem 3.2, from definition 4.3, we have that:
for all ∈ N+ {∞}, d(k)∞ ≤ d, ¯ every choice
|[Za ]ij | ≤ z̄a and Gf ∞() ≤ z̄f .
k−1
v(k) = Akcl v(0) + Ak−i−1
cl
Proof: The proof follows the same steps as in lemma i=0
3.1. We start by assuming that [x̄(i)]j ≤ [v(i)]j for × z̄f max{v(i − + 1)∞ , . . . , v(i)∞ }1 + d¯1
i ∈ {0, . . . , k} and proceed to prove that [x̄(k+1)]j ≤
[v(k + 1)]j . From (64) and the feedback scheme (76)- (80)
48 N.C. Martins, M.A. Dahleh and N. Elia
1
1 Proof: We start by showing that E[[v(k)]m ≤
πk v∞ ≤ g̃∞ + H∞ (z̄f πk v∞ + d) ¯ (81) i ]
m
.. ¯
The increase of Ci causes the decrease of λi (Acl ) and Acl,m . + d1
H1 . Accordingly, conditions (C1) and (C2), from E[[v(k)]m
n]
m
1
[Am ]ij = E[|[A(k)]ij |m ] m + diag(2−C1 +α1 (m) , . . . , 2−Cn +αn (m) ) (89)
Lemma 4.4 (M-th moment boundedness) 1
If x(k) is the solution of (64) under the feedback [Am ]ij = E [|[A(k)]ij |m ] and [|A|]ij = |[A]ij |.
m
scheme of (76)-(77), then the following holds Consider that x(k) is the solution of (64) under the
1 feedback scheme of (76)-(77) as well as the following
E[[x̄(k)]m
i ]
m ≤ [v
m (k)]i conditions:
Sufficient Conditions for the Stabilizability of Multi-State Uncertain Systems 49
Proposition 4.6 Let ∈ N+ be a given constant. If G. Nair, S. Dey, R. J. E. (2003). Infimum data rates for sta-
C − α( m n ) > nβ(m) + nR then there exists constants
bilizing markov jump linear systems. In Proc. IEEE
d¯ > 0 and z̄f ∈ [0, 1) such that the state-space rep- Conference on Decision and Control, pp. 1176-81.
IEEE.
resentation (94) can be robustly stabilized in the m-th
Halmos, P. R. (1974). Measure Theory. Springer Verlag.
moment sense.
Liberzon, D. (2003). On stabilization of linear systems
Proof: From Proposition 4.1, we know that (94) can with limited information. In IEEE Transactions on
be written in the form (64)-(65). From section 4.7 we Automation and Control, Vol 48(2), pp. 304-7.
know that we can use Theorem 4.5 to guarantee that
M. Heusse, F. Rousseau, G. B.-S. A. D. (2003). sperfor-
the following is a sufficient condition for the existence mance anomaly of 802.11b. In Proc. IEEE Infocom.
of d¯ > 0 and z̄f ∈ [0, 1) such that (94) is robustly IEEE.
stabilizable:
N. C. Martins, S. Venkatesh, M. A. D. (2001). Controller
Ci > αi (m) + βi (m) + Ri (102) design and implementation for large scale systems,
a block decoupling approach. In Proceedings of the
where, in this case, Ri = R and βi (m) = β(m) is American Control Conference. ACC.
given by (101). On the other hand, by means of (99)-
(100), the assumption C − α( m N. Martins, N. E. and Dahleh, M. A. (2004). Feedback
n ) > nβ(m) + nR can stabilization of uncertain systems using a stochastic
be written as (102).
digital link. In Proceedings of the IEEE Conference
on Decision and Control. IEEE.
R. Horn, C. J. (1985). Matrix Analysis. Cambridge Univer-
ACKNOWLEDGEMENTS sity Press, New York, NY:, 2nd edition.
R. Jain, T. Simsek, P. V. (2002). Control under communi-
The authors would like to thank Prof. Sekhar cation constraints. In Proc. IEEE Conference on De-
Tatikonda (Yale University) for providing pre-print cision and Control, Vol. 5, pp. 3209-15. IEEE.
papers comprising some of his most recent results. R. W. Brocket, D. L. (2000). Quantized feedback stabi-
We also would like to thank Prof. Sanjoy Mitter lization of linear systems. In IEEE Trans. Automat.
(M.I.T.) for interesting discussions. This work was Control, vol 45, pp. 1279-1289. IEEE.
sponsored by the University of California - Los Ange-
Sahai, A. (1998). Evaluating channels for control: Capacity
les, MURI project title: “Cooperative Control of Dis- reconsidered. In Proceedings of the American Control
tributed Autonomous Vehicles in Adversarial Environ- Conference. ACC.
ments”, award: 0205-G-CB222. Nuno C. Martins
was supported by the Portuguese Foundation for Sci- Sahai, A. (2001). Anytime information theory. In Ph.D.
Dissertation. M.I.T.
ence and Technology and the European Social Fund,
PRAXIS SFRH/BPD/19008/2004/JS74. Nicola Elia Tatikonda, S. (2000a). Control under communication con-
has been supported by NSF under the Career Award straints. In Ph.D. Dissertation. M.I.T.
grant number ECS-0093950. Tatikonda, S. (2000b). Control under communication con-
straints: Part i and ii. In IEEE Trans. Automat. Control
(submitted). IEEE.
W. S. Wong, R. W. B. (1997). Systems with finite com-
REFERENCES munication bandwidth constraints -i: State estimation
problems. In IEEE Trans. Automat. Control, Vol 42,
Borkar, V. S. and Mitter, S. K. (1997). Lqg control pp. 1294-1298. IEEE.
with communication constraints. In Communications,
Computation, Control and Signal Processing:a tribute W. S. Wong, R. W. B. (1999). Systems with finite commu-
to Thomas Kailath. Kluwer Academic Publishers. nication bandwidth constraints -ii: Stabilization with
limited information feedback. In IEEE Trans. Au-
Elia, N. (2002). Stabilization of systems with erasure ac- tomat. Control, Vol 44, No. 5 pp. 1049-1053. IEEE.
tuation and sensory channels. In Proceedings of 40th
Allerton Conference. UIUC. Witsenhausen, H. (November 1971). Separation of estima-
tion and control for discrete-time systems. In Proceed-
Elia, N. (2003). Stabilization in the presence of fading chan- ing of the IEEE, Volume 59, No 11. IEEE.
nels. In Proceedings of the American Control Confer-
ence. ACC. X. Li, W. S. W. (1996). State estimation with communica-
tion constraints. In Systems and Control Letters 28,
G. Nair, R. J. E. (2000). Stabilization with data-rate-limited
pp. 49-54.
feedback: Tightest attainable bounds. In Systems and
Control Letters, Vol 41, pp. 49-76.
PART 1
Keywords: Measurement device, automation system, Configurable Device Handler, test bed.
Abstract: One of the most important topics in the field of automation systems is the integration of sensors, actuators,
measurement devices and automation subsystems. Especially automation systems like test beds in the
automotive industry impose high requirements regarding flexibility and reduced setup and integration time
for new devices and operating modes. The core function of any automation system is the acquisition,
evaluation and control of data received by sensors and sent to actuators. Sensors and actuators can be
connected directly to the automation systems. In this case they are parameterised using specific software
components, which determine the characteristics of every channel. In contrast to this, smart sensors,
measurement devices or complex subsystems have to be integrated by means of different physical
communication lines and protocols. The challenge for the automation system is to provide an integration
platform, which will offer easy and flexible way for the integration of this type of devices. On the one hand,
a sophisticated interface to the automation system should trigger, synchronise and evaluate values of
different devices. On the other hand, a simple user interface for device integration should facilitate the
flexible and straightforward device integration procedure for the customer. Configurable Device Handler is
a software layer in the automation system, which offers a best trade-off between the complex functionality
of intelligent devices and their integration in a simple, fast and flexible way. Due to a straightforward
integration procedure, it is possible to integrate new devices and operation modes in a minimum of time by
focusing on device functions and configuring the automation system, rather than writing software for
specific device subsystems. This article gives an overview of Configurable Device Handler, which was
implemented in the test bed automation system PUMA Open developed at the AVL. It provides an insight
into the architecture of the Configurable Device Handler and shows the principles and the ideas behind it.
Finally, new aspects and future developments are discussed.
system. Since the sensors and actuators are under the The former interface offers functions compatible
control of the real time system, they are usually to those of the ASAM-GDI Platform Adapter
completely integrated into the automation system. (ASAM, 2001). There are two main advantages of
Depending on the use of the sensor/actuator, specific the Platform Adapter. Firstly, it abstracts the
parameterisation (e.g. acquisition rate, filtering or complexity of lower ISO/OSI layers 1-6 (ISO, 1990)
buffering) has to be performed by the customer. and it provides to the client a generic interface where
The second category could be described as common read/write commands from/to the device
intelligent subsystems (e.g. measurement devices). are independent from the specific lower ISO/OSI
In contrast to the first category, they are controlled layers (TCP/IP over Ethernet, RS232, CAN, etc.).
by a local microprocessor, which provides functions Secondly, it provides standard OS-services (e.g.
comparable to those of the automation system (e.g. memory handling and synchronisation) and thus
real time data acquisition or statistical calculation). enables the client to be independent from the
Devices of this group could be qualified as finite specific OS. Consequently, the client, i.e. the Device
automata with several internal states and transitions. Handler, deals exclusively with device specific
Usually they are connected to the automation system functions and it is therefore robust to changes of
via physical line (e.g. RS232, Ethernet). lower communication layers and/or OS’s.
Consequently, data acquisition and control is The later interface must be implemented by the
possible only via this physical line and by using Device Handler and it contains services that are to
diverse communication protocols on it. be used by the automation system, i.e., user. This
These various types of devices have to be comprises services, such as: handling of device
uniformly integrated into the automation system, so channels (System Channels), device
that data acquisition and device control can be parameterisation, support of the standard Device
performed in a common way. Thus, automation Handler’s state machine, data storage, etc.
systems typically contain a software layer, with the
main task to make device specific functions
available via standard automation interfaces. We
refer to this software layer as Device Handler (see
2 DEVICE HANDLER TYPES
figure 1). Specifically, there are two main
automation interfaces in PUMA Open (AVL, 2004), One of the most important aspects of the automation
which are used by Device Handler, i.e., Platform system is the synchronisation of all test bed
Adapter and Device Framework. components (software and hardware) in order to
perform specific control and/or measurement tasks
(e.g. power-up all devices or get ready to start the
measurement of the system under test). As
Automation System mentioned in the previous chapter, all devices are
synchronised due to the fact that all Device Handlers
Device Framework
behave in a uniform way, which is ensured by
supporting the state machine, i.e., states and
transitions of the Device Framework interface. For
instance, if the automation system wants to perform
a measurement, it simply invokes the transition
Device Handler StartMeasurement of each Device Handler. The
Device Handler interprets this command in a device
specific way and accordingly sends one or more
protocol frames to the device. Depending on the
physical connection (e.g. RS232, CAN), the protocol
mode (e.g. bus, peer to peer), the communication
Platform Adapter mode (e.g. master-slave, burst-mode) and the
functionality (e.g. measure, calibrate), one could
distinguish between various families of devices, i.e.,
Device Handlers.
Device 1 Device 2 Device 3
As a result of this, the device is switched to the
intended state (e.g. measurement mode) and is able
to perform the specific activities. Acquired data are
Figure 1: Device Handler. analysed and accordingly the transition is performed,
the values of System Channels are updated, etc.
Device Integration into Automation Systems 55
A vital part of the Device Handler is its software object model behind the automation
visualisation, or graphical user interface (GUI). interfaces.
Typically, it is implemented as a separate
component and provides a visualisation for services, 2.2 Configurable Device Handler
such as device parameterisation, maintenance, or
visualisation of on-line values.
From the implementation’spoint of view, we can The idea behind the Configurable Device Handler
(CDH) is to simplify and speed up the integration of
identify two types of Device Handler (see figure 2).
devices by configuring the automation systems and
thus allowing the responsible person (e.g. customer)
Automation System to focus on device functions and not on object
models behind automation interfaces. In order to
Device Framework achieve this, a generic Device Handler was
implemented, which can cover general device
functions, such as RS232 or TCP/IP connection,
Device Specific master-slave protocol, ASCII protocol, etc. During
Handler the configuration procedure specific device
functions are identified. The mapping of device
CDH functions to automation interfaces is done
(Configurable automatically with the instantiation of the generic
Device Handler) Device Handler including device specific
information. Therefore, there is no need for
programming or learning a programming language
Platform Adapter
and object models behind automation interfaces. The
information gained during the configuration
procedure is stored in a so called Measurement
Device Description (MDD) file. As the content of
Device 1 Device 2 Device 3 this file incorporates only the necessary device
specific information, platform independent device
integration is achieved. The MDD file can be saved
Figure 2: Device Handler types. as an ASCII file and it could be used on other
operating system platforms, if similar generic
handlers are installed.
2.1 Device Specific Handler The generated MDD file is stored together with
all the other parameters in the automation system’s
In case of very specific and high complex devices, database.
with sophisticated GUI requirements, it is hardly For each MDD file in the database exists a
possible to specify the device functions in a generic corresponding instance of the generic Device
manner. For this kind of devices, it is more Handler, which is instantiated at start-up time of the
appropriate and efficient to implement the automation system. The automation system does not
corresponding Device Handler within traditional distinguish between generic and specific Device
software development projects. This implies that all Handlers.
device functions (e.g. protocol, logic, GUI, state-
machine) are implemented hard-coded at compile
time. Therefore, the functions of the handler are 2.3 Related Work
fixed. In case of changing customer requirements or
firmware changes on the device, the software has to In the past the integration of devices in automation
be modified and compiled again. Hence, there is no systems was performed typically by developing the
flexibility concerning customer or application device handler in the specific programming
specific modification. Only device parameters which language and development environment. This work
are handled in the automation system as System was done as a part of the service provided by the
Channels, can be customized. developer of the automation system. The cost of the
Moreover, a person responsible for the integration was significant, especially if the device
integration of the device into the automation system was developed by the customer or third party.
has to be not only familiar with the device specifics, In the 90s the scripting technology (Clark, 1999)
but also with programming language and the (Schneider, 2001) (Wall, 2000) (Hetland, 2002)
emerged in most automation systems in the
56 A. Scheibelmasser et al.
automotive industry. Its popularity was primarily person responsible for the device integration (in the
due to the fact that the customisation of automation following: device integrator) has to have the
systems was possible at the customer site. However, knowledge about the device functions. This implies
although the flexibility has increased, the costs of that the device states, the intended device modes and
the integration were lower only at the first sight. The the necessary protocol frames are well known.
changes done in the automation system, at the Secondly, it is necessary to understand the standard
customer site, had to be integrated back into the Device Handler’s state machine (see fig. 5) defined
product, i.e., the product development process had to within the Device Framework in order to integrate
be followed to support the customer also in the the device functions into the automation system
maintenance phase. In addition, the changes could appropriately. This enables the correct
only be done by people with the skills in synchronisation of the device by the automation
programming and automation system, which is again system. With the help of the CDG component, the
the personal of the provider of the automation device integrator can perform the creative part of the
system. device integration in a straightforward manner.
Exactly these problems were the motivation for
the development of the CDH. The authors are not
aware of any similar concept for the integration of
Automation System
devices in any other automation system, i.e., in test
beds, especially in the automotive industry.
Device Framework
The concepts, as introduced in the product
LabVIEW (National Instruments, 2003) with the Configurable Device Handler (CDH)
graphical programming language G or TestPoint Engine (CDE)
(Capital Equipment Corporation, 2003), offers an
easy-to-use graphical environment to the customer
Generator (CDG)
Panel (CDP)
for the development of instrumentation panels,
device drivers and monitors of technical processes Measurement
on the PC-based platform. Nevertheless, these tools Device
Description
are suitable only for the development of simple File (MDD)
automation systems and not for the integration in
large automation systems. Moreover, the graphical
programming languages require more than a Platform Adapter
moderate amount of programming skills.
Standards, such as ASAM-GDI or IVI (IVI
Foundation, 2003), specify interfaces between the
Device Handler and the automation system. The art Device 1 Device 2 Device 3
of the development of Device Handlers is out of the
scope of these standards. CDH is compatible with
these standards, because it identifies similar Figure 3: CDH components.
interfaces and functions in the automation system. In
the chapter 6.5 we discuss the possibility of CDH
supporting the ASAM-GDI standard. 4 OFFLINE CONFIGURATION
The main part of the device integration using the
3 CDH DEVICE INTEGRATION CDH is the configuration procedure, where the
device specifics are defined and saved in form of the
Figure 3 shows the component view of the CDH. It MDD file. These activities are supported with the
comprises the following components: Configurable CDG, which conducts the device integrator by
Device Generator (CDG), Configurable Device dividing the integration in several precise and clear
Engine (CDE), Configurable Device Panel (CDP), defined steps. Hence, the configuration procedure
and finally the MDD file. The main features of these can be mastered after a short time and in an intuitive
components are described in the following sections. way, and it is therefore especially suitable for
In order to achieve a device integration using the customers with good knowledge of the device, but
CDH, first the configuration procedure has to be less of the automation system. At the beginning, the
performed, i.e., the device functions must be defined CDG steps are followed in a sequential way. Later
and saved in the MDD file. There are two main as the configuration procedure progresses, it makes
prerequisites for this task to be fulfilled. Firstly, the sense to use these steps interchangeably. In the
Device Integration into Automation Systems 57
following sections the steps are described in more each telegram, which is used for control or data
details. However, it is out of the scope of this acquisition has to be defined in this configuration
document to describe each attribute and feature, and step. The following example shows the definition
therefore only excerpts are shown. structure of a command and a data inquiry telegram,
using AK protocol commands (Arbeitskreis, 1991):
4.1 Physical Line Telegram: SetToRemote
Type: Send and receive
First, the device name used internally in the Send: <02> SREM K0<03>
automation system is specified, followed by the Receive: <02> SREM #ERROR_Status#
definition of the parameters for the physical line $AK_Error$<03>
(e.g. RS232). The following structure shows an
example for the RS232 parameter definition. Telegram: GetMeasResult
Type: Send and receive
Type: RS232 Send: <02> AERG K0<03>
Baudrate: 9600 Receive: <02> AERG #ERROR_Status#
Bits: 8 #FB_MeasCycle# #ignore#
Parity: None #FB_MeasTime# #FB_MeasWeight#<03>
Stop bit: One
Port number: COM1 Simplified example for two telegrams
TimeOut: 1000 [msec]
The telegram definition can contain the definition
An excerpt from the definition of a physical line for two protocol frames (one to send and one to
receive), or for only one (only send or only receive).
4.2 Device Variables A minimum syntax is used to define a protocol
frame. This includes, e.g., the definition of fixed (#
For every value from the physical device, which #) and optional ($ $) position for a device variable’s
value and the definition of not-readable ASCII
should be available in the automation system, a
name and several characteristics, such as Unit, characters (< >). This syntax could be extended with
Minimum, Maximum, data Type, and Initial Value the more powerful pattern-matching techniques for
text processing, such as regular expressions (Friedl,
have to be defined. The following description gives
an example: 2002).
A device variable is denoted as an Output variable,
if it used exclusively in receive protocol frames,
Value: FB_Temperature
Unit: °C
otherwise it is an Input variable (see 4.2).
I/O-Type: Output
Using telegram definitions, CDH can send, receive
and analyse protocol frames at run-time. Failures in
Type: Float
Initial Value: 0
terms of transmission timeout or parsing error are
Minimum: -10
handled within the execution model of the CDH
(within CDE) and are mapped to an error handler as
Maximum: 70
described later.
An excerpt from the definition of a Device Variable
4.4 Sequences
The attribute I/O-Type denotes the device
variable either as Output (device defines its value) or Transitions in the Device Framework’s state
Input (device needs a value from the automation machine that trigger and synchronise complex
system, i.e., from some other SW or HW device activities are usually implemented by the
component). This attribute is set automatically by Device Handler with more than one communication
the CDG as described in the following section 4.3. telegram. The order of the different telegrams and
their correct invocation ensures the right device
4.3 Telegrams behaviour. Therefore, there is a need to define the
logical order.
Since the access to the physical device occurs From the programming point of view three
elementary software constructs are sufficient to
exclusively via the communication line, each value
and command has to be transmitted by the support this, i.e., the commands, the conditional
appropriate communication telegram. Therefore, branches, and the jump commands or loops.
58 A. Scheibelmasser et al.
According to this fact, the CDG offers elements to “Measurement mode not supported”
define telegram invocation orders without the need Function:
for classic programming. SetChannelValue(PARA_MeasTime,
#RequestArgument)
Cyclic Block:
H If Condition:
IF FT_ControlSystem < 0 THEN
Invoke Telegram ADAT_cascade
START Cycle Time: 1000 msec
End Condition: TIME = PARA_MeasTime
End Block:
No Sequence if OK: Online
End Condition
CYCLIC fulfilled? Sequence if NOT OK: AnalyseFailure
Yes
Example of a Sequence
END
4.5 Global Conditions
H
A number of protocol frames require the same
reactions (e.g. error handling). Therefore, every
Figure 4: Simplified model of the Sequence execution. protocol frame has to be checked whether, e.g., an
exception has occurred or not. In order to reduce the
Moreover, to facilitate the typical order patterns effort of writing a number of same conditions, the
in the automation, the telegram invocation order is CDG offers an additional definition step called
organised in three blocks, which together constitute Global Condition.
the CDH Sequence (see fig. 4). Conditions defined in this step are checked
The first block called Start defines a sequence of automatically at run-time whenever a telegram is
telegrams, which is executed only once. The second executed. If the condition is true the corresponding
block, called Cyclic, allows the execution of reaction is invoked (e.g. telegram or Sequence
telegrams cyclically until the end loop condition is execution).
fulfilled. A third, optional End block is used to
concatenate Sequences, depending on whether a
current Sequence ended with success or failure. The
End block and Global Conditions (see section 4.5), 5 ON-LINE USAGE
support the error handling in the CDH handler.
At run-time, the invoked transition in the Device At run-time the automation system loads MDD files
Framework triggers the execution of the Sequence from the database and generates a CDH instance for
by the CDE component. The execution is done each of them. The communication to the device is
according to the execution model for the MDD established according to the parameters of the
structures (Sequence, telegram,…). The description corresponding physical line. Every state transition in
of the execution model is out of the scope of this the Device Handler’s state machine triggers the
document. Hence, the Sequences specified by the execution of the corresponding CDH Sequence.
user are actually implementations of the transitions Figure 5 shows the simplified description of the state
in the Device Framework’s state machine. The machine.
following description gives an example for a The CDE component interprets the content of the
Sequence Measure, which is invoked, when the corresponding MDD file and executes Sequences
automation system triggers the start of a according to the specified execution model.
measurement: Consequently, the defined telegrams, conditions and
functions are executed, in order to control the
Sequence: Measure physical device appropriately. Additionally, for
Start Block: every device variable defined in the MDD file, the
If Condition: CDE generates a System Channel if needed, and
IF RequestArgument <= 0 THEN provides them with values received from the
Invoke Sequence NotOk AND telegram frames.
Display INFO Message:
Device Integration into Automation Systems 59
Running
6.1 Calculation Capability
Device Handler polls device
Idle
Initialise Release
The execution model of the CDE is restricted on
simple value extraction or insertion in protocol
Device in remote control mode
Remote frames. Since there are a number of protocols, which
Measure Complete use checksums or CRC’s, because of data security, it
Device executes function
is necessary to perform such calculations inside the
Busy
Device Handler. An additional aspect is the
arithmetical calculation of different device values.
By introducing a formula interpreter in the CDH,
Figure 5: Simplified Device Handler’s state machine. both examples can be solved.
The CDP component provides a graphical view
on active System Channels and their values and the 6.2 Automatic Detection of Devices
possibility to trigger each Sequence manually. As
shown in figure 6, the CDP offers a common GUI The idea behind the automatic detection of devices
for all CDH instances, which can be used for service is to automatically detect known devices on different
or maintenance reasons. communication lines. This feature reduces the
logistical effort on test beds and it enables users to
hook up optional devices on demand.
This requirement is fulfilled by introducing an
appropriate Sequence in the CDH, which allows the
automation system to detect known devices on
arbitrary lines. Depending on the device
identification, the automation system is able to link
the appropriate Device Handler to the port where the
device is connected.
6.5 Capability Profiles The costs and the effort for the integration were
significantly reduced and, at the same time, the
The CDH provides a minimum set of Sequences quality of the integration has increased, since it was
mapped to the transitions of the standard state possible to focus on device capabilities and to work
machine of the Device Handler via the Device in the office with a device emulator.
Framework interface, which is enough to Using this integration method, the device
synchronise devices (e.g. connect, start cyclic data integration got very easy, if the device integrator
acquisition, start/stop measurement). However, understands the device well!
additional standard Sequences could be provided
that would support standard profiles, such as device
independent profiles (ASAM-DIP, 2002) defined by REFERENCES
ASAM-GDI standard. This profile defines a general
state model of a test run and the required transitions. Arbeitskreis der deutschen Automobilindustrie, 1991. UA
Implementing this profile would imply that the Schnittstelle und Leitrechner, V24/RS232 Schnittstelle
Device Handler is interoperable on test bed systems – Grundsätzliches.
of different vendors supporting this standard. ASAM e.v., 2001. Introduction to ASAM-GDI, rev. 10,
www.asam.net/03_standards_05.php.
ASAM e.v., 2001. ASAM-GDI Part A: Specification of the
Device Capability Description of an ASAM-GDI
7 CONCLUSION Driver, rev. 4.2.
ASAM e.v., 2001. ASAM-GDI Part B: Specification of the
The integration of devices in automation systems is
Interface of an ASAM-GDI Driver, rev. 4.2.
typically a complex procedure that requires not only
ASAM e.v., 2002. Device Independent Profile (DIP)
a good knowledge of the device and the automation
Specification, rev. 4.2.
system, but also requires programming skills.
AVL List GmbH, 2004. PUMAopen Test Bed Automation
The concept of the CDH offers an alternative
Software, www.avl.com.
approach for the integration of less complex devices.
The device integrator is able to focus on device Capital Equipment Corporation, 2003. Test Point, version
functions and to integrate them into the automation 5, www.cec488.com.
system using a simple configuration procedure Clark, S., 1999. VBScript : Programmer’s Reference,
described in this document. Not only that the Wrox.
integration can be done at the customer site, but also Friedl, J.E.F, 2002. Mastering Regular Expressions, 2nd
the customer himself is in the position to integrate ed., O’Reilly & Associates.
his or a third-party device and to maintain it. Hetland, M.L., 2002. Practical Python, 1st ed., APress
The CDH was implemented in the automation ISO, 1990. Overview and Architecture, IEEE Std 802-
system PUMA Open developed at AVL and has 1990.
shown excellent results in the practice. The major IVI Foundation, 2003. Driver Architecture Specification,
number of in-house devices, specifically rev. 1.2, www.ivifoundation.org.
measurement devices, were integrated into the
National Instruments, 2003. LabVIEW, version 7,
PUMA Open using the CDH and are productively in
www.labview.com/labview.
use by a number of OEM’s and suppliers in the
automotive industry. Moreover, customers have also Schneider, F., 2001. T.A. Powell, JavaScript: The
integrated devices by means of the CDH by Complete Reference, McGraw-Hill Osborne Media.
themselves and are using them in research and Wall, L., Christiansen, T., Orwant, J., 2000. Programming
production. Perl, 3rd ed., O’Reilly & Associates.
NON LINEAR SPECTRAL SDP METHOD FOR BMI-CONSTRAINED
PROBLEMS : APPLICATIONS TO CONTROL DESIGN
Jean-Baptiste Thevenet
ONERA-CERT, 2 av. Edouard Belin, 31055 Toulouse, France
and UPS-MIP (Mathmatiques pour l’Industrie et la Physique), CNRS UMR 5640
118, route de Narbonne 31062 Toulouse, France, thevenet@cert.fr
Dominikus Noll
UPS-MIP, noll@mip.ups-tlse.fr
Pierre Apkarian
ONERA-CERT and UPS-MIP, apkarian@cert.fr
Keywords: Bilinear matrix inequality, spectral penalty function, trust-region, control synthesis.
Abstract: The purpose of this paper is to examine a nonlinear spectral semidefinite programming method to solve prob-
lems with bilinear matrix inequality (BMI) constraints. Such optimization programs arise frequently in au-
tomatic control and are difficult to solve due to the inherent non-convexity. The method we discuss here is
of augmented Lagrangian type and uses a succession of unconstrained subproblems to approximate the BMI
optimization program. These tangent programs are solved by a trust region strategy. The method is tested
against several difficult examples in feedback control synthesis.
n minimize cT x, x ∈ Rn
B(x) = A0 + xi Ai + xi xj Bij (2) subject to A(x) 0 (3)
i=1 1≤i<j≤n g(x) = 0.
is a bilinear matrix-valued operator with data Here A is an affine operator (i.e., (2) with Bij = 0)
Ai , Bij ∈ Sm . with values in Sm , and g : Rn → Rp incorporates
The importance of BMIs was recognized over the a finite number of equality constraints. Notice that
past decade and different solution strategies have been every BMI problem may in principle be transformed
proposed. The earliest ideas use interior point meth- to the form (3), but the change will only be fruitful if
ods, imported from semidefinite programming (SDP), it is motivated from the control point of view. The lat-
concave programming or coordinate descent meth- ter is for instance the case in robust or reduced order
ods employing successions of SDP subproblems. The synthesis, where the projection lemma is successfully
success of these methods is up to now very limited, brought into play. For semidefinite programming,
and even moderately sized programs with no more (Zibulevsky, 1996; Ben-Tal and Zibulevsky, 1997)
than 100 variables usually make such methods fail. propose a modified augmented Lagrangian method,
61
J. Braz et al. (eds.), Informatics in Control, Automation and Robotics I, 61–72.
© 2006 Springer. Printed in the Netherlands.
62 J.-B. Thevenet et al.
which in (Kocvara and Stingl, 2003) has been used to matrices. We shall make use of the properties:
build a software tool for SDP called PENNON. The
vec (AXB) = (B T ⊗ A) vec X, (4)
idea is further expanded in (Henrion et al., 2003) to
T T
include BMI-problems. Tr (AB) = vec A vec B, (5)
The present paper addresses cases where the pas- which hold for matrices A, X and B of compatible di-
sage from (1) to (3) seems less suited and a direct mensions. The Hadamard or Schur product is defined
approach is required. Our algorithm solves (1) by a as
sequence of unconstrained subproblems via a trust re-
gion technique. Using trust regions is of the essence, A ◦ B = ((Aij Bij )). (6)
since we have to bear in mind that (1) is usually highly The following holds for matrices of the same dimen-
non-convex. In consequence, local optimal methods sion:
risk failure by getting stalled at a local minimum of vec A ◦ vec B = diag(vec A)vec B, (7)
constraint violation. This refers to points x satisfy-
ing B(x) 0, where the algorithm makes no further where the operator diag forms a diagonal matrix with
progress. Such a case means failure to solve the un- vec A on the main diagonal.
derlying control problem, which requires at least x
with B(x) 0. This phenomenon may be avoided
(or at least significantly reduced) with genuine second 2 NONLINEAR SPECTRAL SDP
order strategies. In particular, trust region techniques
do not require convexification of the tangent problem
METHOD
Hessian, a major advantage over line search methods.
(Notice that in this situation, any approach to (1) us- In this chapter we present and discuss our method to
ing a succession of SDPs is bound to face similar dif- solve BMI-constrained optimization problems. Sec-
ficulties due to the need to convexify the Hessian. On tion 2.1 gives the general out-set, while the subse-
the other hand, if LMI-constrained subproblems with quent sections discuss theoretical and implementa-
non-convex quadratic objectives f (x) can be handled, tional aspects of the method.
such an approach is promising. This idea has been de-
veloped successfully in (Apkarian et al., 2004). 2.1 General Outline
While our technique could be applied basically to
any BMI-constrained program, we presently focus on The method we are about to present applies to more
automatic control issues. In particular, we give ap- general classes of objective functions than (1). We
plications in static output feedback control under H2 , shall consider matrix inequality constrained programs
H∞ or mixed H∞ /H2 performance indicies. Two of the form
other difficult cases, multi-model and multi-objective minimize f (x), x ∈ Rn
(8)
synthesis, and synthesis of structured controllers, are subject to F(x) 0,
presented. where f is a class C 2 function, F : Rn → Sm a class
The structure of the paper is as follows. In sec- C 2 operator. We will use the symbol B whenever we
tion 2, we present our spectral SDP method and dis- wish to specialize to bilinear operators (2) or to the
cuss its principal features. Section 3 presents the- form (1), and we use A for affine operators.
ory needed to compute first and second derivatives of Our method is a penalty/barrier multiplier algo-
spectral functions. Finally, in section 4, numerical ex- rithm as proposed in (Zibulevsky, 1996; Mosheyev
periments on automatic control issues are examined. and Zibulevsky, 2000). According to that terminol-
ogy, a spectral penalty (SP) function for (1) is defined
as
F (x, p) = f (x) + Tr Φp (F(x)), (9)
NOTATION where ϕp : R → R is a parametrized family of scalar
functions, which generates a family of matrix-valued
operators Φp : Sm → Sm upon defining:
Our notation is standard. We let Sm denote the set
of m × m symmetric matrices, M T the transpose Φp (X) := Sdiag [ϕp (λi (X))] S T . (10)
of the matrix M and Tr M its trace. We equip Sm Here λi (X) stands for the ith eigenvalue of X ∈ Sm
with the euclidean scalar product X, Y
= X • Y = and S is an orthonormal matrix of associated eigen-
Tr (XY ). For symmetric matrices , M N means vectors. An alternative expression for (9) using (10)
that M − N is positive definite and M N means is:
that M − N is positive semi-definite. The symbol
⊗ stands for the usual Kronecker product of matrices
m
F (x, p) = f (x) + ϕp (λi (F(x)) . (11)
and vec stands for the columnwise vectorization on
i=1
Non Linear Spectral SDP Method for BMI-Constrained Problems 63
As ϕp is chosen strictly increasing and satisfies a certain threshold p̄ > 0. Proofs for global and local
ϕp (0) = 0, each of the following programs (parame- convergence of the augmented Lagrangian (AL) ex-
trized through p > 0) ist in traditional nonlinear programming (see for in-
stance (Conn et al., 1991; Conn et al., 1996; Conn
minimize f (x), x ∈ Rn
(12) et al., 1993b; Conn et al., 1993a; Bertsekas, 1982)).
subject to Φp (F(x)) 0
Convergence theory for matrix inequality constraints
is equivalent to (8). Thus, F (x, p) may be under- is still a somewhat unexplored field. A global con-
stood as a penalty function for (8). Forcing p → 0, vergence result which could be adapted to the present
we expect the solutions to the unconstrained program context is given in (Noll et al., 2002). Local theory for
minx F (x, p) to converge to a solution of (8). the present approach covering a large class of penalty
It is well-known that pure penalty methods run into functions ϕp will be presented in a forthcoming ar-
numerical difficulties as soon as penalty constants get ticle. Notice that in the convex case a convergence
large. Similarly, using pure SP functions as in (9) result has been published in (Zibulevsky, 1996). It is
would lead to ill-conditioning for small p > 0. The based on Rockafellar’s idea relating the AL method
epoch-making idea of Hestenes (Hestenes, 1969) and to a proximal point algorithm. Our present testing
Powell (Powell, 1969), known as the augmented La- of nonconvex programs (1) shows a similar picture.
grangian approach, was to avoid this phenomenon by Even without convexity the method converges most
including a linear term carrying a Lagrange multiplier of the time and the penalty parameter is in the end
estimate into the objective. In the present context, we stably away from 0, p ≥ p̄.
follow the same line, but incorporate Lagrange multi- Schematically, the augmented Lagrangian tech-
plier information by a nonlinear term. We define the nique is as follows:
augmented Lagrangian function associated with the
matrix inequality constraints in (1) as
Spectral augmented Lagrangian algorithm
L(x, V, p) = f (x) + Tr Φp (V T F(x)V ) , (13)
1. Initial phase. Set constants γ > 0, ρ < 1.
m
Initialize the algorithm with x0 , V0 and a penalty
= f (x) + ϕp (λi (V T F(x)V )). parameter p0 > 0.
i=1
2. Optimization phase. For fixed Vj and pj solve
In this expression, the matrix variable V has the same the unconstrained subproblem
dimension as F(x) ∈ Sm and serves as a factor of the
Lagrange multiplier variable U ∈ Sm , U = V V T (for minimizex∈Rn L(x, Vj , pj ) (14)
instance, a Cholesky factor). This has the immediate
advantage of maintaining non-negativity of U 0. In Let xj+1 be the solution. Use the previous iterate
contrast with classical augmented Lagrangians, how- xj as a starting value for the inner optimization.
ever, the Lagrange multiplier U is not involved lin- 3. Update penalty and multiplier. Apply first-
early in (13). We nevertheless reserve the name of order rule to estimate Lagrange multiplier:
an augmented Lagrangian for L(x, V, p), as its prop-
erties resemble those of the classical augmented La- T
Vj+1 Vj+1 = Vj S diagϕp λi VjT
grangian. Surprisingly, the non-linear dependence of
L(x, V, p) on V is not at all troublesome and a suit- ·F(xj+1 )Vj ))] S T VjT , (15)
able first-order update formula V → V + , generaliz- where S diagonalizes VjT F(xj+1 )Vj .
ing the classical one, will be readily derived in section Update the penalty parameter using:
3.2.
Let us mention that the convergence theory for an ρpj , if λmax (0, F(xj+1 ))
augmented Lagrangian method like the present one pj+1 = > γ λmax (0, F(xj )) (16)
splits into a local and a global branch. Global the- pj , else
ory gives weak convergence of the method towards
critical points from arbitrary starting points x, if nec- Increase j and go back to step 2.
essary by driving p → 0. An important complement
is provided by local theory, which shows that as soon
as the iterates reach a neighbourhood of attraction of In our implementation, following the recommenda-
one of those critical points predicted by global theory, tion in (Mosheyev and Zibulevsky, 2000), we have
and if this critical point happens to be a local mini- used the log-quadratic penalty function ϕp (t) =
mum satisfying the sufficient second order optimality pϕ1 (t/p) where
conditions, then the sequence will stay in this neigh-
bourhood, converge to the minimum in question, and t + 21 t2 if t ≥ − 12
ϕ1 (t) = (17)
the user will not have to push the parameter p below − 41 log(−2t) − 38 if t < − 21 ,
64 J.-B. Thevenet et al.
but other choices could be used (see for instance If we recall the form of the classical augmented La-
(Zibulevsky, 1996) for an extended list). grangian for inequality constraints (cf. (Bertsekas,
The multiplier update formula (15) requires the full 1982))
machinery of differentiability of the spectral function
Tr Φp and will be derived in section 3.2. Algorithmic L(x, u, µ) = f (x)
µ
n
In order to obtain second derivatives of composite Using dF = i=1 Fi δxi , the last line in (22) gives
functions, Ψ◦F, we will require the chain rule, which
for the second differential forms d2 Ψ(X)[dX, dX] of d2 Ψp (V T F V )[V T dF V, V T dF V ]
Ψ and d2 F(x)[δx, δx] of F amounts to: = δxT [vec (F1 ), . . . , vec (Fn )] Kp
T
A first issue is the magnitude of the decision vari- • y ∈ Rp2 is the vector of measurements,
ables, which may vary greatly within a given prob- • z ∈ Rp1 is the controlled or performance vector.
lem. In particular the range of the Lyapunov variables
may show differences of several orders of magnitude, • D22 = 0 is assumed without loss of generality.
a phenomenon which is difficult to predict in advance,
as the physical meaning of the Lyapunov variables Let Tw,z (s) denote the closed-loop transfer functions
is often lacking. Properly scaling these variables is from w to z for some static output-feedback control
therefore difficult in general. law:
A similar issue is to give prior bounds on the con- u = Ky . (29)
troller gains. This is mandatory because these values
are to be useful in the hard-ware implementations of
the theoretically computed controllers. Exceedingly
large gains would bear the risk to amplify measure-
w z
ment noise and thwart the process. This may also be P (s)
understood as a quest on the well-posedness of the
initial control problem, which should include explicit
gain bound constraints. u y
Incomplete knowledge about the numerical range
of the different variables is in our opinion the source
of most numerical difficulties and a method to balance K(s)
data is extremely important.
In this section we test our code on a variety of difficult Our aim is to compute K subject to the following con-
applications in automatic control. The first part uses straints:
examples from static output feedback control. We
• internal stability: for w = 0 the state vector of the
then discuss applications like sparse linear constant
closed-loop system (28) and (29) tends to zero as
output-feedback design, simultaneous state-feedback
time goes to infinity.
stabilization with limits on feedback gains and finally
multi-objective H2 /H∞ -controller design. Here we • performance: the H∞ norm Tw,z (s)∞ , respec-
import examples from (Hassibi et al., 1999). In all tively the H2 norm Tw,z (s)2 , is minimized
these cases our method achieves closed-loop stability, where the closed-loop transfer Tw,z (s) is described
while performance indicies like H∞ , H2 or mixed as:
performances previously published in the literature
are significantly improved. We always start our algo- ẋ = (A + B2 KC2 )x + (B1 + B2 KD21 )w
rithm at x0 = 0 in order to capture a realistic scenario, z = (C1 + D12 KC2 )x + (D11 + D12 KD21 )w.
where no such prior information is available.
Recall that in the H2 case, some feedthrough terms
4.1 Static Output Feedback must be nonexistent in order for the H2 performance
Controller Synthesis to be well defined. We have to assume D11 =
0, D21 = 0 for the plant in (28). This guaran-
We first recall a BMI characterization of the classical teed, both static H∞ and H2 indicies are then trans-
output feedback synthesis problem. To this end let formed into a matrix inequality condition using the
P (s) be an LTI (Linear Time Invariant) system with bounded real lemma (Anderson and Vongpanitlerd,
state-space equations: 1973). This leads to well-know characterizations:
Proposition 4.1 A stabilizing static output feedback
ẋ A B1 B2 x
P (s) : z = C1 D11 D12 w , (28) controller K with H∞ gain Tw,z (s)∞ ≤ γ exists
y C2 D21 D22 u provided there exists X ∈ Sn1 such that:
where (A+B T
2 KC2 ) X+ ∗ ∗ ∗
• x ∈ Rn1 is the state vector, (B1 +B2 KD21 )T X −γI ∗ ≺ 0
(C1 +D12 KC2 ) (D11 +D12 KD21 ) −γI
• u ∈ Rm2 is the vector of control inputs, (30)
• w ∈ Rm1 is a vector of exogenous inputs, X 0. (31)
Non Linear Spectral SDP Method for BMI-Constrained Problems 69
The state-space data of the VTOL helicopter are bor- with H2 performance Tw,z (s)2 = 1.94.
rowed from (Keel et al., 1988). They are obtained
by linearizing the helicopter rigid body dynamics at 4.1.4 Piezoelectric Actuator (PA)
given flight conditions. This leads to a fourth-order
model. Both H∞ and H2 static controllers are com- In this section, we consider the design of a static con-
puted with the spectral SDP method. The algorithm troller for a piezoelectric actuator system. A compre-
converges after solving 29 tangent problems (14): hensive presentation of this system can be found in
(Chen, 1998). Our algorithm computes a static H∞
0.50750 controller after solving 30 instances of (14):
K∞ = .
10.00000
K∞ = [0.09659 −1.45023 −100.00] .
The final H∞ performance is 1.59e-1, which is about
The computed H∞ -performance 2.19e-3 improves
40% improvement over the performance obtained in
significantly over the value 0.785 given in (Leibfritz,
(Leibfritz, 1998).
1998).
0.13105
K2 = , 4.2 Miscellaneous Examples
5.95163
which gives a H2 performance of 9.54e-2 after solv- 4.2.1 Sparse Linear Constant Output-Feedback
ing 28 subproblems. Design
4.1.3 Chemical Reactor (CR) In many applications it is of importance to design
sparse controllers with a small number of nonzero en-
A model description for the chemical reactor can be tries. This is for instance the case when it is manda-
found in (Hung and MacFarlane, 1982). Both H∞ tory to limit the number of arithmetic operations in
70 J.-B. Thevenet et al.
the control law, or when reducing the number of sen- If now in a second test a higher decay rate (α ≥
sor/actuator devices is critical. In such a case one may 0.5) (and so a better damped closed-loop system), is
attempt to synthesize a controller with an imposed required, our method computes
sparsity structure. A more flexible idea is to let the
problem find its own sparsity structure by using a 1 - 0.1072 0.0000 0.0000 0.0000
norm cost function. We solve the following (BMI) −0.0224 0.0000 0.0000 0.0000
problem: K∞ = 0.3547 0.0000 0.0000 0.0000 ,
0.0000 0.0000 0.0000 0.0000
min 1≤i≤n , |Kij |, 0.0186 0.1502 0.0000 0.0000
¦1≤j≤n
s. t. P I with 5 non-zeros entries. As expected, the sparsity
(A + B K C) T P + P (A + B K C) decreases when α increases.
−2 αP − I
4.2.2 Simultaneous State-Feedback Stabilization
where is the usual threshold to adapt strict inequali-
with Limits on Feedback Gains
ties to the form (1) or (8). This corresponds to design-
ing a sparse linear constant output feedback control
One attempts here to stabilize three different lin-
u = Ky for the system ẋ = Ax + Bu, y = Cx with
ear systems using a common linear constant state-
an imposed decay rate of at least α in the closed-loop
feedback law with limits on the feedback gains.
system.
Specifically, suppose that:
Minimizing the 1 -norm of the feedback gain is a
good heuristic for obtaining sparse feedback gain ma- ẋ = Ak x + Bk u, u = K x , k = 1, 2, 3.
trices. This may be explained by the fact that the func- The goal is to compute K such that |Kij | ≤ Kij,max
tion φ(t) = |t| is the natural continuous interpolant and the three closed-loop systems:
of the counting
function c(t) = t. Minimizing the
function ij Kij or even counting the nonzero en- ẋ = (Ak + Bk K ) x , k = 1, 2, 3 ,
tries Kij in K is what we would really like to do, but are stable. Under these constraints the worst decay-
this is a discrete optimization problem subject to ma- rate of the closed-loop systems is maximized.
trix inequality constraints.
Proposition 4.3 The feedback gain K stabilizes the
There are many more applications to this heuristic. above systems simultaneously if and only if there exist
Finding sparse feedback gain matrices is also a good Pk 0, αk > 0, k = 1, 2, 3 such that
way of solving the actuator/sensor placement or con-
troller topology design problems. In our example the (Ak + Bk K)T Pk + Pk (Ak + Bk K) ≺ −2αk Pk ,
method works nicely and a sparsity pattern is appar- k = 1, 2, 3.
ent. If small but nonzero values occur, one may set
these values to zero if below a certain threshold, de- Introducing our usual threshold parameter > 0,
rive a sparsity pattern, and attempt a structured design we have to check whether the value of the following
with that pattern imposed. This leads to another class BMI program is positive:
of BMI problems. maximize mink=1,2,3 αk
In our example, the system is initially unstable with subject to |Kij | ≤ Kij,max ,
rate of α0 = −0.2832. This value is obtained by com- (Ak + Bk K)T Pk + Pk (Ak + Bk K)
puting the smallest negative real part of the eigenval- −2 αk Pk − I
ues of A (data available from (Hassibi et al., 1999)). Pk I, k = 1, 2, 3.
In a first test similar to the one in (Hassibi et al.,
1999), we seek a sparse K so that the decay rate of the
closed-loop system is not less than 0.35. We obtain By looking in (Hassibi et al., 1999) and computing
the following gain matrix: the corresponding eigenvalues, the reader will notice
that all three systems are unstable. We chose, as pro-
0.2278 0.0000 0.0000 0.0000 posed by Hassibi, How and Boyd, Kij,max = 50. We
0.0000 0.0000 0.0000 0.0000 obtained a solution after 19 unconstrained minimiza-
K∞ = 0.0000 0.0000 0.0000 0.0000 , tion subproblems, in 1.8 seconds. This experiment
0.0000 0.0000 0.0000 0.0000 gave the best improvement among our present tests.
0.0000 0.3269 0.0000 0.0000 The worst decay-rate was increased to α = 6.55, an
improvement of more than 500% over the value 1.05
with only two non-zeros elements. The path- obtained in (Hassibi et al., 1999). The corresponding
following method presented in (Hassibi et al., 1999) gain matrix is the following:
gives 3 non-zeros elements. The spectral method
gives once again a significant improvement, while −17.1926 −29.8319 −50
K∞ = .
maintaining the closed-loop stability. 50 18.7823 −5.3255
Non Linear Spectral SDP Method for BMI-Constrained Problems 71
UMR 5640, Maths. Dept. - Paul Sabatier University . Henrion, D., M.Kocvara, and Stingl, M. (2003). Solving
http://mip.ups-tlse.fr/publi/publi.html. simultaneous stabilization BMI problems with PEN-
Apkarian, P., Noll, D., and Tuan, H. D. (2003). Fixed-order NON. In IFIP Conference on System Modeling and
H∞ control design via an augmented Lagrangian Optimization, volume 7, Sophia Antipolis, France.
method . Int. J. Robust and Nonlinear Control, Hestenes, M. R. (1969). Multiplier and gradient method. J.
13(12):1137–1148. Optim. Theory Appl., 4:303 – 320.
Ben-Tal, A. and Zibulevsky, M. (1997). Penalty/barrier Hung, Y. S. and MacFarlane, A. G. J. (1982). Multivari-
multiplier methods for convex programming prob- able feedback: A classical approach. Lectures Notes
lems. SIAM J. on Optimization, 7:347–366. in Control and Information Sciences. Springer Verlag,
Bertsekas, D. P. (1982.). Constrained optimization and La- New York, Heidelberg, Berlin.
grange multiplier methods. Academic Press, London. Keel, L. H., Bhattacharyya, S. P., and Howze, J. W. (1988).
Chen, B. M. (1998). H∞ Control and Its Applications, vol- Robust control with structured perturbations. IEEE
ume 235 of Lectures Notes in Control and Informa- Trans. Aut. Control, 36:68–77.
tion Sciences. Springer Verlag, New York, Heidelberg, Kocvara, M. and Stingl, M. (2003). A Code for Convex
Berlin. Nonlinear and Semidefinite Programming. Optimiza-
Conn, A. R., Gould, N., and Toint, P. L. (1991). A globally tion Methods and Software, 18(3):317–333.
convergent augmented Lagrangian algorithm for opti- Leibfritz, F. (1998). Computational design of stabiliz-
mization with general constraints and simple bounds. ing static output feedback controller. Rapports 1 et
SIAM J. Numer. Anal., 28(2):545 – 572. 2 Mathematik/Informatik, Forschungsbericht 99-02,
Conn, A. R., Gould, N. I. M., Sartenaer, A., and Toint, P. L. Universitt Trier.
(1993a). Global Convergence of two Augmented La- Lewis, A. (1996). Derivatives of spectral functions. Math-
grangian Algorithms for Optimization with a Com- ematics of Operations Research, 21:576–588.
bination of General Equality and Linear Constraints. Lewis, A. (2001). Twice differentiable spectral functions.
Technical Report TR/PA/93/26, CERFACS, Toulouse, SIAM J. on Matrix Analysis and Applications, 23:368–
France. 386.
Conn, A. R., Gould, N. I. M., Sartenaer, A., and Toint, P. L. Lewis, A. and S.Sendov, H. (2002). Quadratic expan-
(1993b). Local convergence properties of two aug- sions of spectral functions. Linear Algebra and Appl.,
mented Lagrangian algorithms for optimization with a 340:97–121.
combination of general equality and linear constraints. Lin, C. and More, J. (1998). Newton’s method for large
Technical Report TR/PA/93/27, CERFACS, Toulouse, bound–constrained optimization problems. Techni-
France. cal Report ANL/MCS-P724–0898, Mathematics and
Conn, A. R., Gould, N. I. M., Sartenaer, A., and Toint, P. L. Computer Sciences Division, Argonne National Lab-
(1996). Convergence properties of an augmented La- oratory.
grangian algorithm for optimization with a combina- Mosheyev, L. and Zibulevsky, M. (2000). Penalty/barrier
tion of general equality and linear constraints. SIAM multiplier algorithm for semidefinite programming.
J. on Optimization, 6(3):674 – 703. Optimization Methods and Software, 13(4):235–261.
Fares, B., Apkarian, P., and Noll, D. (2000). An Augmented Noll, D., Torki, M., and Apkarian, P. (2002). Partially
Lagrangian Method for a Class of LMI-Constrained Augmented Lagrangian Method for Matrix Inequality
Problems in Robust Control Theory. In Proc. Amer- Constraints. submitted. Rapport Interne , MIP, UMR
ican Control Conf., pages 3702–3705, Chicago, Illi- 5640, Maths. Dept. - Paul Sabatier University.
nois. Powell, M. J. D. (1969). A method for nonlinear constraints
Fares, B., Apkarian, P., and Noll, D. (2001). An Augmented in minimization problem. In Fletcher, R., editor, Op-
Lagrangian Method for a Class of LMI-Constrained timization. Academic Press, London, New York.
Problems in Robust Control Theory. Int. J. Control, Schnabel, R. B. and Eskow, E. (1999). A revised modified
74(4):348–360. cholesky factorization algorithm. SIAM J. on Opti-
Fares, B., Noll, D., and Apkarian, P. (2002). Robust Control mization, 9(4):1135–1148.
via Sequential Semidefinite Programming. SIAM J. on Shapiro, A. (2002). On differentiability of symmetric ma-
Control and Optimization, 40(6):1791–1820. trix valued functions. School of Industrial and Sys-
Gangsaas, D., Bruce, K., Blight, J., and Ly, U.-L. (1986). tems Engineering, Georgia Institute of Technology.
Application of modern synthesis to aircraft control: Preprint.
Three case studies. IEEE Trans. Aut. Control, AC- Zibulevsky, M. (1996). Penalty/Barrier Multiplier Methods
31(11):995–1014. for Large-Scale Nonlinear and Semidefinite Program-
Hassibi, A., How, J., and Boyd, S. (1999). A path-following ming. Ph. D. Thesis, Technion Isral Institute of Tech-
method for solving bmi problems in control. In Proc. nology.
American Control Conf., pages 1385–1389.
A STOCHASTIC OFF LINE PLANNER OF OPTIMAL DYNAMIC
MOTIONS FOR ROBOTIC MANIPULATORS
Abstract: We propose a general and simple method that handles free (or point-to-point) motion planning problem for
redundant and non-redundant serial robots. The problem consists of linking two points in the operational
space, under constraints on joint torques, jerks, accelerations, velocities and positions while minimizing a
cost function involving significant physical parameters such as transfer time and joint torque quadratic
average. The basic idea is to dissociate the search of optimal transfer time T from that of optimal motion
parameters. Inherent constraints are then easily translated to bounds on the value of T. Furthermore, a
stochastic optimization method is used which not only may find a better approximation of the global
optimal motion than is usually obtained via traditional techniques but that also handles more complicated
problems such as those involving discontinuous friction efforts and obstacle avoidance.
73
J. Braz et al. (eds.), Informatics in Control, Automation and Robotics I, 73–80.
© 2006 Springer. Printed in the Netherlands.
74 T. Chettibi et al.
The region of convergence may be small (Latombe, 1991) gives an excellent overview of
(Chettibi, 2001) (Lazrak, 1996), early methods (before 1991) such as: potential field,
Path inequality are difficult to handle (Danes, cell decomposition and roadmap methods, some of
1998), which have shown their limits. For instance, a
They introduce new variables known as co-state potential field based planner is quickly attracted by
variables that are, in general, difficult to estimate local minima (Khatib, 1986) (Latombe, 1991)
(Lazrak, 1996) (Bessonnet, 1992) (Danes, 1998) (Barraquand, 1992). Cell decomposition methods
(Pontryagin, 1965). often require difficult and quite expensive geometric
In minimum time transfer problems, they lead to computations and data structures tend to be very
discontinuous controls (bang-bang) that may large (Latombe, 1991) (Overmars, 1992). The key
create many practical problems (Ola, 1994) issue for roadmap methods is the construction of the
(Chettibi, 2001a). In fact, the controller must roadmap. Various techniques have been proposed
work in saturation for long periods. The optimal that produce different sorts of roadmaps based on
control leaves no control authority to compensate visibility and Voronoi graphs (Latombe, 1991).
for any tracking error caused by either unmodeled During the last decade, interest was given to
dynamics or delays introduced by the on-line stochastic techniques to solve various forms of
feedback controller optimal motion planning problems. In particular,
To overcome these difficulties, direct methods have powerful algorithms were proposed to solve the
been proposed. They are based on discretisation of basic geometric problem. Probabilistic roadmaps
dynamic variables (states, controls). They seek to (PRM) or Probabilistic Path Planners (PPP) were
solve directly a parameter optimization problem. introduced in (Overmars, 1992) (Barraquand, 1996)
Then, N.L. programming (Tan, 1988) (Martin, 1997) (Kavraki, 1994) (Kavraki, 1996) and applied
(Martin, 1999) (Chettibi, 2001a) or stochastic successfully to complex situations. They are
optimization techniques (Chettibi, 2002b) are generally executed in two steps: first a roadmap is
applied to compute optimal values of parameters. constructed, according to a stochastic process, then
Other ways of discretisation can be found in the motion planning query is treated. Due to the
(Richard, 1993) (Macfarlane, 2001). These power of this kind of schemes, many perspectives
techniques suffer, however, from numerical are expected as shown in (Latombe, 1999).
explosion when treating high dimension problems. However, there are few attempts to apply them to
Although they have been used successfully to solve solve the complete OFMPP. References (LaValle,
a large variety of problems, techniques based on 1998) (LaValle, 1999) propose the method of
N.L. programming (Fletcher, 1987) (David, 1997) Rapidly exploring Random Trees (RRTs) as an
(Danes, 1998) (John, 1998) (Chettibi, 2000) have extention of PPP to optimize feasible trajectories for
two essential drawbacks: NL systems. Dynamic model and inherent
constraints are taken into account.
They are easily attracted by local minima ; In (Chettibi, 2002a), we introduced a different
They generally require information on gradiant and scheme using a sequential stochastic technique to
hessian that are difficult to get analytically. In solve the OFMPP. We present here this simple and
addition, continuity of second order must be versatile method and how it can be used to handle
ensured, while realistic physical models may complex situations involving both friction efforts
include some discontinuous terms (frictions). and obstacle avoidance.
quadratic form. G(q) is the vector of potential resources are limited and must be used rationally in
forces and W ҏis the vector of actuator efforts. order to control correctly the robot dynamic
behavior. Also, since joint position tracking errors
In order to make the dynamic model more realistic, increase with jerk, constraints (3b) are introduced to
we may introduce, for the ith joint, friction efforts as limit excessive wear and hence to extend the robot
follows: life-span (Latombe, 1991) (Piazzi, 1998)
n (Macfarlane, 2001).
¦M ij ( q ( t )) q j ( t ) Q i ( q ( t ), q ( t )) (1b),
j 1
In the case where obstacles are present in the
G i ( q ( t )) F i v q ( t ) F i s sign ( q ( t )) W i (t ) robot workspace, motion must be planned in such a
way collision is avoided between links and
FiV and Fi s are, respectively, sec and viscous obstacles. Therefore, the following constraint has to
friction coefficients of the ith joint. be satisfied :
The robot is required to move freely from an initial C(q)=False (3f).
state Pi to a final state Pf, both of which are specified The Boolean function C indicates whether or not the
in the operational space. In addition to solving for robot at configuration q is in collision with an
W(t) and transfer time T, we must find the trajectory obstacle. This function uses a distance function
defined by q(t) such as the initial and the final state D(q) that supplies for any robotic configuration the
are matched, constraints are respected and a cost minimal distance to obstacles.
function is minimized.
The cost function adopted here is a balance
between transfer time T and the quadratic average of 3 REFORMULATION OF THE
actuator efforts: PROBLEM
2
T
1 P n
§W i ( t )·
Fobj PT
2 ³0 ¦ ¨¨ max ¸¸ dt
i 1 © Wi ¹
(2). The normalization of the time scale, initially used to
make the problem with fixed final time, is exploited
P is a weighting coefficient chosen from [0,1] and to reformulate the problem and to make it propitious
according to the relative importance we would like for a stochastic optimization strategy. Details are
shown bellow.
to give to the minimization of T or to the quadratic
average of actuator efforts. The case
P corresponds to the optimal time free motion 3.1 Scaling
planning problem.
Constraints that must be satisfied during the We introduce a normalized time scale as follows:
entire transfer (0 d t d T) are summarized bellow: t x .T with x >0,1@ (4).
for i = 1, …, n we have bounds on: Hereafter, we will use the prime symbol to indicate
- Joint torques: derivations with respect to x :
dqx d 2 q x d 3 q x
W i t d W imax (3a); q' , q" , q" ' (5).
2
dx dx dx 3
- Joint jerks :
Relations (1a) and (1b) can be written as follows:
qi t d qimax (3b);
1
- Joint accelerations: (1a) \ i x H i Gi (6a)
T2
qi t d qimax (3c);
(1b) \ i 1 1 v (6b)
- Joint velocities: H i Gi Fi qic Fi s sign(qc)
T2 T
q i t d q imax (3d); where:
- Joint positions: W i x , M ij , Qi Qi ,
\ i x M ij
q i t d q imax (3e). W imax W imax W imax
n
Gi
Of course, non-symmetrical bounds on the above Gi , H i = ¦ M ij q" j Qi (7)
physical quantities can also be handled without any W imax j 1
n
3.2 Cost Function 1 P 1
S0 P
2 ³¦ 0
i 1
G i2dO
n
With the previous notations, the cost function (2) 1
K
n
S S · 1 P 1
§ S2 ³¦
2
2 H iG i d O
Fobj T ¨ S 0 22 44 ¸ (9), 2 0
i 1
i
© T T ¹ 1 n
Fobj Fobj
Case a: T* <Tm Case b: T* >Tm
T1 Tm T2
T
Forbidden Forbidden Figure 3: New exploration region defined by a new
region region lower value of Fbest .
Step 3: Get Ta, Tv, Tj from (17, 18, 19) and T* from
T * Tm Tm T * (20). If T* > T2 then return to Step 1 else modify T1
T T and/or Tm according to Fig. 2. That is: in case (a) T1
Figure 2: Bounds on transfer time value due to m T* while in (b) T1 m T* and Tm m T*.
constraints of second category.
Step 4: Get [TL, TR] from (21). If TL > T2 or TR < T1
3.3.c Constraints of Third Category then return to Step 1. Otherwise, we have a
new improved Fbest :
In the third category, we have constraints that can be
transformed into explicit bilateral bounds on T. For If Tm [TL, TR] then
example those imposed on the value of joint torques Fbest m F(Tm)
(3a) define, in general, bracketing bounds on T, Else if Tm < TL then
namely: TL and TR. In consequence, Fbest m F(TL)
T[TL, TR] (21). Else
A fourth category might be included and would Fbest m F(TR)
concern any other constraint that does add End if
restrictions on T but that cannot be easily translated The above steps can be imbedded in a stochastic
into simple bounds on T. optimization strategy to determine better profiles
qi(x), i = 1,… n, leading to lower values of the
objective function.
4 STRATEGY OF RESOLUTION
One way to get a guessed temporal evolution shape
qi(x) for the joint variables, at any stage of
The iterative process of minimization proposed here
optimization process, is to use randomly generated
includes the following steps:
clamped cubic spline functions with nodes
Step 1: Generate a random (or guessed) temporal distributed for x [0,1] (Fig. 4).
evolution shape qi(x) for each of the joint variables,
78 T. Chettibi et al.
qi(x) 30
max W1
qi 20 W2
10 W3
Admissible interval
0 W4
-10 0 2 4
-20
Free Nodes uniformly -30
distributed
-40
-qimax Figure 5c: Evolution of joint torques with friction effect.
3
0 1 x 2 q1
Figure 4: Approximation of joint position temporal q3
evolution. 1
0
5 NUMERICAL RESULTS -1 0 q4 2 4
-2
We consider here a redundant planar robot q2
constituted of four links connected by revolute -3
joints. The corresponding geometric and inertial Figure 5d. Evolution of joint positions with friction
characteristics are listed in Appendix A. It is asked effect.
to move among two static obstacles disposed in it’s
work space at respectively (2, 1.5) and (-1.5, 1.5)
40
with both unity radius. The robot begin at (S/4, -S/2,
S/4, 0) and stops at (S/2, 0, 0, 0). Boundary 30
velocities are null. The numerical results are 20
obtained with P for both cases: with and 10
without friction efforts. The corresponding optimal 0
motions are depicted in Figures 5a, b, c, d, e and f. -10 0 2 4
In fact, without introducing friction effort we get : -20
Fobj = 2.7745(s) and Topt = 4.9693 (s).In the -30 Figure 5e: Evolution of joint torques without
presence of friction efforts we get a different result: friction effect.
Fobj = 3.1119 (s) and Topt = 5.3745 (s). Hence, to
achieve the same task, we need more time and more 3
effort in the presence of friction efforts.
2
1
0
0 1 2 3 4 5
-1
-2
-3
Figure 5a: Aspect of motion without friction effect. Figure 5f: Evolution of joint positions without
friction effect.
6 CONCLUSION
In this paper we have presented a simple trajectory
planner of point-to-point motions for robotic arms.
The problem is highly non-linear due first to the
complex robot dynamic model that must be verified
Figure 5b: Aspect of motion with friction effect. during the entire transfer, then to the non-linearity of
A Stochastic off Line Planner of Optimal Dynamic Motions 79
the cost function to be minimized and finally to specified paths, The Int. Jour. of Rob. Res., 4 (3), pp.
numerous constraints to be simultaneously 3-16.
respected. The OFMPP is originally an optimal Bessonnet G., 1992, Optimisation dynamique des
control one and has been transformed into a mouvements point à point de robots manipulateurs,
Thèse d’état, Université de Poitiers, France.
parametric optimization problem. The optimization
Betts J. T., 1998, Survey of numerical methods for
parameters are time transfer T and the position of trajectory optimization, J. Of Guidance, Cont. & Dyn.,
nodes defining the shape of joint variables. The 21(2), 193-207.
research of T has been separated from that of the Chen Y., Desrochers A., 1990, A proof of the structure of
others parameters in order to make the computing the minimum time control of robotic manipulators
process efficient and to handle constraints easily by using Hamiltonian formulation, IEEE Trans. On Rob.
transforming them into explicit bounds on T possible & Aut. 6(3), pp. 388-393.
values. In fact, the various possible constraints have Chettibi T., 2000, Contribution à l'exploitation optimale
been regrouped in four families according to their des bras manipulateurs, Magister thesis, EMP,
possible effects on T values and then have been Algiers, Algeria.
Chettibi T., 2001a, Optimal motion planning of robotic
handled sequentially during each optimization step.
manipulators, Maghrebine Conference of Electric
Nodes, defining q(x) shape, are connected by cubic Engineering, Constantine, Algeria.
spline functions and their positions are perturbed Chettibi T., Yousnadj A., 2001b, Optimal motion planning
inside a stochastic process until the objective of robotic manipulators along specified geometric
function value is sufficiently reduced while all path, International Conference on productic, Algiers.
constraints are all satisfied. This ensured smoothness Chettibi T., Lehtihet H. E., 2002a, A new approach for
of resulted profiles. The objective function has been point to point optimal motion planning problems of
written under a weighting form permitting to make robotic manipulators, 6th Biennial Conf. on
balance between reducing T and magnitude of Engineering Syst. Design and Analysis (ASME ),
implied torques. Turkey, APM10.
Chettibi T., 2002b, Research of optimal free motions of
Numerical examples, where a stochastic manipulator robots by non-linear optimization,
optimization process, implementing the proposed Séminaire international sur le génie Mécanique, Oran,
approach, has been used along with cubic spline Algeria.
approximations, and dealing with complex Danes F., 1998, Critères et contraintes pour la synthèse
problems, such as those involving discontinuous optimale des mouvements de robots manipulateurs.
friction efforts and obstacle avoidance, have been Application à l’évitement d’obstacles, Thèse d’état,
presented to show the efficiency of this technique. Université de Poitiers.
Others successful tests have been made in parallel Dombre E. & Khalil W., 1988, Modélisation et commande
for complex robotic architectures, like biped robots, des robots, First Edition, Hermes.
Fletcher R., 1987, Practical methods of optimization,
will be presented in a future paper.
Second Edition, Wiley Interscience Publication.
Garber M., Lin. M.C., 2002, Constrained based motion
planning for virtual prototyping, SM’02, Germany.
ACKNOWLEDGEMENTS Glass K., Colbaugh R., Lim D., Seradji H., 1995, Real
time collision avoidance for redundant manipulators,
IEEE Trans. on Rob. & Aut., 11(3), pp. 448-457.
We thank Prof. H. E. Lehtihet for his suggestions Hull D. G., 1997, Conversion of optimal control problems
and helpful discussions. into parameter optimization problems, J. Of Guidance,
Cont. & Dyn., 20(1), 57-62.
Jaques J., Soltine E., Yang H. S., 1989, Improving the
efficiency of time-optimal path following algorithms,
REFERENCES IEEE Trans. on Rob. & Aut., 5 (1).
Kang G. S., McKay D. N., 1986, Selection of near
Angeles J., 1997, Fundamentals of robotic mechanical minimum time geometric paths for robotic
systems. Theory, methods, and algorithms,” Springer manipulators, IEEE Trans. on Aut. & Contr., AC31(6),
Edition. pp. 501-512.
Barraquand J., Langlois B., Latomb J. C., 1992, Numerical Kavraki L., Latombe J. C., 1994, Randomized
Potential Field Techniques for robot path planning, Preprocessing of Configuration Space for Fast Path
IEEE Tr. On Sys., Man, and Cyb., 22(2):224-241. Planning, Proc. Of IEEE Int. Conf. on Rob. & Aut., pp.
Barraquand J., Kavraki L., Latombe J. C., Li T. Y., 2138-2139, San Diego.
Motwani R., Raghavan P., 1996, A random Sampling Kavraki L., Svesta P., Latombe J. C., Overmars M., 1996,
Scheme for path planning, 7th Int. conf. on Rob. Probabilistic Roadmaps for Path Planning in High
Research ISRR. Dimensional Configuration space, IEEE trans. Robot.
Bobrow J.E., Dubowsky S., Gibson J.S., 1985, Time- Aut., 12:566-580.
Optimal Control of robotic manipulators along
80 T. Chettibi et al.
Khatib O., 1986, Real-time Obstacle Avoidance for Piazzi A., Visioli A., 1998, Global minimum time
Manipulators and Mobile Robots, Int. Jour. of Rob. trajectory planning of mechanical manipulators using
Research, vol. 5(1). internal analysis, Int. J. Cont., 71(4), 631-652.
Latombe J. C., 1991, Robot Motion Planning, Kluwer Pfeiffer F., Rainer J., 1987, A concept for manipulator
Academic Publishers. trajectory planning, IEEE J. of Rob. & Aut., Ra-3 (3):
Latombe J. C., 1999, Motion planning: A journey of, 115-123.
molecules, digital actors and other artifacts, Int. Jour. Powell M. J., 1984, Algorithm for non-linear constraints
Of Rob. Research, 18(11), pp. 1119-1128. that use Lagrangian functions, Mathematical
LaValle S. M., 1998, Rapidly exploring random trees: A programming, 14, 224-248.
new tool for path planning, TR98-11, Computer Pontryagin L., Boltianski V., Gamkrelidze R.,
Science Dept., Iowa State University. Michtchenko E., 1965, Théorie mathématique des
http://janowiec.cs.iastate.edu/papers/rrt.ps. processus optimaux, Edition Mir.
LaValle S. M., Kuffner J. J., 1999, Randomized Rana A.S., Zalazala A. M. S., 1996, Near time optimal
kinodynamic planning, Proc. IEEE Int. Conf. On Rob. collision free motion planning of robotic manipulators
& Aut., pp. 473-479. using an evolutionary algorithm, Robotica, 14, pp. 621-
Lazrak M., 1996, Nouvelle approche de commande 632.
optimale en temps final libre et construction Richard M. J., Dufourn F., Tarasiewicz S., 1993,
d’algorithmes de commande de systèmes articulés, Commande des robots manipulateurs par la
Thèse d’état, Université de Poitiers. programmation dynamique, Mech. Mach. Theory,
Macfarlane S., Croft E. A., 2001, Design of jerk bounded 28(3), 301-316.
trajectories for on-line industrial robot applications, Rebai S., Bouabdallah A., Chettibi T., 2002, Recherche
Proceeding of IEEE Int. Conf. on rob. & Aut. pp. 979- stochastique des mouvements libres optimaux des bras
984. manipulateurs, Premier congrès international de génie
Martin B. J., Bobrow J. E., 1997, Minimum effort motions mécanique, Constantine, Algérie.
for open chain manipulators with task dependent end- Tan H. H., Potts R. B., 1988, Minimum time trajectory
effector constraints, Proc. IEEE Int. Conf. Rob. & Aut. planner for the discrete dynamic robot model with
Albuquerque, New Mexico, pp. 2044-2049. dynamic constraints, IEEE Jour. Of Rob. & Aut. 4(2),
Martin B. J., Bobrow J. E., 1999, Minimum effort motions 174-185.
for open chain manipulators with task dependent end-
effector constraints, Int. Jour. Rob. of Research, 18(2),
pp. 213-224. Appendix A: Characteristics of the 4R robot
Mao Z. , Hsia T. C., 1997, Obstacle avoidance inverse
kinematics solution of redundant robots by neural
Joint N° 1 2 3 4
networks, Robotica, 15, 3-10.
Mayorga R. V., 1995, A framework for the path planning D (rad) 0 0 0 0
of robot manipulators, IASTED third Int. Conf. on d(m) 0 1 1 1
Rob. and Manufacturing, pp. 61-66. r(m) 0 0 0 0
Mitsi S., Bouzakis K. D., Mansour G., 1995, Optimization a(m) 0 0 0 0
of robot links motion in inverse kinematics solution M(kg) 5 4 3 2
considering collision avoidance and joints limits, Izz(kg.m2) 1 0.85 0 0
Mach. & Mec. Theory,30 (5), pp. 653-663. W(N.m) 25 20 15 5
Ola D., 1994, Path-Constrained robot control with limited Fs (N.m) 0.7 0.2 0.5 0.2
torques. Experimental evaluation, IEEE Trans. On Fv (N.m.s) 1 0.2 0.5 0.2
Rob. & Aut., 10(5), pp. 658-668.
Overmars M. H., 1992, A random Approach to motion
planning, Technical report RUU-CS-92-32, Utrecht
University.
FUZZY MODEL BASED CONTROL APPLIED TO IMAGE-BASED
VISUAL SERVOING
Keywords: visual servoing, robotic manipulators, inverse fuzzy control, fuzzy compensation, fuzzy modeling.
Abstract: A new approach to eye-in-hand image-based visual servoing based on fuzzy modeling and control is proposed
in this paper. Fuzzy modeling is applied to obtain an inverse model of the mapping between image features
velocities and joints velocities, avoiding the necessity of inverting the Jacobian. An inverse model is identified
for each trajectory using measurements data of a robotic manipulator, and it is directly used as a controller.
As the inversion is not exact, steady-state errors must be compensated. This paper proposes the use of a
fuzzy compensator to deal with this problem. The control scheme contains an inverse fuzzy model and a
fuzzy compensator, which are applied to a robotic manipulator performing visual servoing, for a given profile
of image features velocities. The obtained results show the effectiveness of the proposed control scheme:
the fuzzy controller can follow a point-to-point pre-defined trajectory faster (or smoother) than the classic
approach.
Z0
-q2
q1
Y0
X0 Yc Xc
Figure 2: Control loop of image-based visual servoing, us-
ing a PD control law.
Zc
Figure 1: Planar robotic manipulator with eye-in-hand, Pinto, 2003a), s , and is defined as
camera looking down, with joint coordinates, and world and
camera frames. Ji (x, y, Z) =
] 0
1
−Z 0
1
−Z
x
Z
y
Z
x·y
1 + y2
− 1 + x2
)
−x · y
) y
−x
]
(6)
2.1 Modeling the Image-Based where Z is the distance between the camera and the
object frames.
Visual Servoing System The relation between the image features velocity
and the joints velocities can now be easily derived
In this paper, the image-based visual servoing sys- from (1), (3) and (5):
tem used is the eye-in-hand system, where the camera
is fixed at the robotic manipulator end-effector. The ṡ = J(x, y, Z, q) · q̇ , (7)
kinematic modeling of the transformation between where J is the total Jacobian, defined as:
the image features velocities and the joints velocities
is defined as follows. Let e P be the pose of the end- J(x, y, Z, q) = Ji (x, y, Z) · c We · e JR (q) (8)
effector (translation and rotation), and c P be the pose
of the camera. Both depend on the robot joint vari- 2.2 Controlling the Image-Based
ables q. Thus, the transformation from the camera
velocities and the end-effector velocities (Gonçalves
Visual Servoing System
and Pinto, 2003a) is given by:
One of the classic control scheme of robotic manip-
c
Ṗ = c We · e Ṗ , (1) ulators using information from the vision system, is
presented in (Espiau et al., 1992). The global control
where architecture is shown in Fig. 2, where the block Robot
c
c
Re S (c te ) · c Re inner loop law is a PD control law.
We = c (2) The robot joint velocities q̇ to move the robot to a
03×3 Re
predefined point in the image, s∗ are derived using
and S(c te ), is the skew-symmetric matrix associated the Visual control law, (Gonçalves and Pinto, 2003a),
with the translation vector c te , and c Re is the rotation where an exponential decayment of the image fea-
matrix between the camera and end-effector frames tures error is specified:
needed to be measured.
The joint and end-effector velocities are related in q̇ = −Kp · Jˆ−1 (x, y, Z, q) · (s − s∗ ) . (9)
the end-effector frame by: Kp is a positive gain, that is used to increase or de-
e
Ṗ = JR (q) · q̇
e
(3) crease the decayment of the error velocity.
e
where JR is the robot Jacobian for the planar ro-
botic manipulator (Gonçalves and Pinto, 2003a), and
is given by: 3 PROBLEM STATEMENT
T
e l1 · sin(q2 ) l2 + l1 · cos(q2 ) 0 0 0 1
JR (q) = To derive an accurate global Jacobian, J, a perfect
0 l2 0 0 0 1
(4) modeling of the camera, the image features, the posi-
and li , with i = 1, 2 are the lengths of the robot links. tion of the camera related to the end-effector, and the
The image features velocity, ṡ and the camera veloc- depth of the target related to the camera frame must
ity, c Ṗ are related by: be accurately determined.
Even when a perfect model of the Jacobian is avail-
ṡ = Ji (x, y, Z) · c Ṗ (5) able, it can contain singularities, which hampers the
where Ji (x, y, Z) is the image Jacobian, which is application of a control law. To overcome these diffi-
derived using the pin-hole camera model and a sin- culties, a new type of differential relationship between
gle image point as the image feature (Gonçalves and the features and camera velocities was proposed in
Fuzzy Model Based Control Applied to Image-Based Visual Servoing 83
(Suh and Kim, 1994). This approach estimates the a collection of if–then rules, creating an initial model
variation of the image features, when an increment in structure. Parameters in this structure can be adapted
the camera position is given, by using a relation G. using input-output data. When no prior knowledge
This relation is divided into G1 which relates the po- about the system is available, a fuzzy model can be
sition of the camera and the image features, and F1 constructed entirely on the basis of systems measure-
which relates their respective variation: ments. In the following, we consider data-driven
s + δs = G(c P + δ c P ) = G1 (c P ) + F1 (c P, δ c P ) modeling based on fuzzy clustering (Sousa et al.,
(10) 2003).
The image features velocity, ṡ, depends on the camera We consider rule-based models of the Takagi-
velocity screw, c Ṗ , and the previous position of the Sugeno (TS) type. It consists of fuzzy rules which
image features, s, as shown in Section 2. Considering each describe a local input-output relation, typically
only the variations in (10): in a linear form:
δs = F1 (c P, δ c P ), (11) Ri : If x1 is Ai1 and . . . and xn is Ain
let the relation between the camera position variation then yi = ai x + bi , i = 1, 2, . . . , K. (17)
δ c P , the joint position variation, δq and the previous
position of the robot q be given by: Here Ri is the ith rule, x = [x1 , . . . , xn ]T are the in-
put (antecedent) variable, Ai1 , . . . , Ain are fuzzy sets
δ c P = F2 (δq, q). (12) defined in the antecedent space, and yi is the rule out-
The equations (11) and (12) can be inverted if a one- put variable. K denotes the number of rules in the
to-one mapping can be guaranteed. Assuming that rule base, and the aggregated output of the model, ŷ,
this inversion is possible, the inverted models are is calculated by taking the weighted average of the
given by: rule consequents:
δ c P = F1−1 (δs, c P ) (13) K
and i=1 βi yi
ŷ = K , (18)
δq = F2−1 (δ c P, q) (14)
i=1 wi βi
The two previous equations can be composed be-
cause the camera is rigidly attached to the robot end- where βi is the degree of activation of the ith rule:
effector, i.e., knowing q, c P can easily be obtained βi = Πnj=1 µAij (xj ), i = 1, 2, . . . , K, and
from the robot direct kinematics, c Re and c te . Thus, µAij (xj ) : R → [0, 1] is the membership function
an inverse function F −1 is given by: of the fuzzy set Aij in the antecedent of Ri .
To identify the model in (17), the regression ma-
δq = F −1 (δs, q) , (15)
trix X and an output vector y are constructed from
and it states that the joint velocities depends on the the available data: XT = [x1 , . . . , xN ], yT =
image features velocities and the previous position [y1 , . . . , yN ], where N n is the number of sam-
of the robot manipulator. Equation (15) can be dis- ples used for identification. The number of rules,
cretized as K, the antecedent fuzzy sets, Aij , and the conse-
δq(k) = Fk−1 (δs(k + 1), q(k)). (16) quent parameters, ai , bi are determined by means of
In image-based visual servoing, the goal is to obtain a fuzzy clustering in the product space of the inputs
joint velocity, δq(k), capable of driving the robot ac- and the outputs (Babuška, 1998). Hence, the data
cording to a desired image feature position, s(k + 1), set Z to be clustered is composed from X and y:
with an also desired image feature velocity, δs(k +1), ZT = [X, y]. Given Z and an estimated number of
from any position in the joint spaces. This goal can be clusters K, the Gustafson-Kessel fuzzy clustering al-
accomplished by modeling the inverse function Fk−1 , gorithm (Gustafson and Kessel, 1979) is applied to
using inverse fuzzy modeling as presented in section compute the fuzzy partition matrix U.
4. This new approach to image-based visual servoing The fuzzy sets in the antecedent of the rules are
allows to overcome the problems stated previously re- obtained from the partition matrix U, whose ikth el-
garding the Jacobian inverse, the Jacobian singulari- ement µik ∈ [0, 1] is the membership degree of the
ties and the depth estimation, Z. data object zk in cluster i. One-dimensional fuzzy
sets Aij are obtained from the multidimensional fuzzy
sets defined point-wise in the ith row of the partition
matrix by projections onto the space of the input vari-
4 INVERSE FUZZY MODELING ables xj . The point-wise defined fuzzy sets Aij are
approximated by suitable parametric functions in or-
4.1 Fuzzy Modeling der to compute µAij (xj ) for any value of xj .
The consequent parameters for each rule are ob-
Fuzzy modeling often follows the approach of encod- tained as a weighted ordinary least-square estimate.
ing expert knowledge expressed in a verbal form in Let θiT = aTi ; bi , let Xe denote the matrix [X; 1]
84 P.J.S. Gonçalves et al.
5 FUZZY COMPENSATION OF
STEADY-STATE ERRORS
Control techniques based on a nonlinear process
model such as Model Based Predictive Control or
Figure 3: Robot-camera configuration for model identifica- control based on the inversion of a model, (Sousa
tion. et al., 2003), can effectively cope with the dynam-
ics of nonlinear systems. However, steady-state er-
rors may occur at the output of the system as a result
of disturbances or a model-plant mismatch. A scheme
and let Wi denote a diagonal matrix in R N ×N hav- is needed to compensate for these steady-state errors.
ing the degree of activation, βi (xk ), as its kth diag- A classical approach is the use of an integral control
onal element. Assuming that the columns of Xe are action. However, this type of action is not suitable
linearly independent and βi (xk ) > 0 for 1 ≤ k ≤ N , for highly nonlinear systems because it needs differ-
the weighted least-squares solution of y = Xe θ + ent parameters for different operating regions of the
becomes system.
Therefore, this paper develops a new solution,
−1 T called fuzzy compensation. The fuzzy compensator
θi = XTe Wi Xe Xe Wi y . (19)
intends to compensate steady-state errors based on the
information contained in the model of the system and
allows the compensation action to change smoothly
4.2 Inverse Modeling from an active to an inactive state. Taking the local
derivative of the model with respect to the control ac-
tion, it is possible to achieve compensation with only
one parameter to be tuned (similar to the integral gain
For the robotic application in this paper, the inverse of a PID controller). For the sake of simplicity, the
model is identified using input-output data from the method is presented for nonlinear discrete-time SISO
inputs q̇(k), outputs δs(k + 1) and the state of the sys- systems, but it is easily extended to MIMO systems.
tem q(k). A commonly used procedure in robotics is Note that this is the case of the 2-DOF robotic system
to learn the trajectory that must be followed by the ro- in this paper.
bot. From an initial position, defined by the joint posi-
tions, the robotic manipulator moves to the predefined 5.1 Derivation of Fuzzy
end position, following an also predefined trajectory,
by means of a PID joint position controller. This spe- Compensation
cialized procedure has the drawback of requiring the
identification of a new model for each new trajectory. In this section it is convenient to delay one step the
However, this procedure revealed to be quite simple model for notation simplicity. The discrete-time SISO
and fast. Moreover, this specialized identification pro- regression model of the system under control is then
cedure is able to alleviate in a large scale the prob- given by:
lems derived from the close-loop identification pro- y(k) = f (x(k − 1)) , (20)
cedure. The identification data is obtained using the
robot-camera configuration shown in Fig. 3. where x(k − 1) is the state containing the lagged
Note that we are interested in the identification of model outputs, inputs and states of the system. Fuzzy
the inverse model in (16). Fuzzy modeling is used compensation uses a correction action called uc (k),
to identify an inverse model, as e.g. in (Sousa et al., which is added to the action derived from an inverse
2003). In this technique, only one of the states of model-based controller, um (k), as shown in Fig. 4.
the original model, q̇(k), becomes an output of the The total control signal applied to the process is thus
inverted model and the other state, q(k), together given by,
with the original output, δs(k + 1), are the inputs of u(k) = um (k) + uc (k). (21)
the inverted model. This model is then used as the
Note that the controller in Fig. 4 is an inverse model-
main controller in the visual servoing control scheme.
based controller for the robotic application in this pa-
Therefore, the inverse model must be able to find a
per, but it could be any controller able to control the
joint velocity, q̇(k), capable to drive the robot fol-
system, such as a predictive controller.
lowing a desired image feature velocity in the image
space, δs(k + 1), departing from previous joint posi- Taking into account the noise and a (small) off-
tions, q(k). set error, a fuzzy set SS defines the region where
the compensation is active, see Fig. 5. The error
Fuzzy Model Based Control Applied to Image-Based Visual Servoing 85
6 EXPERIMENTAL SETUP
The experimental setup can be divided in two subsys-
tems, the vision system and the robotic manipulator
system. The vision system acquires and process im-
ages at 50Hz, and sends image features, in pixels, to
the robotic manipulator system via a RS-232 serial
port, also at 50 Hz. The robotic manipulator system
controls the 2 dof planar robotic manipulator, Fig. 6
Figure 4: Fuzzy model-based compensation scheme. and Fig. 1 using the image data sent from the vision
system.
7 RESULTS
This section presents the simulation results obtained
for the robotic manipulator, presented in Section 6.
First, the identification of the inverse fuzzy model of
the robot is described. Then, the control results using
the fuzzy model based controller introduced in this
Figure 6: : Experimental Setup, Planar Robotic Manipula- paper, i.e. the combination of inverse fuzzy control
tor with eye-in-hand, camera looking up. and fuzzy compensation, are presented.
ceives the image data from the vision system via RS- 0.1
Image features velocity [m/s]
6.3 Systems Integration Figure 7: Input data for fuzzy identification. Top: joint po-
sitions, q. Bottom: image feature velocity, δs.
The control algorithms for the robotic manipulator
are developed in a third PC, called Host-PC. An exe- The set of identification data used to build the in-
cutable file containing the control algorithms is then verse fuzzy model contains 250 samples, with a sam-
created for running in the Target-PC. The executable ple time of 20ms. Figure 7 presents the input data,
file created, containing the control algorithm, is then which are the joint positions q1 (k) and q2 (k), and the
downloaded, via TCP/IP, to the Target-PC, where all image features velocities δsx (k) and δsy (k), used for
the control is performed. After a pre-defined time for identification.
Fuzzy Model Based Control Applied to Image-Based Visual Servoing 87
30
Joint 1 Velocity [rad/s]
20
0
10
0
−0.05
v [pixel]
−20
2
Joint 2 Velocity [rad/s]
−30
1
0 −40
−1 −50
−2
−60
−20 −10 0 10 20 30 40 50 60
0 50 100 150 200 250
No samples [20 ms] u [pixel]
Figure 8: Validation of the inverse fuzzy model (joint veloc- Figure 10: Image features trajectory s, in the image plane.
ities δq). Solid – real output data, and dash-dotted – output Solid – inverse fuzzy model control, and dash-dotted – clas-
of the inverse fuzzy model. sical visual servo control.
In terms of parameters, four rules (clusters) re- call that the chosen profile for the image features ve-
vealed to be sufficient for each output, and thus the locity moves the robot from the initial joints position
inverse fuzzy model has 8 rules, 4 for each output, δq1 q = [−1.5; 0.3] to the final position q = [−1.51; 1.52]
and δq2 . The clusters are projected into the product- in one second, starting and ending with zero velocity.
space of the space variables and the fuzzy sets Aij are
determined. The comparison of the image features trajectory for
both the classic and the fuzzy visual servoing con-
trollers is presented in Fig. 9. In this figure, it is shown
7.2 Control Results that the classical controller follows the trajectory with
a better accuracy than the fuzzy controller. However,
This section presents the obtained control results, us- the fuzzy controller is slightly faster, and reaches the
ing the classical image-based visual servoing pre- vicinity of the target position before the classical con-
sented in Section 2, and the fuzzy model-based con- troller. The image features trajectory in the image
trol scheme combining inverse model control pre- plane is presented in Fig. 10, which shows that both
sented in Section 4, and fuzzy compensation controllers can achieve the goal position (the times,
described in Sec tion 5. The implementation was devel- ×, sign in the image) with a very small error. This
oped in a simulation of the planar robotic manipula- figure shows also that the trajectory obtained with the
tor eye-in-hand system. This simulation was devel- inverse fuzzy model controller is smoother. There-
oped and validated in real experiments, using clas- fore, it is necessary to check the joint velocities in
sic visual servoing techniques, by the authors. Re- order to check their smoothness. Thus the joint veloc-
88 P.J.S. Gonçalves et al.
2
Joint Velocity [rad/s]
1
ACKNOWLEDGEMENTS
This work is supported by the “Programa de Financia-
0
mento Plurianual de Unidades de I&D (POCTI) do Quadro
Comunitário de Apoio III”, by program FEDER, by the
−1 FCT project POCTI/EME/39946/2001, and by the “Pro-
grama do FSE-UE, PRODEP III, acção 5.3, no âmbito do
−2
III Quadro Comunitário de apoio”.
0 10 20 30 40 50 60 70 80 90
No samples [20 ms]
Abstract: The nonlinear discrete-time optimal control problem with terminal constraints is treated using a new evolutionary
approach which combines a genetic search for finding the control sequence with a solution of the initial value
problem for the state variables. The main advantage of the method is that it does not require to obtain the
solution of the adjoint problem which usually leads to a two-point boundary value problem combined with an
optimality condition for finding the control sequence. The method is verified by solving the problem of discrete
velocity direction programming with the effects of gravity and thrust and a terminal constraint on the final
vertical position. The solution compared favorably with the results of gradient methods.
Several gradient based methods have been which when combined with a modified hybrid GA,
proposed for solving the discrete-time optimal can solve the discrete-time optimal control problem
control problem (Mayne, 1966). For example, very easily. There are significant advantages to this
Murray and Yakowitz (Murray, 1984) and approach. First, the need to solve the two-point
(Yakowitz, 1984) developed a differential dynamic boundary value problem (TPBVP) is completely
programming and Newton's method for the solution avoided. Instead, only initial value problems (IVP)
of discrete optimal control problems, see also the are solved. Second, after finding an optimal
book of Jacobson and Mayne (Jacobson, 1970), solution, we verify that it approximately satisfies the
(Ohno, 1978), (Pantoja, 1988) and (Dunn, 1989). first-order necessary conditions for a stationary
Similar methods have been further developed by solution, so the mathematical soundness of the
Liao and Shoemaker (Liao, 1991). Another method, traditional necessary conditions is retained.
the trust region method, was proposed by Coleman Furthermore, after obtaining a solution by direct
and Liao (Coleman, 1995) for the solution of genetic search, the static and dynamic Lagrange
unconstrained discrete-time optimal control multipliers (the adjoint variables) can be computed
problems. Although confined to the unconstrained and compared with the results from a gradient
problem, this method works for large scale method. All this is achieved without directly solving
minimization and is capable of handling the so the TPBVP. There is a price to be paid, however,
called hard case problem. since, in the process, we are solving many initial
Each method, whether direct or indirect, value problems (IVPs). This might present a
gradient-based or direct search based, has its own challenge in advanced difficult problems, where the
advantages and disadvantages. However, with the dynamics are described by a higher order system of
advent of computing power and the progress made ordinary differential equations, or when the
in methods that are based on optimization analogies equations are difficult to integrate over the required
from nature, it became possible to achieve a remedy time interval and special methods are required. On
to some of the above mentioned disadvantages the other hand, if the system is described by
through the use of global methods of optimization. discrete-time difference equations that are relatively
These include stochastic methods, such as simulated well behaved and easy to iterate, the need to solve
annealing (Laarhoven, 1989), (Kirkpatrick, 1983) the initial value problem many times does not
and evolutionary computation methods (Fogel, represent a serious problem. For instance, the
1998), (Schwefel, 1995) such as genetic algorithms example problem presented here , the discrete
(GA) (Michalewicz, 1992a), see also (Michalewicz, velocity programming problem (DVDP) with the
1992b) for an interesting treatment of the linear combined effects of gravity, thrust and drag,
discrete-time problem. together with a terminal constraint (Bryson, 1999),
Genetic algorithms provide a powerful runs on a 1.6 GHz pentium 4 processor in less than
mechanism towards a global search for the a minute of CPU time.
optimum, but in many cases, the convergence is very In the next section, a mathematical formulation
slow. However, as will be shown in this paper, if the of the optimal control problem is given. The
GA is supplemented by problem specific heuristics, evolutionary approach to the solution is then
the convergence can be accelerated significantly. It described. In order to illustrate the method, a
is well known that GAs are based on a guided specific example, the discrete velocity direction
random search through the genetic operators and programming (DVDP) is solved and results are
evolution by artificial selection. This process is presented and compared with the results of an
inherently very slow, because the search space is indirect gradient method developed by Bryson
very large and evolution progresses step by step, (Bryson, 1999).
exploring many regions with solutions of low
fitness. What is proposed here, is to guide the search
further, by incorporating qualitative knowledge 2 OPTIMAL CONTROL OF
about potential good solutions. In many problems,
this might involve simple heuristics, which when
NONLINEAR DISCRETE TIME
combined with the genetic search, provide a DYNAMICAL SYSTEMS
powerful tool for finding the optimum very quickly.
The purpose of the present work, then, is to In this section, we describe a formulation of the
incorporate problem specific heuristic arguments, nonlinear discrete-time optimal control problem
An Evolutionary Approach to Nonlinear Discrete-Time Optimal Control 91
Then, the adjoint equations for the dynamical subject to the dynamical equality constraints, Eqs.
multipliers are given by (1-2) and to the terminal constraints (4), which are
repeated here for convenience as Eq.(18)
(15)
; ²³ ~ /% ²³ ~ ; ² b ³% ´%²³Á "²³Á µ (18) ´%²5 ³µ ~ ¢ s ª s
and the final conditions can be written in terms of Since we are using a direct search method, condition
the augmented function ) (18) can also be stated as a search for a maximum,
namely we can set a goal which is equivalent to (18)
(16) ; ²5 ³ ~ )% ~ % b ; % in the form
If the indirect approach to optimal control is used, (19) maximize 1 ²5³ ~ c T´%²5³µ´%²5³µ
the state equations (1) with initial conditions (2)
need to be solved together with the adjoint equations The fitness function - can now be defined by
(15) and the final conditions (16), where the control
sequence "²³ is to be determined from the (20) - ²5 ³ ~ 1 ²5 ³ b ² c ³1 ²5 ³
optimality condition (13). This represents a coupled
system of nonlinear difference equations with part of ~ ´% ²5 ³µ c ² c ³T´%²5 ³µ´%²5 ³µ,
the boundary conditions specified at the initial time
~ and the rest of the boundary conditions with ´Á µ and % ²5³ determined from the
specified at the final time ~ 5 . This is a nonlinear following dynamical equality constraints:
two-point boundary value problem (TPBVP) in
difference equations. Except for special simplified (21) %² b ³ ~ ´%²³Á "²³Á µ,
cases, it is usually very difficult to obtain solutions
´Á 5 c µ
for such nonlinear TPBVPs. Therefore, many
numerical methods have been developed to tackle
this problem, see the introduction for several (22) %²³ ~ %
references.
In the proposed approach, the optimality
condition (13) and the adjoint equations (15) 3 DISCRETE VELOCITY
together with their final conditions (16) are not used
in order to obtain the optimum solution. Instead, the
DIRECTION PROGRAMMING
optimal values of the control sequence "²³ are FOR MAXIMUM RANGE WITH
found by genetic search starting with an initial GRAVITY AND THRUST
population of solutions with values of "²³ randomly
distributed within a given domain. During the In this section, the above formulation is applied to a
search, approximate, less than optimal values of the specific example, namely, the problem of finding the
solutions "²³ are available for each generation. trajectory of a point mass subjected to gravity and
With these approximate values known, the state thrust and a terminal constraint such as to achieve
equations (1) together with their initial conditions maximum horizontal distance, with the direction of
(2) are very easy to solve, by a straightforward the velocity used to control the motion. This
iteration of the difference equations from ~ to problem has its roots in the calculus of variations
~ 5 c . At the end of this iterative process, the and is related to the classical Brachistochrone
final values %²5³ are obtained, and the fitness problem, in which the shape of a wire is sought
function can be determined. The search than seeks along which a bead slides without friction, under the
to maximize the fitness function - such as to fulfill action of gravity alone, from an initial point ²% Á & ³
the goal of the evolution, which is to maximize to a final point ²% Á & ³ in minimum time ! . The
1 ²5³, as given by the following Eq.(17), subject to dual problem to the Brachistochrone problem
the terminal constraints ´%²5³µ ~ , as defined consists of finding the shape of the wire such as the
by Eq.(18). bead will reach a maximum horizontal distance %
(17) maximize 1 ²5 ³ ~ ´% ²5 ³µ in a prescribed time ! . Here, we treat the dual
An Evolutionary Approach to Nonlinear Discrete-Time Optimal Control 93
problem with the added effects of thrust and a a constant thrust and gravity . The problem
terminal constraint where the final vertical position is to determine the control sequence ²³ at points
& is prescribed. The more difficult problem, where along the trajectory, where ´Á 5 c µ, such as to
the body is moving in a viscous fluid and the effect maximize % at time ! , arriving at the same time at a
of drag is taken into account was also solved, but prescribed elevation & . The time at the end of each
due to lack of space, the results will be presented segment is given by !²³ ~ "; , so can be viewed
elsewhere. The reader interested in these problems as a time step counter at point . Integrating the
can find an extensive discussion in Bryson's book first equation of motion, Eq.(17) from a time
(Bryson,1999). !²³ ~ "; to !² b ³ ~ ² b ³"; , we get
Let point O be the origin of a cartesian system of
coordinates in which% is pointing to the right and& (28) = ² b ³ ~ = ²³ b ´ b ²³µ";
is pointing down. A constant thrust force - is
acting along the path on a particle of mass which Integrating the velocity = over a time interval "; ,
moves in a medium without friction. A constant we obtain the length of the segment "²³
gravity field with acceleration is acting downward connecting the points and b .
in the positive & direction. The thrust acts in the
direction of the velocity vector = and its magnitude
is - ~ , i.e. times the weight . The (29)
velocity vector = acts at an angle with respect to "²³ ~ = ²³"; b ´ b ²³µ²"; ³
the positive direction of %. The angle , which
serves as the control variable, is positive when = Once "²³ is determined, it is easy to obtain the
points downward from the horizontal. The problem coordinates % and & as
is to find the control sequence ²!³ to maximize the
horizontal range % in a given time ! , provided the (30) %² b ³ ~ %²³ b "²³ ²³
particle ends at the vertical location & . In other
words, the velocity direction ²!³ is to be ~ %²³ b = ²³ ²³";
programmed such as to achieve maximum range
and fulfill the terminal constraint & . The equations
b ´ b ²³µ ²³²"; ³
of motion are
The optimal control problem now consists of finding (41) ) ~ b ; ~ %²5 ³ b ´&²5 ³ c & µ
the sequence ²³ such as to maximize the range
%²5³, subject to the dynamical constraints (33-35), The discrete Euler-Lagrange equations are derived
the initial conditions (36) and the terminal from the Hamiltonian function:
constraint (37), where & is in units of ! and the
final time ! is given. (42) = ²³ ~ /= ²³ ~ = ² b ³
In this section we present the traditional indirect (44) & ²³ ~ /& ²³ ~ & ² b ³
approach to the solution of the optimal control
problem, which is based on the first order necessary
It follows from the last two equations that the
conditions for an optimum. First, we derive the
multipliers % ²³ and & ²³ are constant. The final
Hamiltonian function for the above DVDP problem.
We then derive the adjoint dynamical equations for conditions for the multipliers are obtained from the
the adjoint variables (the Lagrange multipliers) and augmented function ).
the optimality condition that needs to be satisfied by
the control sequence ²³. Since we have used the (45)
symbol % for the horizontal coordinate, we denote = ²5 ³ ~ )= ²5 ³ ~ = ²5 ³ b = ²5 ³ ~
the state variables by . So the state vector for this
problem is % ²5 ³ ~ )% ²5 ³ ~ % ²5 ³ b %²5 ³ ~
The performance index and the terminal constraint Since % and & are constant, they can be set equal
are given by to their final values:
With the values given in (46), the equation for = ²³ (50) - ²5 ³ ~ 1 ²5 ³ b ² c ³1 ²5 ³
becomes
~ ´ ²5 ³µ c ² c ³T´²5 ³µ´²5 ³µ,
(47)
= ²³ ~ = ² b ³ b ²³°5 b ²³°5 with ´Á µ and 1 ²5³ and 1 ²5³ given by:
The required control sequence ²³ is determined For each member in the population of solutions, the
from the optimality condition fitness function depends on the final values %²5³
and &²5³, which are determined by solving the
(49) initial value problem defined by the state equations
/ ²³ ~ = ² b ³ ²³°5 c= ²³ ²³° (33-35) together with the initial conditions (36).
5 c ²³°²5 ³ b ² ²³³°²5 ³ This process is repeated over many generations.
Here, we run the genetic algorithm for a
b = ²³ ²³°5 b ²³°²5 ³
predetermined number of generations and then we
b ² ²³³°²5 ³ ~ check if the terminal constraint (52) is fulfilled. If
the constraint is not fulfilled, we can either increase
= ² b ³ is determined by the adjoint equation (47) the number of generations or readjust the weight
and the Lagrange multiplier is determined from ´Á µ. After obtaining an optimal solution , we
the terminal equality constraint &²5³ ~ & . can check the first order necessary conditions by
first solving the adjoint equation (47) with its final
condition (48). Once the control sequence is known,
5 AN EVOLUTIONARY the solution of (47-48) is obtained by direct iteration
APPROACH TO OPTIMAL backwards in time. We then check to what extent
the optimality condition (49) is fulfilled by
CONTROL determining / ²³ ~ ²³ for ´Á 5 c µ and
plotting the result as an error ²³ measuring the
We now describe the direct approach using genetic deviation from zero.
search. As was mentioned in Sec. , there is no need The results for the DVDP problem with gravity and
to solve the two-point boundary value problem thrust, with ~ À and the terminal constraint
described by the state equations (33-35) and the & ~ c À are shown in Figs.(1-3). A value of
adjoint equation (47), together with the initial ~ À was used. Fig.1 shows the evolution of the
conditions (36), the final condition (48), the solution over 50 generations. The best fitness and
terminal constraint (37) together with the optimality the average fitness of the population are given. In all
condition (49) for the optimal control ²³. Instead, calculations the size of the population was 50
the direct evolutionary method allows us to evolve a members.
population of solutions such as to maximize the The control sequence ²³, the velocity = ²³ and
objective function or fitness function - ²5³. The the optimal trajectory are given in Fig.2 where the
initial population is built by generating a random sign of & is reversed for plotting. The trajectory
population of solutions ²³, ´Á 5 c µ, obtained here was compared to that obtained by
uniformly distributed within a domain ´min , Bryson (Bryson, 1999) using a gradient method and
max µ. Typical values are max ~ ° and either the results are similar. In Fig. 3 we plot
min ~ c ° or min ~ depending on the the expression for /° ²³ as given by the
problem. The genetic algorithm evolves this initial right-hand side of Eq. (49). Ideally, this should
population using the operations of selection, be equal to zero at every point . However, since we
96 Y. Crispin
e
be estimated by using Eqs.(47-48). The result is
shown in Fig.3. -0.01
-3
x 10
-0.02
10 20 30 40 50 60
-3.18
i
Best f
-3.2 1.5
-3.22
LambdaV
1
0 10 20 30 40 50
-3 0.5
x 10
-2
0
-2.5 10 20 30 40 50 60
Average f
i
-3
Figure 3: The error ²³ measuring the deviation of the
optimality condition / ²³ ~ ²³ from zero, and the
-3.5
0 10 20 30 40 50 adjoint variable = ²³ as a function of the discrete-time
Generations
counter . DVDP with gravity and thrust, ~ À . Here
5 ~
time steps.
Figure 1: Convergence of the DVDP solution with gravity
and thrust, ~ À and terminal constraint & ~ c ÀÀ
1
6 CONCLUSIONS
0.5
gama / (pi/2)
0
A new method for solving the discrete-time optimal
-0.5
control problem with terminal constraints was
-1
0 10 20 30 40 50 60 developed. The method seeks the best control
i
sequence diretly by genetic search and does not
0.6 make use of the first-order necessary conditions to
find the optimum. As a consequence, the need to
f
V/gt
0.4
0.2
develop a Hamiltonian formulation and the need to
solve a difficult two-point boundary value problem
0
10 20 30 40 50 60 for finding the adjoint variables is completely
i
0.1 avoided. This has a significant advantage in more
0.05 advanced and higher order problems where it is
y / (g t2)
-0.05
differential equations, but when it is still easy to
solve the initial value problem (IVP) for the state
-0.1
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 variables. The method was demonstrated by solving
x / (g t2
f
)
a discrete-time optimal control problem, namely, the
DVDP or the discrete velocity direction
Figure 2: The control sequence ²³, the velocity = ²³ and
the optimal trajectory for the DVDP problem with gravity programming problem that was pioneered by Bryson
, thrust ~ À and terminal constraint & ~ c À. using both analytical and gradient methods. This
The sign of & is reversed for plotting. problem includes the effects of gravity and thrust
and was solved easily using the proposed approach.
The results compared favorably with those of
An Evolutionary Approach to Nonlinear Discrete-Time Optimal Control 97
Bryson, who used analytical and gradient unconstrained discrete-time differential dynamic
techniques. programming, IEEE Trans. Automat. Contr., 36, pp.
692-706, 1991.
Mayne, D., A second-order gradient method for
REFERENCES determining optimal trajectories of non-linear discrete
time systems, Intnl. J. Control, 3 (1966), pp. 85-95.
Bryson, A. E. and Ho, Y. C., Applied Optimal Control, Michalewicz, Z., Genetic Algorithms + Data Structures =
Hemisphere, Washington, D.C., 1975. Evolution Programs, Springer-Verlag, Berlin, 1992a.
Bryson, A.E., Dynamic Optimization, Addison-Wesley Michalewicz, Z., Janikow, C.Z. and Krawczyk, J.B., A
Longman, Menlo Park, CA, 1999. Modified Genetic Algorithm for Optimal Control
Coleman, T.F. and Liao, A., An efficient trust region Problems, Computers Math. Applications, 23(12), pp.
method for unconstrained discrete-time optimal 83-94, 1992b.
control problems, Computational Optimization and Murray, D.M. and Yakowitz, S.J., Differential dynamic
Applications, 4, pp. 47-66, 1995. programming and Newton's method for discrete
Dunn, J., and Bertsekas, D.P., Efficient dynamic optimal control problems, J. of Optimization Theory
programming implementations of Newton's method for and Applications, 43, pp. 395-414, 1984.
unconstrained optimal control problems, J. of Ohno, K., A new approach of differential dynamic
Optimization Theory and Applications, 63 (1989), pp. programming for discrete time systems, IEEE Trans.
23-38. Automat. Contr., 23 (1978), pp. 37-47.
Fogel, D.B., Evolutionary Computation, The Fossil Pantoja, J.F.A. de O. , Differential Dynamic Programming
Record, IEEE Press, New York, 1998. and Newton's Method, International Journal of
Fox, C., An Introduction to the Calculus of Variations, Control, 53: 1539-1553, 1988.
Oxford University Press, London, 1950. Pontryagin, L. S. Boltyanskii, V. G., Gamkrelidze, R. V.
Jacobson, D. and Mayne, D. , Differential Dynamic and Mishchenko, E. F., The Mathematical Theory of
Programming, Elsevier Science Publishers, 1970. Optimal Processes, Moscow, 1961, translated by
Kirkpatrick, and Gelatt, C.D. and Vecchi, Optimization Trirogoff, K. N. Neustadt, L. W. (Ed.), Interscience,
by Simulated Annealing, Science, 220, 671-680, New York, 1962.
1983. Schwefel H.P., Evolution and Optimum Seeking, Wiley,
Laarhoven, P.J.M. and Aarts, E.H.L., Simulated New York, 1995.
Annealing: Theory and Applications, Kluwer Yakowitz, S.J., and Rutherford, B., Computational
Academic, 1989. aspects of discrete-time optimal control, Appl. Math.
Liao, L.Z. and Shoemaker, C.A., Convergence in Comput., 15 (1984), pp. 29-45.
A DISTURBANCE COMPENSATION CONTROL FOR AN
ACTIVE MAGNETIC BEARING SYSTEM BY A MULTIPLE
FXLMS ALGORITHM
Joon Lyou
Dept. of Electronics Eng., Chungnam National Univ., Daejeon 305-764, KOREA
Email: jlyou@cnu.ac.kr
Keywords: Active magnetic bearing, Multiple filtered-x least mean square algorithm, Acceleration feedforward
compensation.
Abstract: In this paper, a design technique is proposed for a disturbance feedforward compensation control to
attenuate disturbance responses in an active magnetic bearing system, which is subject to base motion. To
eliminate the sensitivity of model accuracy to disturbance responses, the proposed design technique is an
experimental feedforward compensator, developed from an adaptive estimation, by means of the Multiple
Filtered-x least mean square (MFXLMS) algorithm. The compensation control is applied to a 2-DOF active
magnetic bearing system subject to base motion. The feasibility of the proposed technique is illustrated, and
the results of an experimental demonstration are shown.
2 SYSTEM MODEL
The test rig used in this paper is an AMB system of Figure 2: Photograph of test rig.
2-DOF shown in Fig. 1. Figure 2 is the photograph
of the test rig. The test rig consists of two sets of f2
AMB(left AMB: AMB-1, right AMB:AMB-2) and a f1 J
a
circular shaft. Each end of the shaft is tied up by a
string wire such that the shaft moves only in the y2
y1
vertical plane. Each electromagnet is attached rigidly
to each shaker(B&K-4808), which generates base z1
z2
motion resembling the vehicle motion. Two non-
contacting proximity displacement sensors(AEC-
5505) measure each air gap between the probe tip
and the shaft surface, and the vertical acceleration of Figure 3: Free-body diagram of the levitated axis.
each electromagnet is measured by each
accelerometer(Crossbow, CX04LP1Z). The magnetic attractive force is approximately
proportional to the square of the coil current and
Accelerometer inversely proportional to the square of gap. However
Displacement the nonlinearity of the magnetic attractive force
Sensor
I o i1 I o i2 against the coil current is decreased with the bias
current added to the coil current. Consequently the
-I
linearized model is given by
I o i1 I o i2
fc K d y Kiic (2)
Shaker 1 Shaker 2
It is clear from eq.(4) that the system is open- A2 y2 (k ) ª¬B21W11 B22W21 C21 º¼d1 ( k )
loop unstable, and the base acceleration and the (10)
ª¬B21W12 B22W22 C22 º¼d 2 (k )
gravitational force disturb the system.
T T
d a ª¬0 0
z1
z2 º¼ , f g ª¬0 0 g g º¼ (6) Since the compensators given in eq. (11) are
designed from the system model, the compensation
Since this system has no integrator, the state performance should be sensitive to the accuracy of
feedback control with integral is applied to eliminate the model. In practice, however, this kind of perfect
the steady state error due to the gravity force. cancelling based on the model is not expected
because of the problems such as inaccuracy of
u Kq k i K (7) dynamic model, approximation error of a discrete
equivalent to a continuous transfer function, and
sensor dynamics. Motivated by these problems, an
where K and k i are the state feedback gain vectors, explicit optimal feedforward compensator design
and K is the integration of y1 and y2, i.e., technique is proposed in this paper. By this
T
K ^ y1 y2` . technique, the feedforward compensator design can
The feedback gains in eq. (7) can be design from be separated into two parts.
various kinds of schemes. The closed-loop system
stabilized by eq. (7) can be represented in discrete 1) Disturbance cancelling control for single
time domain as harmonic base motion
A1(q 1) y1 (k ) B11 (q 1)u1(k ) B12 ( q 1)u2 (k ) It is clear from eq. (11) that the response to a
1
C11(q )d1 (k ) C12 (q )d 2 (k )1 harmonic base motion of the frequency Zr can be
(8) exactly nullified by choosing the polynomial
A2 (q ) y2 (k ) B21 (q 1)u1 (k ) B22 (q 1 )u2 (k )
1
Wij (q 1) as the first order polynomial satisfying the
C21(q 1)d1(k ) C22 (q 1 )d 2 (k ) relation
where variables with the index k mean the sampled ªWij w1ij wij2 q 1 º Wij* , i, j 1, 2 (12)
¬ ¼q e jwrT q e jwrT
variables. Ai ( q 1 ) , Bij (q 1) and Cij (q 1) are the
system polynomials. q 1 is the one step delay
operator. where T is the sampling interval.
A general compensator for the system in eq.(8) is Nullifying disturbance response by using
defined by feedforward compensator means physically
matching the impedance from the base motion to the
air-gap with the impedances from the base motions
u1 (k ) W11 (q 1)d1(k ) W12 (q 1 )d 2 (k ) to the air-gaps through the AMB dynamics and of
(9)
u2 (k ) W21(q 1 )d1(k ) W22 (q 1 )d 2 ( k ) the feedforward compensators, so that the
disturbance can be perfectly cancelled. However
compensator design from the model is not suitable
Applying the compensator, eq. (9), to the system, for practical applications. To get rid of the problems
eq. (8), yields the compensated system of the form associated with the inaccurate model, adaptation of
the feedforward compensator is proposed. This
A1 y1 ( k ) ª¬B11W11 B12W21 C11 º¼d1 (k ) technique is an explicit design through experiments
ª¬B11W12 B12W22 C12 º¼d 2 (k ) by using a multiple-FXLMS algorithm. The FXLMS
102 M.S. Kang and J. Lyou
algorithm has been extensively used in the field of d1 and d 2 have the same frequency but have
active noise control(Kuo, 1996; Widrow and Stearns, different relations. For example, if a set of
1985)). Figure 4 shows an example of the multiple- polynomials is estimated from the experiment where
FXLMS algorithm to estimate the compensator D D1 then one can determine E1 and E2 from
polynomial W11* . The parameters of the eq. (14) as
compensators are estimated from the following
update equation. °Wˆ11 ½° °Wˆ12 ½° ° E1 °½
1
D1 ® ¾® ¾ ® 1¾ (15)
°¯Wˆ21 °¿ °¯Wˆ22 °¿ °¯ E 2 °¿
d1(k ) M sin kZrT u11 (k )
Wˆ11 (q 1 ) w11
1 2 1
w11 q
Similarly, from another set of estimated
polynomials obtained from another experiment
Bˆ11
dˆ11
1
(k ) where D D 2 z D1 , E1 and E2 are obtained as
Aˆ1 y1 (k )
MFXLMS
dˆ 21
1
(k ) °Wˆ11 ½° °Wˆ12 ½° ° E1 °½
y2 ( k ) 2
Bˆ 21
D2 ® ¾® ¾ ® 2¾ (16)
Aˆ 2 °¯Wˆ21 °¿ °¯Wˆ22 °¿ °¯ E2 °¿
compensation. For y1, the standard deviations of the adaptive estimation by means of the Multiple
air-gap with compensation and without Filtered-x least mean square (MFXLMS) algorithm
compensation were calculated to be V 14.53Pm and has been proposed. The feasibility of the proposed
1.43Pm, respectively. For y2, the standard deviations technique has been verified by an experimental
of the air-gap with compensation and without study, by using a 2-DOF active magnetic bearing
compensation were calculated to be V 13.13Pm and system subject to base motion. The experimental
1.08 Pm, respectively. The control voltages were results showed that the standard deviation of the
slightly reduced after employing compensation. compensated response was reduced to less than 10%
Figure 10 shows the spectra of the air-gap responses of that by feedback control alone.
in Fig. 9. The disturbance attenuation ratio is
approximately–20db within the frequency band of
the base motion.
ACKNOWLEDGEMENTS
This work was supported by grant no.( R01-2003-
000-10857-0) from the Basic Research Program of
the Korea Science & Engineering Foundation.
REFERENCES
Brunet, M., 1998. Practical Applications of Active
Magnetic Bearing to the Industrial World. 1’st
International Symposium on Magnetic Bearing. Zurich,
pp. 225-244.
Cole, M. O. T., Keogh, P. S. and Burrows, C. R. , 1998.
Figure 8: Measured and fitted FRF of Ŵ11. Control and Non-linear Compensation of a
Rotor/Magnetic Bearing System Subject to base
Motion. 6th Int. Symposium on Magnetic Bearings.
Cambridge, MA, pp. 618-627.
Jinzenji, A., Sasamoto, T., Aikawa, K., Yoshida, S. and
Aruga, K., 2001. Acceleration feedforward control
Against Rotational Disturbance in hard Disk Drives.
IEEE Trans. On Magnetics. Vol. 37, No. 2, pp. 888-893.
Kasada, M.E., Clements, J., Wicks, A. L., Hall, C. D., and
Figure 9: Air-gap responses w/ and w/o compensation. Kirk, R. G., 2000, Effect of sinusoidal base motion on
a magnetic bearing, Proc. IEEE International
Conference on Control Applications, pp. 144-149.
Kuo, S. M. and Morgan, D. R., 1996. Active Noise Control
Systems. A Wiley-Interscience Publication, John Wiley
Sons, Inc.
Suzuki, Y., 1998. Acceleration Feedforward Control for
Active Magnetic Bearing Excited by Ground Motion.
IEEE Proc. Control Theory Appl. Vol. 145, pp. 113-118.
Wang, A.K. and Ren, W., 1999, Convergence analysis of
the multiple-variable filtered-x LMS algorithm with
application to active noise control, IEEE Trans. On
Figure 10: Spectra of air-gap with and without Signal Processing, Vol. 47, No. 4, pp. 1166-1169.
compensation.
White, M. T. and Tomizuka, M., 1997. Increased
Disturbance Rejection in Magnetic Disk Drives by
Acceleration Feedforward Control and Parameter
5 CONCLUSION Adaptation. Control Engineering Practice. vol. 5, no. 6.
pp. 741-751.
In this work, an experimental feedforward Widrow, B. and Stearns, S. D., 1985. Adaptive Signal
compensator design technique, developed from an Processing. Prentice Hall. Englewood Cliffs, NJ.
AN INTELLIGENT RECOMMENDATION SYSTEM BASED ON
FUZZY LOGIC
Shi Xiaowei
Philips (China) Investment Co.,Ltd. Shanghai R&D Centre
38F,Tower1 Kerry Everbright City 218 Tian Mu Xi Road Shanghai, P.R.C.200070
Email: nancy.shi@philips.com Tel.: 86-21-63541088-5917 Fax: 86-21-63544954
Abstract: An intelligent recommendation system for a plurality of users based on fuzzy logic is presented. The
architecture of a multi-agent recommendation system is described. How the system simulates human
intelligence to provide recommendation to users is explained. The recommendation system is based on the
fuzzy user profile, fuzzy filtering and recommendation agents. The user profile is updated dynamically
based on the feedback information. Fuzzy logic is used in fuzzy filtering to integrate different types of
features together for a better simulation of human intelligence. Ambiguity problems can be solved
successfully in this system, e.g., deducing whether a programme with both interesting features and
uninteresting features is worth recommending or not. The application scenario shows that it is more
convenient for users to find programmes of their interest with the proposed recommendation system.
105
J. Braz et al. (eds.), Informatics in Control, Automation and Robotics I, 105–109.
© 2006 Springer. Printed in the Netherlands.
106 S. Xiaowei
8VHU
'HFL VL RQ
5HFRPPHQGDW L RQ 3URFHVV )X]]L I L FDW L RQ 'HI X]]L I L FDW L RQ
PDNL QJ
)X]]\
Figure 1: System architecture. L QSXW 3U RFHVV RXW SXW
t in the profile.
i i
i
Control Theory in a The fuzzy user profile transforms the crisp
Recommendation System parameters (“Like_degree”, Weight) into
membership values. “Like_degree” means the
There are many factors that influence a user if he/she degree the user likes a feature. The shape and
wants to view a programme or not. The user’s location may be different for different problems. If
attitude to a programme is the result of some e and e represent “Like_degree” and “Weight”
1 2
complicated reaction. In other words, it is difficult respectively, the fuzzy memberships can be
for a user to describe their emotion about a described as Figure 3. It is known from Figure 3 that
Figure 3: The fuzzy membership function of user profile.
programme in quantity. Fuzzy theory can simulate
An Intelligent Recommendation System Based on Fuzzy Logic 107
secondary
dislike neutral like
neutral important The method of “centre of gravity” takes more
1 useful factors into consideration. It is adopted in this
system to defuzzicate the feature’s interest_degree.
Where t is the i th feature of the programme. A threshold is set in the Fuzzy Filtering Agent.
i
The threshold can be a crisp value, or a fuzzy value
such as “how much does the user like”. If the
3.2 Similarity Matching programme interest_degree is greater than the
threshold, which means the programme is what the
The Fuzzy Filtering Agent calculates the similarity user wants to watch, then the Filtering Agent will
between the programme and the user profile. If the transfer the programme metadata to the Fuzzy
calculated similarity is above the preset threshold, Recommendation Agent.
the user is considered to be interested in the Based on the learned user preference
programme; then the programme metadata is knowledge, the Fuzzy Recommendation Agent
transferred to the Recommendation Agent. generates an optimal recommendation list and sends
In this system, the fuzzy similarity matching it to the user according to interest_degree.
process can be divided into two steps:
x Feature matching;
x Programme matching.
3.4 Profiling Agent
3.2.1 Feature Matching In the system, the feedback can be explicitly given
by the user or implicitly derived from observations
Feature matching decides how a feature of a of the users’ reaction to a recommended programme.
programme is related to a user’s preference. In order So, the Profiling Agent revises the user profile based
to get the feature “interest_degree”᧨ the procedures on both the explicit and implicit feedback
is executed as shown in Figure 2. information. In this section, how to update the user
Here, Like_degree and Weight are set as input profile by the implicit feedback information is
and the feature of “interest_degree”, which means mainly explained.
how much a user likes the programme, is set as For a recommended programme, the user
output. always has two attitudes to it: skipping over, or
The step of decision making is based on the watching. In other words, the user will skip (delete)
fuzzy inference rules such as following, the programme he/she dislikes, watch the
I.If Like_degree is “dislike” And Weight is programme he/she likes or he/she is not sure. If the
“secondary“ Then f is “disgusted”; user has watched the programme for a period of
i
II.If Like_degree is “dislike” And Weight is time, the user’s profile will be refined and revised
“important” Then f is “very disgusted”; based on the viewing behaviour.
i
III.If Like_degree is “neutral” And Weight is In this system, for programme i , the algorithm
“important” Then f is “neutral”; for updating user profile is depicted as follows:
i
… (WDi - T ) (3-3)
Weight ic Weight i D x
RDi
108 S. Xiaowei
Weight' higher_boundary ;
i
membership᧨the emotion of the user can be
If Weight c is less than its lower-boundary, let
i
obtained. In the case discussed, it is between “much
Weight' lower_boundary ;
i
interested” and “interested” ( P ป 0 .2 , interested
then:
4 EXAMPLE (WDi - T )
0.83
RDi
4.1 Similarity Matching and For the fuzzy model of user profile A assumed,
Preference Learning Example the user profile is updated as following:
Genre Weight=0.9083
Table 1 shows an assumed user profile A and (Movie Like_degree=0.5083
upcoming programme. The problem to be solved is Comedy Like_degree=0.3
to determine whether the user likes the programme News Like_degree=-0.2);
and how much he/she does. Actor Weight=0.8083
Based on the above described procedures, the (XuJing Like_degree=0.1
programme fuzzy filtering inference can be GeYou Like_degree=0.583=0.5
illustrated as Figure 4. LiQinqin Like_degree=-0.125+0.083=-0.042);
For the user profile, the actor LiQinqin’s
Like_degree is -0.125, which indicates the user’s 4.2 Application Scenario
emotion about him is between “dislike” and
“neutral”. In this case, both values of P and ld = neutral An application scenario is provided. Figure 5 shows
P are 0.5. In addition, the feature of “Actor” 's
ld = dislike the main user interface of the fuzzy recommendation
Weight is 0.8, so this feature is “important” and system. Functions are listed in the left column. A
P 1.
important programme recommendation list is on the topside of
Matching by fuzzy logic rules, the actor middle column. The description of a selected
LiQinqin meets both rule II and III. For rule II᧨ P fi programme is presented in the bottom of middle
is 0.5, which means the user is “very disgust” at this column. For a selected programme, three choices are
feature; for rule III, P is 0.5 and the user feels
fi provided to the user, which are “Display”, “Delete”,
“neutral” about this feature. and “Skip”.
Through defuzzification, interest_degree f for 2
e1(ld)
P YHU\ YHU\
GL VJXVW HG
L QW HUHVW HG )HDW XUH /L
QHXW UDO
4LQTL Q
PXFK PXFK
GL VJXVW HG L QW HUHVW HG VL PLO DUL W \
L QW HUHVW HG
L QI HUHQFH Figure 5: Main interface.
GL VJXVW HG
fi
P YHU\ YHU\
L QW HUHVW HG
REFERENCES
GL VJXVW HG
PXFK
GL VJXVW HG PXFK 3URJUDP Kaushal Kurapati, Srinivas Gutta, 2001. A Multi-Agent
QHXW UDO
L QW HUHVW HG VL PLO DUL W \ TV Recommender. http://www.di.unito.it/~liliana/
GL VJXVW HG L QW HUHVW HG L QI HUHQFH
UM01/kurapati.pdf.
P
Belkin, N.J. & Croft, W.B., 1994. Information filtering
and information retrieval: two sides of the same coin.
Figure 4: The programme filtering inference. Communications of the ACM,1994.
Foltz, P. W. and Dumais, S. T., 1992. Personalized
Different from traditional methods, the user profile information delivery: An analysis of information
is not based on the viewing history but on a compact filtering methods. Communications of the ACM, 1992.
and low-cost structure, including all terms that user Ardissono, L. and Buczak, 2002. A. Personalisation in
“likes” and “dislikes”. The user profile is updated future TV”. Proceedings of TV’02, the 2nd workshop
dynamically, e.g. “increase” or “decrease” the on personalization in future TV.
corresponding preference parameters according to Masthoff, J., 2002. Modeling a group of television
the feedback information. The filtering agent uses viewers, Proceedings of the workshop Future TV,
fuzzy logic to integrate different types of features 2002.
together for a better simulation of human Babuska, R., 1998. Fuzzy Modeling for Control”.
intelligence. This system shows a better capability in International Series in Intelligent Technologies,
solving problems of ambiguities in programme Kluwer Academic Publishers.
recommendation, e.g., deducing whether a TV-Anytime Forum, 2003. Metadata Specification S-3
programme with both the interesting features and Part A: Metadata Schemas, Version 1.3,
uninteresting features is worth recommending or not. http://www,tv-anytime.org
The application scenario shows that this
recommendation system can help users enjoy life
more freely.
MODEL REFERENCE CONTROL IN INVENTORY AND SUPPLY
CHAIN MANAGEMENT
The implementation of a more suitable cost function
Abstract: A method of model reference control is investigated in this study in order to present a more suitable method
of controlling an inventory or a supply chain. The problem of difficult determining of the cost of change
made in the control in supply chain related systems is studied and a solution presented. Both model
predictive controller and a model reference controller are implemented in order to simulate results.
Advantages of model reference control in supply chain related control are presented. Also a new way of
implementing supply chain simulators is presented and used in the simulations.
Past Future
uP (t ) w(t )
w (t )
yˆ ( t )
u (t ) yˆ (t )
Model Optimization
Prediction Horizon u (t )
Input Horizon
inventory control in which it has gained a lot of control and a next optimization on the horizon is
attention. Today MPC is the only modern control made. After all the control signals on the horizon are
method to have gained success in real world evaluated, only the first control signal is used in the
applications. (Camacho and Bordons 2002), process and the rest of the future control signals are
(Maciejowski 2002). rejected. This is done because on the next optimizing
As stated earlier, Model Predictive Control is a set instant, the previous output from the process is
of control algorithms that use optimization to design already known and therefore a new, more accurate
an optimal control law by minimizing an objective forecast can be made due to new information being
function. The basic form of the objective function available. This is the key point in the receding
can be written as horizon technique as the prediction gets more
accurate on every step of the horizon but also is the
source of heavy computing in MPC. The receding
J N1 , N 2 , N u horizon technique also allows the algorithm to
N2 handle long time delays. (Camacho and Bordons
¦ G ( j )>yˆ (t j | t ) w(t j )@
2
2002).
j N1
Nu 2.1 Implementing the Cost Function
¦ O ( j )>'u (t j 1)@ ,
2
(1)
j 1 As presented in equation 1, the basic form of a MPC
cost function penalizes changes made in control
where N 1 and N2 are the minimum and maximum weighted with a certain parameter O. This kind of
cost horizons and Nu is the control horizon. G(j) and damping is not very suitable for controlling an
O(j) can be seen as the unit costs of the control. w(t), inventory or a supply chain due to the difficulty of
ǔ(t) and 'u(t) are the reference trajectory, the determining the parameter O as it usually is either
predicted outputs and the change between current the cost of change in inventory level or the cost of
predicted control signal and previous predicted change in ordering. On the other hand the parameter
control signal, respectively. (Camacho and Bordons O cannot be disregarded as it results as minimum-
2002). variance control which most definitely is not the
The algorithm consists of two main elements, an control desired. Another problem with the basic
optimization tool and a model of the system. The form of MPC used in inventory control is the fact
optimizer contains a cost function with constraints that it penalizes the changes made in ordering and
and receives a reference trajectory w(t) to which it not in inventory levels, which can cause unnecessary
tries to lead the outputs as presented in Figure 1. The variations in the inventory level as will be shown
actual forecasting in MPC is done with the model later in this study.
which is used to predict future outputs ǔ(t) on the In this studywe present a more suitableway to form
basis of the previous inputs uP(t) and future inputs the cost function used in a model predictive
u(t) the optimizerhas solved as presented in Figure 1. controller. The problematic penalizing of changes in
Theseforecasts are then used to evaluate the the control is replaced with a similar way to the one
Model Reference Control in Inventory and Supply Chain Management 113
¦ I
2
for example, in (Koivisto et al., 1991). An inverted J *
(i ) P(q 1 ) Iˆ(i ) , (4)
discrete filter is implemented in the cost function so i N1
that the resulting cost function can be written as
where I*(i) = Desired inventory level
N2
Î(i) = Predicted inventory level
¦ y (i) P(q
* 1 2
J ) yˆ (i ) , (2) P(q-1) = Inverted discrete filter as in
i N1 equation (3)
Inflow Inventory
Production
Order
Control
Demand Order
Universal production
Dummy block
Inflow Outflow
supplier Delay
block
Material flow
Information flow
uniquely. For example the Inventory block can be 3.2 Inventory Control Simulations
constructed to operate linearly in order to test more
theoretical control methods or it can even be To present the advantages in the model reference
implemented as realistic as possible to study the
control used in inventory control, a very simple
performance of a real world supply chain. The model was constructed using the universal block set
inventory element represents an end product presented earlier. The structure of the simulator can
inventory of a production plant. Also different
be seen in Figure 3. Both the universal production
control and demand forecasting methods can be block and the dummy supplier block are as
tested and tuned via the Control and Demand presented earlier. To keep the model as simple as
forecast elements in the block, respectively. The
possible, all delays in the model are constant. Each
universal production block has naturally a block in the model consists of a unit delay so that
submodule called Production which consists of total delay in the model is 3 units. Also no major
production dynamics in the simulated factory.
plant-model mismatch is involved in the controller
The universal inventoryblock isbasically the and no constraints are set. Both controllers also
universal production block but without the receive identical accurate demand forecasts. With
Production submodule. The universal inventory
this model we present two simulations with different
block can be used as a traditional warehouse or as a demand patterns.
whole saler or even as a material inventory for a For the traditional model predictive controlled
production plant. As it consists of the same control
inventory the following cost function was
related elements as the universal production block, it implemented
can have a control method and a inventory policy of
its own independently from the production plant.
N2
¦ §¨© G I
The dummysupplier blockis very differentfromthe 2
(i ) Iˆ(i ) O 'O (i ) ·¸ , (5)
* 2
rest of the set. It is used to solve the problem of long J
i N1 ¹
supply chains. Usually one does not want to model
the whole supply chain as it can consist of tens of
companies. Most of the upstream companies are also where I*(i) = Desired inventory level
irrelevant in the simulations from the end products Î(i) = Predicted inventory level
point of view. Therefore it is necessary to replace 'O(i)= Change in order rate
the companies in the upstream of the chain with a G, O = Weight parameters
dummy supplier block. This block takes the order
from its customer as an input and supplies this order For model reference controlled inventory we used
with certain alterations as an output. These the cost function presented in equation 4 with the
alterations can be anything from basic delay to most basic form of the filter so that the only
consideration of decay. Once again, this block can parameter to tune is p1. As mentioned earlier, the
be seen as an interface for the programmer who can number of tunable parameters in model reference
decide the actual operations within the block. control is reduced by one when compared to the
Model Reference Control in Inventory and Supply Chain Management 115
Figure 4: Step responses of an MPC-controlled inventory. In the left-hand figure the cost function is in the form
presented in equation 5, and in the right-hand figure the cost function is in the form presented in equation 4.
traditional model predictive control. This is obvious control supply chain related tasks as it causes
when we look at the cost functions presented in this additional variations in the system. Model reference
simulation, as the cost function used in model control is much more efficient in achieving what
reference controller has only one parameter p1 was beeing pursued in this study – smooth control
instead of the two parameters, G and O included in method which is simple to tune and implement.
the model predictive controller.
4 CONCLUSIONS REFERENCES
In this study we presented a solution to the Camacho, E. F. and Bordons, C., 2002, Model Predictive
problematic determining of the cost parameter Control. Springer-Verlag London Limited
penalizing changes made in the control in model Hennet, J.-C., 2003. A bimodal scheme for multi-stage
predictive controller used in business related production and inventory control. In Automatica, Vol
systems. The model reference control was studied 39, pp. 793-805.
and simulations performed to demonstrate the Koivisto, H., Kimpimäki, P., Koivo, H., 1991. Neural
abilities and advanteges of this control method. It predictive control – a case study. In 1991 IEEE
has been shown, that the model reference control International Symposium on Intelligent Control. IEEE
method is an effective way to control an inventory Press.
and most of all that the method allows us to avoid Lambert, E. P., 1987. Process Control Applications of
the problematic parameter O in the equation 1. This Long-Range Prediction. PhD Thesis, University of
reduction of a very problematic parameter is most Oxford. Trinity.
definitely inevitable if any kind of practical solutions Maciejowski, J. M., 2002, Predictive Control with
are ever desired. Therefore all future research Constraints. Pearson Education Limited
concerning business related control should concider Rivera, D. E., Braun, M. W., Flores, M. E., Carlyle, W.
this. It should also be kept in mind that any M., Kempf, K. G., 2003. A Model predictive control
reduction of tuneable parameters can be seen as an framework for robust management of multi-product,
advantage. multi-echelon demand networks. In Annual Reviews in
Also we showed in thisstudy that the model Control, Vol. 27, pp. 229-245.
reference control is at least as applicable in Towill, D. R., 1996. Industrial dynamics modeling of
inventory control as model predictive control if not supply chains. In International Journal of Physical
even better. The simple, yet effective and smooth Distribution & Logistics Management, Vol. 26, No. 2,
response model reference control provides suits pp.23-42.
perfectly to the unstable and variating environment Tzafestas, S., Kapsiotis, G., Kyriannakis, E., 1997. Model-
of business related systems. It can also be said that based predictive control for generalized production
the filter-like behaviour is desireable in order to problems. In Computers in Industry, Vol. 34, pp. 201-
reduce the bullwhip behaviour, but further research 210.
is needed on this field. Ydstie, B. E., Grossmann, I. E., Perea-López, E., 2003, A
A new supply chain simulator interfacewas also Model predictive control strategy for supply chain
presented and used in the simulations of this study. optimization. In Computers and Chemical
The set of universal supply chain blocks gives an Engineering, Vol. 27, pp. 1202-1218.
opportunity of testing and simulating the perforance
of different control methods or even different forms
of supply chains without reprogramming the basic
elements of inventory and production.
AN LMI OPTIMIZATION APPROACH FOR GUARANTEED COST
CONTROL OF SYSTEMS WITH STATE AND INPUT DELAYS
Keywords: Uncertain systems, time-delays, optimal control, guaranteed cost control, LMI.
Abstract: The robust control problem for linear systems with parameter uncertainties and time-varying delays is exam-
ined. By using an appropriate uncertainty description, a linear state feedback control law is found ensuring
the closed-loop system’s stability and a performance measure, in terms of the guaranteed cost. An LMI ob-
jective minimization approach allows to determine the ”optimal” choice of free parameters in the uncertainty
description, leading to the minimal guaranteed cost.
The model uncertainty is introduced in terms Associated with system (1) is the quadratic cost
of function
! ∞
k1 J(x(t), t) = [xT (t)Qx(t)+uT (t)Ru(t)]dt (6)
∆A1 (t) = A1i r1i (t), | r1i (t) |≤ r¯1 0
i=1 with Q > 0, R > 0, which is to be minimized for a
k2 linear constant gain feedback control law of the form
∆A2 (t) = A2i r2i (t), | r2i (t) |≤ r¯2 u(t) = Kx(t) (7)
i=1
1/2
l1 by assuming (A1 , B1 ) stabilizable, (Q , A1 )
∆B1 (t) = B1i p1i (t), | p1i (t) |≤ p¯1 detectable and the full state vector x(t) available for
i=1 feedback.
l2
∆B2 (t) = B2i p2i (t), | p2i (t) |≤ p¯2 (2) In the absence of uncertainty and time-delay, the
i=1
above formulation reduces to the optimal quadratic
regulator problem (Anderson and Moore, 1990).
where A1i , A2i , B1i , B2i are given matrices with con- Since uncertainties and time-delays are to be taken
stant elements determining the uncertainty structure into account, the notions of quadratic stability and
in the state, input, and delay terms. guaranteed cost control have to be considered. The
The uncertain parameters r1i , r2i , p1i , p2i are following definitions are given.
Lebesgue measurable functions, possibly time-
varying, that belong into pre-specified bounded Definition 2.1
ranges (2), where r¯1 , r¯2 , p¯1 , p¯2 are positive scalars;
since their values can be taken into account by the The uncertain time-delay system (1)-(5) is quadrat-
respective uncertainty matrices, it is assumed that ically stabilizable independent of delay, if there ex-
r¯1 = r¯2 = p¯1 = p¯2 = 1, without loss of generality. ists a static linear feedback control of the form of
Moreover, the advantage of the affine type uncertainty (7), a constant θ > 0 and positive definite matrices
description (2) is that it allows the uncertainty matri- P ∈ Rn×n , R1 ∈ Rn×n and R2 ∈ Rm×m , such
ces to have unity rank and thus to be written in form that the time derivative of the Lyapunov-Krasovskii
of vector products of appropriate dimensions, functional
A1i = d1i eT1i , i = 1, ..., k1 L(x(t), t) = xT (t)P x(t)
! t
A2i = d2i eT2i , i = 1, ..., k2 + xT (τ )R1 x(τ )dτ
T
B1i = f1i g1i , i = 1, ..., l1 t−d1 (t)
T
! t
B2i = f2i g2i , i = 1, ..., l2 (3) + uT (τ )R2 u(τ )dτ (8)
t−d2 (t)
Obviously, the above decomposition is not unique;
hence, the designer has several degrees of freedom in satisfies the condition
choosing the vector products, in order to achieve the dL(x(t), t)
design objectives. By using the vectors in (3), define L̇(x(t), t) = ≤ −θ x(t) 2 (9)
dt
An LMI Optimization Approach for Guaranteed Cost Control of Systems 119
along solutions x(t) of (1) with u(t) = Kx(t), for and thus
all x(t) and for all admissible uncertainties and time- L(x(T ), T ) − L(x(0), 0) = xT (T )P x(T )
delays, i.e. consistent with (2), (3) and (5), respec- ! T
tively. + xT (τ )R1 x(τ )dτ
The resulting closed-loop system is called quadrati- T −d1 (t)
cally stable and u(t) = Kx(t) is a quadratically sta- ! T
bilizing control law. + xT (τ )K T R2 Kx(τ )dτ
T −d2 (t)
! 0
Definition 2.2 − x (0)P x(0) −
T
xT (τ )R1 x(τ )dτ
−d1 (t)
Given the uncertain time-delay system (1)-(5) with ! 0
quadratic cost (6), a control law of the form of (7) − xT (τ )K T R2 Kx(τ )dτ ≤
−d2 (t)
is called a guaranteed cost control, if there exists a !
positive number V(x(0), φ(−d¯1 ), φ(−d¯2 )), such that T
− [xT (t)Qx(t) + uT (t)Ru(t)]dt (14)
0
J(x(t), t) ≤ V(x(0), φ(−d¯1 ), φ(−d¯2 )) (10)
Since (11) is satisfied for L > 0, it follows from Def-
for all x(t) and for all admissible uncertainties and inition 2.1 that (9) is also satisfied for θ = λmin (Q +
time-delays. The upper bound V(.) is then called a K T RK). Consequently u(t) = Kx(t) is a quadrati-
guaranteed cost. cally stabilizing control law and thus L(x(t), t) → 0
as T → ∞ along solutions x(.) of system (1). Conse-
The following Proposition provides a sufficient quently, the above inequality yields
! ∞
condition for quadratic stability and guaranteed cost
control. [xT (t)Qx(t) + uT (t)Ru(t)]dt
0
! 0
Proposition 2.3 ≤ xT (0)P x(0) + φT (τ )R1 φ(τ )dτ
−d¯1
! 0
Consider the uncertain time-delay system (1)-(5) with + φT (τ )K T R2 Kφ(τ )dτ (15)
quadratic cost (6). Let a control law of the form −d¯2
of (7) be such that the derivative of the Lyapunov- and thus
Krasovskii functional (8) satisfies the condition J(x(t), t) ≤ V(x(0), φ(−d¯1 ), φ(−d¯2 )) (16)
L̇(x(t), t) ≤ −x (t)[Q + K RK]x(t)
T T
(11) for V(x(0), φ(−d¯1 ), φ(−d¯2 )) given by (12).
for all x(t) and for all admissible uncertainties and Remark 2.4
time-delays. Then, (7) is a guaranteed cost control
law and The condition resulting from Proposition 2.3 is a
delay-independent condition. It is well known (Li and
V(x(0), φ(−d¯1 ), φ(−d¯2 )) = xT (0)P x(0) de Souza, 1997), (Kolmanovskii et al., 1999)that con-
! 0
trol laws arising from delay-independent conditions
+ φT (τ )R1 φ(τ )dτ are likely to be conservative. Besides, quadratic sta-
−d¯1
! 0
bility and guaranteed cost approaches provide conser-
+ φT (τ )K T R2 Kφ(τ )dτ (12) vative solutions, as well. A means to reduce conser-
−d¯2 vatism consists in minimizing the upper bound of the
quadratic performance index by finding the appropri-
is a guaranteed cost for (6). Moreover, the closed-loop ate guaranteed cost control law. Such a solution will
system is quadratically stable. be sought in the next Section.
Proof
3 SOLUTION IN THE LMI
By integrating both sides of (11) one obtains FRAMEWORK
! T ! T
In order to determine the unity rank uncertainty de-
L̇(x(t), t)dt ≤ − [xT (t)Qx(t)+uT (t)Ru(t)]dt
0 0 composition in an ”optimal” way such that the guar-
(13) anteed cost control law minimizes the corresponding
120 O.J. Kosmidou, Y.S. Boutalis and Ch. Hatzis
T race(P ). Consequently, minimization of the trace has been obtained by solving an LMI feasibility prob-
of M1 implies minimization of the trace of P . In lem. The closed-loop system is then quadratically sta-
a similar way it can be shown that minimization of ble and preserves acceptable performance for all para-
the traces of M2 and M3 implies minimization of the meter uncertainties and time varying delays of a given
traces of R1 and R2 , respectively. Thus, minimiza- class. The system performance deviates from the op-
tion of J¯ in (36) implies minimization of the guaran- timal one, in the sense of LQR design of the nominal
teed cost of the uncertain time-delay system (1)-(5) system, due to uncertainties and time delays. How-
with performance index (6). The optimality of the so- ever, the performance deterioration is limited and this
lution of the optimization problem (36) follows from is expressed in terms of a performance upper bound,
the convexity of the objective function and of the con- namely the guaranteed cost. In order to make the GC
straints. as small as possible, one has to solve an LMI mini-
mization problem. The minimal upper bound corre-
sponds to the ”optimal” rank-1 decomposition of the
uncertainty matrices.
4 EXAMPLE
Consider the second order system of the form of
equation (1)with nominal matrices, REFERENCES
−2 1 −0.2 0.1 Anderson, B. and Moore, J. (1990). Optimal Control:Linear
A1 = , A2 = , Quadratic Methods. Prentice Hall, Englewood Cliffs,
0 1 0 0.1
N.J., 2nd edition.
0 0 Barmish, B. (1985). Necessary and sufficient conditions
B1 = , B2 =
1 0.1 for quadratic stabilizability of uncertain linear sys-
The uncertainty matrices on the state and con- tems. Journal of Optimization Theory and Applica-
trol as well as on the delay matrices are according to tion, 46: 399–408.
Barmish, B. (1994). New tools for robustness of linear sys-
(2), tems. Macmillan, NY.
Bliman, P.-A. (2001). Solvability of a lyapunov equa-
0 0 0 0 tion for characterization of asymptotic stability of lin-
∆A1 = , ∆A2 = ,
0.1 0.1 0.03 0.03 ear delay systems. In Proceedings of the ECC ’01
European Control Conference,Porto, Portugal, pages
0 0
∆B1 = , ∆B2 = 3006–3011. ICEIS Press.
0.1 0.03 Boyd, S., Ghaoui, L. E., Feron, E., and Balakrishnan, V.
and hence, the rank-1 decomposition may be (1994). Linear matrix inequalities in system and con-
chosen such that, trol theory. SIAM Studies in Applied Mathematics,
Philadelphia.
Chang, S. and Peng, T. (1972). Adaptive guaranteed cost
0 0 1
D1 = , D2 = , E 1 = E2 = , control of systems with uncertain parameters. I.E.E.E.
0.1 0.03 1
Trans.on Automatic Control.
0 0 Fishman, A., Dion, J.-M., Dugard, L., and Trofino-Neto,
F1 = , F2 = , G1 = G 2 = 1 A. (1996). A linear matrix inequality approach for
0.1 0.03
guaranteed cost control. In Proceedings of the 13th
The state and control weighting matrices are, IFAC World Congress, San Francisco, USA.
respectively, Q = I2 , R = 4. It is β1 = 0.3, Kim, J.-H. (2001). Delay and its time-derivative depen-
β2 = 0.2. dent robust stability of time-delayed linear systems
By solving the LMI objective minimization problem with uncertainty. I.E.E.E. Trans.on Automatic Con-
one obtains the guaranteed cost J¯ = 25.1417. trol, 46: 789–792.
Kolmanovskii, V., Nikulescu, S., and Richard, J.-P. (1999).
The optimal rank-1 decomposition is obtained
On the liapunov-krasovskii functionals for stability
with s1 = 0.6664, s2 = 2.2212, t1 = 2.5000, analysis oflinear delay systems. International Journal
t2 = 8.3333. Finally, the corresponding control gain of Control, 72: 374–384.
is K = [−0.2470 −6.0400]. Kosmidou, O. and Bertrand, P. (1987). Robust controller
design for systems with large parameter variations. In-
ternational Journal of Control, 45: 927–938.
Li, H., Niculescu, S.-I., Dugard, L., and Dion, J.-M., edi-
5 CONCLUSIONS tors (1998). Robust guaranteed cost control for un-
certain linear time-delay systems, pages 283–301. In
In the previous sections, the problem of guaranteed
cost control has been studied for the class of uncertain
linear systems with state and input time varying de-
lays. A constant gain linear state feedback control law
An LMI Optimization Approach for Guaranteed Cost Control of Systems 123
Stability and control of time-delay systems. Springer- Niculescu, S., Verriest, E., Dugard, L., and Dion, J.-M., edi-
Verlag, London. tors (1998). Stability and robust stability of time-delay
Li, X. and de Souza, C. (1997). Delay-dependent robust systems: A guided tour, pages 1–71. In Stability and
stability and stabilization of uncertain linear delay control of time-delay systems. Springer-Verlag, Lon-
systems: a linear matrix inequality approach. IEEE don.
Trans. on Automatic Control, 42: 1144–1148. Richard, J.-P. (2003). Time-delay systems: an overview of
Mahmoud, M. (2000). Robust control and filtering for time- some recent advances and open problems. Automat-
delay systems. Marcel Dekker, NY. ica, 39: 1667–1694.
Malek-Zavarei, M. and Jamshidi, M. (1987). Time- Tarbouriech, S. and da Silva Jr., J. G. (2000). Synthesis
delay systems:analysis, optimization and applica- of controllers for continuous-time delay systems with
tions. North Holland, Amsterdam. saturating controls via lmi’s. IEEE Trans. on Auto-
Niculescu, S. (2001). Delay effects on stability. Springer- matic Control, 45: 105–111.
Verlag, London.
USING A DISCRETE-EVENT SYSTEM FORMALISM FOR THE
MULTI-AGENT CONTROL OF MANUFACTURING SYSTEMS
Guido Maione
DIASS, Politecnico di Bari, Viale del Turismo, 8, 74100, Taranto, Italy
Email: gmaione@poliba.it
David Naso
DEE, Politecnico di Bari, Via Re David, 200, 70125, Bari, Italy
Email: naso@deemail.poliba.it
Keywords: Multi-Agent Systems, Discrete Event Dynamic Systems, Distributed Manufacturing Control, Heterarchical
Manufacturing Systems.
Abstract: In the area of Heterarchical Manufacturing Systems modelling and control, a relatively new paradigm is that
of Multi-Agent Systems. Many efforts have been made to define the autonomous agents concurrently
operating in the system and the relations between them. But few results in the current literature define a
formal and unambiguous way to model a Multi-Agent System, which can be used for the real-time
simulation and control of flexible manufacturing environments. To this aim, this paper extends and develops
some results previously obtained by the same authors, to define a discrete event system model of the main
distributed agents controlling a manufacturing system. The main mechanism of interaction between three
classes of agents is presented.
Recently, there have been efforts to develop workstation for the imminent operation on that part
analytical models of negotiation processes using, for and, consequently, the most suitable vehicle to
instance, Petri nets (Hsieh, 2004), underlining the transfer it to the station. The selection is based on
need of a systematical analysis and validation real-time updated information directly received from
method for distributed networks of autonomous the alternative stations and transport vehicles,
control entities. Many other researches have focused through an exchange of messages with other agents.
on the experimental validation of MAS on Namely, a Workstation Agent (WA) is a software
distributed simulation platforms (Shattenberg and entity controlling a workstation or a cell of machines
Uhrmacher, 2001, Logan and Theodoropoulos, performing the same operations, and a Transport
2001), which allow to perform detailed Agent (TA) is associated with the transport system
investigations on the interaction schemes. Sharing or with a single or group of transport units.
the same motivations with the mentioned researches, At each operation step, by interacting with WAs
our work focuses on the development of DEVS and TAs, a PA chooses the machine servicing the
models of MAS, which combines the rigor of a tool associated part and the transport device moving the
suitable for performing the theoretical analysis of piece from its current position (the output buffer of
structural properties of the MAS, with its efficiency the occupied machine) to the chosen workstation.
in directly translating the model in a detailed In this framework, one can consider also specific
simulation environment, and its flexibility in testing agents designed to execute other tasks necessary for
both the individual and collective dynamics of the the global operation of the manufacturing plant
autonomous entities. Namely, our main goal is to (Maione and Naso, 2003b). In particular, one can
find a multi-agent design platform that allows users associate an Order Agent (OA) with each different
to assess the relative effectiveness of agents’ order issued by the management level. The OA
decision and interaction strategies, with special retains information on quantity and type of products
interest to adaptive learning mechanisms that allow to be processed. Similarly, one can define a Loading
agents to improve their performance during their Agent (LA) to manage the loading/unloading station
operation (Maione and Naso, 2003a). where the raw/completed parts enter/exit the system.
In this paper, we develop a detailed model of the The global control of the manufacturing floor
interactions between the main agents in a emerges from the concurrent actions of the various
manufacturing system. This contribution extends agents in the system. The careful analysis of their
previous researches by the authors, in which, for interactions is fundamental to understand how to
sake of simplicity, the interactions with transport obtain the desired global behaviour. For instance, the
units were not considered in detail, and illustrates OA interacts with PAs to control the release of the
the basic mechanisms of the modelling procedure. quantity and type of raw parts necessary to realize
The paper also outlines other main directions of the that order. The PAs interact with the LA to negotiate
research in progress. Section 2 introduces the basic the loading/unloading of raw/completed parts. Here,
components of the proposed MAS, and specifies we concentrate on the interactions between a PA and
their roles and relations. Section 3 specifies how to WAs and TAs when a part is ready for a new
model agents as atomic DEVS. Section 4 focuses on process and its PA has to decide the resources
the main interactions between agents, describing the (workstation and transport device) necessary to fulfil
negotiation for a manufacturing process on a part. the operations, among a set of available alternatives.
Sections 5 and 6 give some experimental results, The high-level agents’ decisions are executed by
overview the advantages of the approach, and low-level plant controllers that are not modelled
enlighten the issues open for further research. here. One can also view the network of interacting
agents as a distributed controller supervising and
synchronizing the underlying physical hardware.
2 THE MULTI-AGENT SYSTEMS
CONTROL APPROACH
3 THE DISCRETE-EVENT
We consider each Part Agent (PA) as a control unit MODELLING FRAMEWORK
connected to the corresponding physical part (piece)
flowing through the system. In accordance with the The agents operating in our MAS model interact one
related literature (Duffie and Prabhu, 1996, Heragu, with another by exchanging event messages. Outputs
2002, Prabhu and Duffie, 1999), we associate each from an agent become inputs for other agents. The
part into a batch of identical items in process with a agent state is updated by external input events
PA that identifies in real-time (i.e. shortly before a (inputs) and internal events. Each event in the life of
part is ready for a new process) the most suitable an agent is considered an instantaneous or “atomic”
The Multi-Agent Control of Manufacturing Systems 127
action without duration. Time-consuming actions are The total state q depends on s, the time e elapsed
represented by a pair of events, the first denoting its since the last transition and the decision law DL
start and the second denoting its finish. used by the agent to select and rank the offers
So, unambiguous models for the agents in the received from other agents and to decide its action.
system are identified by all the classified events Usually, to build the models, one observes that
which affect the dynamics of each type of agent. The each agent may require or offer a service to other
internal events are generated by the internal agents. A precise mechanism usually defines the
dynamics of the agent, and the exogenous events are negotiation protocols working according to a cycle
inputs which are not determined by the agent. “announce-offer-reward-confirm”: an agent starts a
Finally, the external output events (or outputs) bid by requiring availability for a service to one or
represent the reaction of the agents. Then, it is more agents, requests the available agents
important to define the sequential state of each information representing an offer for the negotiated
agent. Namely, events change the state. An agent service, collects the replies from the queried agents,
stays in a state until either it receives an input, or an selects the best offer, sends a rewarding message,
amount of time determined by a time advance waits for a confirmation and finally acquires the
function elapses. In the latter case, an internal event service from the rewarded agent.
occurs to change state according to a specified In this paper, we focus on the interactions of a
internal transition function. Otherwise, if an agent PA with WAs and TAs when contracting for an
receives an input, an external transition function operation in the procedure to be accomplished for a
specifies the state transition according to the current part in process. We describe the main part of the PA
total state of the agent, defined by the sequential DEVS model, by concentrating on the mechanism
state, the time elapsed since the last transition and ruling the status-transitions of a PA, which are
some additional information. Finally, agents triggered by inputs or internal events, and the
generate outputs according to an output function. outputs generated for each status. We don’t go into
Delays and faults in the communication process are the details of the DL used by each agent. To this
also considered in our model. Although the effects aim, we exploit the models already defined and
of these phenomena are often neglected in technical developed in precedent papers (Maione and Naso,
literature, we evaluate their effects both on overall 2003a,b) for PAs, WAs and TAs, but we expand and
production performance and on the efficiency of the better clarify them to put them together.
MAS, expressed by ad-hoc performance measures.
This allows us to track, monitor and optimize the
interaction among agents.
To conclude, each agent may be modeled as an
4 THE INTERACTIONS OF A PA
atomic DEVS as follows: WITH WAS AND TAS
A = < X, Y, S, Gint, Gext, O, ta > (1)
where X is the set of inputs, Y is the set of outputs, S To accomplish the manufacturing tasks, each PA
is the set of sequential states, Gint: SoS is the interacts with WAs to choose the workstation for the
internal transition function, Gext: QuXoS is the next operation and with TAs to select the vehicle
external transition function, O: SoY is the output moving the part from the station currently occupied
function, ta: So0+ is the time advance function to the next one. We assume that the PA firstly
(0+ set of positive real numbers with 0 included), communicates exclusively with WAs, then with TAs
Q = ^(s,e,DL) _ sS,0dedta(s)` is the total state set. only.
The sequential state s contains the main For t<tP0 let the PA associated with a generic
information on the status, specifying the condition part, say P, be in a quiescent status (QUIESC) and
of an agent between two successive events. Other let it begin its activity at tP0 (event XP0). Then P
data strictly depend on the type of the agent. E.g., spends the interval [tP0, tP1] to send outputs YP01,
for a PA, one can consider the current residual YP02,…, YP0w at instants t01>tP0, t02,…, t0w=tP1. These
sequence of operation steps necessary to complete messages request the availability to all the WAs of
the procedure, the set of available machines for the the alternative stations (w in number) that can serve
negotiated operation, and prospected time in current the part. The sequence of requests cannot be
state before the next internal event. For a WA, s interrupted by any internal or external occurrence.
includes the queues of the requests received from For sake of simplicity, instead of modelling a
PAs for availability, information and confirmation of sequence of w status-values, we refer to REQWAV
negotiated operations (see below), and the time for the whole duration of the activity and assume
before the next internal event. For a TA, s may that P makes transition at tP1 (event IP1).
contain similar queues of requests received from In [tP1, tP2] P waits for answers (WAIWAV).
PAs, and the time before the next internal event. Namely, the request P transmits to each WA may
128 G. Maione and D. Naso
queue up with similar ones sent by other PAs. Next COMCHW, sends a new request of confirmation to
transition occurs at tP2 when either P receives all the the second WA in the decision rank. If P has no
answers from the queried WAs (XP1), or a specified other alternative destinations and the rejection (XP4)
time-out of WAIWAV expires before P receives all or the time-out (IP10) occurs, it returns to REQWAV
the answers. In case it receives no reply within the and repeats the negotiation. Also WAIWCO,
timeout (IP2), P returns to REQWAV and repeats the WAIWAV and WAIWOF cannot lead to deadlocks,
request procedure. In case of time-out expiration and thanks to the time-out.
some replies received (IP3), P considers only the At tP7, after receiving a confirmation from the
received answers to proceed. The repeated lack of selected WA, P starts the negotiation with TAs for a
valid replies may occur for system congestion, for device to carry the part from the current position to
machine failures or communication faults, or for the input buffer of the selected workstation, where
other unpredictable circumstances. In all cases the last negotiated operation is to be made. Then P
permanent waits or deadlocks may occur. To avoid opens the bid and spends [tP7, tP8] to send YP31, YP32,
further congestion and improve system fault- …, YP3v at instants t31>tP7, t32,…, t3v=tP8 to all the v
tolerance, we use time-outs and let P repeat the possible TAs to request their availability
cycle REQWAV-WAIWAV only a finite number of (REQTAV). In [tP8, tP9] after the end of transmission
times, after which P is unloaded from the system. (IP11), P waits for availability-answers (WAITAV)
If all or some replies are received before the until a time-out expires: if no reply is received, P
time-out expiration, P starts requesting service to the gets back to REQTAV (IP12) to repeat the request.
mdw available WAs at tP2. In [tP2, tP3] P requests Otherwise, if all replies are received before the time-
information to these WAs by sending them YP11, out expiration (XP6) or udv replies are received and
YP12, …, YP1m at instants t11>tP2, t12,…, t1m=tP3. If the the time-out expires (IP13), at tP9 P starts requesting
sequence of requests cannot be interrupted, we refer service to the u available TAs (REQTSE).
to REQWSE for the whole activity. We assume that Then P uses [tP9, tP10] to send outputs YP41, YP42,
at tP3 P makes transition (IP4). …, YP4u at instants t41>tP9, t42,…, t4u=tP10 to all the
Then, P spends [tP3, tP4] waiting for offers from available TAs and, after the transmission is
the available WAs (WAIWOF), as the request P completed (IP14), P waits for offers from TAs
transmits to each WA may queue up with those sent (WAITOF) in [tP10, tP11] until a time-out expires. If
by other PAs. Next transition occurs at tP4 when no offer is received (IP15), the PA repeats the request.
either P receives all the answers from the queried If only some offers arrive and the time-out expires
WAs (XP2) or a time-out of WAIWOF expires. In (IP16) or all offers arrive before the time-out (XP7), P
case it receives no reply within the timeout (IP5), P can take a transport-decision (TAKTDE) for
returns to REQWSE and repeats the procedure. In selecting the best offering TA in [tP11, tP12]. After
case of time-out expiration and some replies are selection (IP17), in [tP12, tP13] P communicates its
received (IP6), P considers only the received offers to choice by sending YP5 to this TA (COMCHT). After
select the next server. Again, to avoid congestion, P this communication (IP18), P waits for a rejection or
repeats the cycle REQWSE-WAIWOF a finite a confirmation from the selected TA (WAITCO)
number of times, then it is discharged. until a time-out expires. If no reply is received in the
Once received the offers from WAs, P utilizes waiting period [tP13, tP14] and a time-out expires (IP19)
[tP4, tP5] to take a decision for selecting the or a rejection is received (XP8), in case other offers
workstation (TAKWDE). At tP5 the decision from TAs are available P gets back to COMCHT
algorithm ends (IP7), after selecting a WA and and selects a new TA; in case no other TA is
building a queue to rank all the offers of other WAs. available and there is a time-out expiration (IP20) or a
Subsequently, P reserves the chosen machine by rejection (XP9), the availability request is repeated
transmitting a booking message (YP2) to the and P gets back to REQTAV.
corresponding WA. So P takes [tP5, tP6] for If a confirmation is received (XP10), P makes a
communicating the choice to the WA (COMCHW). transition to issue a transport command (TRANSP).
At tP6 the communication ends (IP8). Now, the WA It takes the interval [tP14, tP15] to issue the command
has to send a rejection if there is a conflict with YP6 to load the part on the vehicle associated with
another PA or a booking confirmation (XP5). Hence, the selected TA and to start the transport process.
P uses [tP6, tP7] to wait for a confirmation from the When, at time tP15, the command is complete (IP21),
selected WA (WAIWCO). The confirmation is P gets back to QUIESC. In case of the last
necessary because during the decision interval the operation, YP6 also signals the completion of the
condition of the plant can be modified by actions of working procedure to a controller, which influences
other PAs, and the selected server can be no longer and adapts the DL the PA uses for ranking the offers
available. If P receives a rejection (XP3), or does not (Maione and Naso, 2003a). In this case, P leaves the
receive any reply within a time-out (IP9), it returns to system.
The Multi-Agent Control of Manufacturing Systems 129
In general, from tP15 to the beginning of the next process, the PA can take into account its new
operation (if any), P stops making decisions, availability. If, at this time, the PA is requesting or
receiving and sending messages and remains waiting for availability or information from other
quiescent. The associated part is loaded on the WAs (or TAs), or is taking a decision for operation
transport vehicle and transferred to the next (transport) on other parts, the received messages
workstation where it is downloaded in the input from the past-selected WA (or TA) wait in a queue
buffer. Here, it waits in queue until receiving until the PA gets to REQWSE (or REQTSE). In this
service, after a proper set-up. After the operation, the case, the PA will send an output YP1m+1 (or YP4u+1)
part reaches the output buffer and is ready for the also to this new available WA (TA).
next destination. All the above processes are driven Figure 1 depicts all this complex interaction
by low-level controllers and do not involve agent dynamics. Circles represent the PA status-values,
activities. So, only when the processes are over, P is arrows represent the events, and the outputs, directly
again ready to start a new negotiation phase. If for associated with status-values, are encapsulated into
t>tP15 faults occur to the selected machine or vehicle, the circles. As the figure shows, the PA may receive
P remains in QUIESC and there is no need to restart confirmation from a WA (or a TA) after several
negotiations with WAs or TAs. In fact, the plant successive couples COMCHW-WAIWCO (or
controllers manage the repair process: when the COMCHT-WAITCO). Also, time-outs can bring the
normal operating conditions are restored, the part is PA back to REQWAV (from WAIWAV when no
transported to the selected machine. answer is received from WAs or from WAIWCO
Note that, after the negotiation cycle is complete, after a WA-rejection) or to REQTAV (from
when the chosen and confirmed WA (or TA) signals WAITAV when no answer is received from TAs or
to the PA the end of the operation (or transport) from WAITCO after a TA-rejection).
COMCHW
QUIESC WAIWAV WAIWOF TAKWDE
YP2
XP2 / IP6 IP7
IP1 XP1 / IP3 IP4 XP3 / IP9
(tP4) (tP5)
(tP1) IP2 (tP2) (tP3) IP5 (tP7)
XP0 IP8
(tP2) (tP4) (tP6)
(tP0) REQWAV REQWSE
WAIWCO
YP01…YP0w YP11…YP1m
[tP0, tP1] [tP2, tP3] [tP6, tP7]
XP4 / IP10
(tP7)
IP21
XP5 (tP15)
(tP7)
[tP8, tP9] [tP10, tP11] [tP11, tP12] [tP12, tP13] [tP14, tP15]
COMCHT TRANSP
WAITAV WAITOF TAKTDE
YP5 YP6
IP11 XP7 / IP16 IP17
XP6 / IP13 IP14 XP8 / IP19
(tP8) (tP11) (tP12)
(tP9) (tP10) IP15 (tP14) XP10
IP12 IP18
(tP11) (tP14)
(tP9) REQTSE (tP13)
REQTAV WAITCO
YP31…YP3v YP41…YP4u
[tP13, tP14]
[tP7, tP8] [tP9, tP10]
XP9 / IP20
(tP14)
On one hand, one could simplify the model by Figure 1 shows that the negotiation mechanism
merging REQWAV, WAIWAV, REQWSE and maintains a well defined structure with other agents
WAIWOF, i.e. by considering the PA sending participating to a negotiation process.
requests for availability and information all together. In a similar way, a DEVS model can be defined
So, each WA would offer availability and the for other interactions between classes of agents
information necessary to the PA decision at the same (Maione and Naso, 2003b). The common structure
time. Only two status-values would be necessary, of the negotiation mechanism is advantageous for
the first for the request, the second for the wait. The building up complex models in a modular way.
same reduction is possible for REQTAV, WAITAV, The DEVS model of the agents’ interactions is
REQTSE and WAITOF. particularly suitable for developing a complete
On the other hand, the more detailed model of simulation platform for the analysis of the dynamics
the PA activities, which considers two different of the complex MAS controlling a manufacturing
time-outs for the two different waiting conditions plant. In particular, our model allows the simulation
previously defined, can be more effective in of both the plant processes and their macroscopic
reducing the PA waiting times and in avoiding hardware components (machines, AGVs, parts, etc.),
deadlocks. In fact, the effect of delays and losses of and the details of the control activities performed by
messages due to workstation or transport agents (inputs, outputs, states, time-outs). So, we can
unavailability (faults, malfunctions, overloaded evaluate the classical indices of a manufacturing
workstations, etc.) and to communication faults are system performance (throughput, number of
reduced. Also, the cyclic repetition of requests and completed items, lateness, etc.), but also the effects
waits and the consequent delays in the decision of agents and their decision policies and the MAS
processes are limited. As a consequence, the risk of efficiency (number of negotiation cycles, number of
discharging PAs from the system is reduced. requests). Also, we can measure the agents’ behavior
To better enlighten the negotiation mechanism, in steady-state operating conditions and their
we summarize in Tables I-III the status-values, adaptation to abrupt disturbances (shortages of
inputs, internal events and outputs. materials, workload changes, hardware faults, etc.).
In this sense, we made all these measures when
Table I: status-values for a Part Agent. agents were using different decision policies, to see
Status Agent’s Activity Description how they dynamically react to disturbances (Maione
QUIESC Agent inactive and Naso, 2003a,c). We compared other MAS that
REQWAV Request availability to all possible WAs use conventional decision heuristics (based on the
WAIWAV Wait for availability signal from WAs
REQWSE Request service to available WAs
delivery time of parts to machines, the distance to
WAIWOF Wait for offers from available WAs the next workstation, the required set-up time) with
TAKWDE Take decision for the best WA offer our MAS, both with and without adaptation. We let
COMCHW Communicate choice to selected WA agents use a set of decision rules for a limited
WAIWCO Wait confirm./reject. from selected WA amount of time (the agent life-cycle) and then we
REQTAV Request availability to all possible TAs replace the rules by using the most successful ones.
WAITAV Wait for availability signal from TAs The replacement at the end of life-cycle was guided
REQTSE Request service to available TAs
by a mechanism emulating the ‘survival of the
WAITOF Wait for offers from available TAs
TAKTDE Take decision for the best TA offer fittest’ natural selection process and propagating the
COMCHT Communicate choice to selected TA fittest rules to the next population of agents. The
WAITCO Wait confirm./reject. from selected TA fitness of each decision rule was the average lateness
TRANSP Command selected TA to move the part of the parts controlled (Maione and Naso, 2003a).
Table II: inputs received and outputs sent by a PA when negotiating with WAs and TAs.
Inputs Time Description Outputs Description
XP0 tP0 Start negotiation for a new operation YP01 YP02 … YP0w Requests of availability
XP1 tP2 Last reply for WA availability received YP11 YP12 … YP1m Requests of service to available WAs
XP2 tP4 Last reply for WA offer received YP2 Choice communication to the selected WA
XP3 tP7 Rejection & alternative WAs in the PA rank YP31 YP32 … YP3v Requests of availability TAs
XP4 tP7 Rejection & no alternative WA in the PA rank YP41 YP42 … YP4u Requests of service to available TAs
XP5 tP7 Confirmation from a WA YP5 Choice communication to the selected TA
XP6 tP9 Last reply for TA availability YP6 Transport command
XP7 tP11 Last reply for TA offer
XP8 tP14 Rejection & alternative TAs in the PA rank
XP9 tP14 Rejection & no alternative TA in the PA rank
XP10 tP14 Confirmation from a TA
The Multi-Agent Control of Manufacturing Systems 131
Table III: internal events of a PA when negotiating with WAs and TAs.
Internal Event Time Description
IP1 tP1 End of WA availability request process
IP2 tP2 Time-out and no availability signal received from WAs
IP3 tP2 Time-out and some (m) availability signals received from WAs
IP4 tP3 End of WA service request process
IP5 tP4 Time-out and no offer received from the m available WAs
IP6 tP4 Time-out and some offers (o<m) received from the available WAs
IP7 tP5 End of workstation-decision process
IP8 tP6 End of choice communication to the selected WA
IP9 tP7 Time-out and no confirmation received from the selected WA when other ranked WA offers are available
IP10 tP7 Time-out and no confirmation received from the selected WA when no other ranked WA offers are available
IP11 tP8 End of TA availability request process
IP12 tP9 Time-out and no availability signal received from TAs
IP13 tP9 Time-out and some (u) availability signals received from TAs
IP14 tP10 End of TA service request process
IP15 tP11 Time-out and no offer received from the u available TAs
IP16 tP11 Time-out and some offers (o<u) received from the available TAs
IP17 tP12 End of transport-decision process
IP18 tP13 End of choice communication to the selected TA
IP19 tP14 Time-out and no confirmation received from the selected TA when other ranked TA offers are available
IP20 tP14 Time-out and no confirmation received from the selected TA when no other ranked TA offers are available
IP21 tP15 End of transport command
D [8]
2.9
C
B
2.8 A
2.7
Throughput [parts/min]
2.6
2.5
2.4
2.3
2.2
2.1
2
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
time [s] x 10
5
between consecutive workstations (A), minimizing Hsieh, F.-S., 2004. Model and control holonic
the wait for set-up of the workstation (B), manufacturing systems based on fusion of contract
minimizing the wait in queue at the workstation (C), nets and Petri nets. Automatica, 40, pp. 51-57.
and using a learning strategy (D). It can be noted Huhns, M.N., Stephens, L.M., 2001. Automating supply
how the reactive policy (D), designed with the aid of chains. IEEE Int. Comput., Vol. 5, No. 4, pp. 90-93.
the DEVS model, outperforms the common (static) Kotak, D., Wu, S., Fleetwood, M., Tamoto, H., 2003.
decision rules using MAS. Agent-based holonic design and operations
Future research aims at applying the proposed environment for distributed manufacturing. Computers
approach to other complex distributed control and in Industry, 52, pp. 95-108.
optimization problems, such as those involved in Lee, J.S., Hsu, P.L., 2004. Design and Implementation of
large-scale logistic or supply chains. the SNMP Agents for Remote Monitoring and Control
via UML and Petri Nets. IEEE Trans. Control Sys.
Techn., Vol. 12, No. 2, pp. 293-302.
Lin, F., Norrie, D.H., 2001. Schema-based conversation
6 CONCLUDING REMARKS modeling for agent-oriented manufacturing systems.
Computers in Industry, Vol. 46, pp. 259-274.
In this paper, we used the DEVS formalism to Logan, B., Theodoropoulos, G., 2001. The distributed
specify the model of the main agents operating in a Simulation of Multiagent systems. Proceedings of the
MAS controlling part-driven heterarchical IEEE, Vol. 89, No.2, pp. 174-185.
manufacturing systems. In this context, we detailed Maione, G., Naso, D., 2003a. A Genetic Approach for
the interactions guiding the negotiations related to a Adaptive Multi-Agent Control in Heterachical
generic step in a working procedure associated with Manufacturing Systems. IEEE Trans. Sys., Man, and
a part process. The model respects heterarchical Cyb. – Part A: Spec. Issue Collective Intelligence in
principles and can be used in a simulation platform Multi-Agent Systems, Vol. 33, No. 5, pp. 573-588.
which allows us to analyze both the classical Maione, G., Naso, D., 2003b. A Discrete-Event System
performance indices of a manufacturing system and Model for Multi-Agent Control of Automated
the effectiveness of the MAS, using decision Manufacturing Systems. In IEEE SMC’03, Int. Conf.
policies which implement adaptation strategies. on Sys., Man and Cyb., Washington D.C., USA.
The proposed method leaves many interesting Maione, G., Naso, D., 2003c. A Soft Computing Approach
issues open for further research. The next step for Task Contracting in Multi-Agent Manufacturing
toward the experimentation of the multi-agent Control. Comp. Ind., Vol. 52, No. 3, pp. 199-219.
control system on an automated manufacturing Parunak, H.V.D., 1994. Applications of Distributed
plant, is to test the DEVS model on a distributed Artificial Intelligence in Industry. In O’Hare,
network of computers, each hosting one or more of Jennings, (Eds.), Foundations of Distributed Artificial
the agents in the heterarchical network. This aims at Intelligence, Wiley-Inter-Science.
investigating and properly addressing the critical Prabhu, V., Duffie, N., 1999. Nonlinear dynamics in
issues related to distributed autonomous controllers distributed arrival time control of heterarchical
that cannot be examined when simulating the whole manufacturing systems, IEEE Trans. Control Systems
set of agents on a centralized platform. Technology, Vol. 7, No. 6, pp. 724-730.
Shattenberg, B., Uhrmacher, A.M., 2001. Planning Agents
in James. Proc. of the IEEE, Vol. 89, No. 2, pp. 158-
REFERENCES 173.
Shen, W., Norrie, D.H., 1999. Agent-Based Systems for
Duffie, N.A., Prabhu, V.V., 1996. Heterarchical control of Intelligent Manufacturing: A State-of-the-Art Survey,
highly distributed manufacturing systems. Knowledge and Information Systems, an International
International Journal of Computer Integrated Journal, Vol. 1, No. 2, pp. 129-156.
Manufacturing, Vol. 9, No. 4, pp. 270-281. Smith, R.G., 1980. The Contract Net Protocol: High Level
Han, W., Jafari, M.A., 2003. Component and Agent-Based Communication and Control in a Distributed Problem
FMS Modeling and Controller Synthesis. IEEE Trans. Solver. IEEE Trans. Computers, Vol. 29, No. 12, pp.
Sys., Man, and Cybernetics – Part C, Vol. 33, No. 2, 1104-1113.
pp. 193-206. Sousa, P., Ramos, C., 1999. A distributed architecture and
Heragu, S.S., Graves, R.J., Kim, B.-I., Onge, A.St., 2002. negotiation protocol for scheduling in manufacturing
Intelligent Agent Based Framework for Manufacturing systems. Computers in Industry, Vol. 38, pp. 103-113.
Systems Control. IEEE Trans. Sys., Man, and Cyber. - Zeigler, B.P., Praehofer, H., Kim, T.G., 2000. Theory of
Part A, Vol. 32, No. 5. Modelling and Simulation, Academic Press, 2nd edit.
PART 2
Olli Pyrhönen
Department of Electrical Engineering, Lappeenranta University of Technology, Lappeenranta, Finland
E-mail: olli.pyrhonen@lut.fi
Keywords: Cogging, Disturbance Observation, Linear Motor, Velocity Control, Vibration Suppression.
Abstract: A dynamic model including non-idealities for a permanent magnet linear synchronous motor (PMLSM) is
postulated and verified. The non-idealities acting on the physical linear motor are measured and analyzed.
These experimental results are utilized in the model. The verified simulation model is used in developing a
force disturbance compensator for the velocity controller of the motor. The force non-idealities, such as the
cogging force, friction and load force variation, are estimated using a disturbance observer. The acceleration
signal in the observer is derived through the use of a low-acceleration estimator. The significant effects of
the disturbance compensator on the simulated and measured dynamics of the motor are shown.
d\
d
u Ri Z s\ , (1)
Figure 1: The structure of the studied linear motor. d ad dt q
d\ q
First of all, the equations for modelling the uq Riaq Z s\ d , (2)
vector-controlled motor drive and non-idealities are dt
derived. Then, the simulation model is verified with
the measurements from physical linear motor
where ud and uq are the d- and q-axis components of
applications, and the comparison of the responses is
the terminal voltage, iad and iaq the d- and q-axis
shown in the study. Finally, a disturbance observer
components of the armature current, R is the
based on (Hong et al., 1998), (Godler et al., 1999),
armature winding resistance and \d, \q are the d-
(Deur et al., 2000), and (Bassi et al., 1999) is
and q-axis flux linkage components of the armature
implemented in the physical motor system after
windings. The synchronous speed can be expressed
being tested in the simulation model, and the results
as Zs=Svs/W, where vs is the linear synchronous
and conclusions are presented.
velocity and W the pole pitch. Although the physical
system does not contain a damper, which in PMLSM
usually takes the form of an aluminum cover on the
2 SIMULATION MODEL PMs, virtual damping must be included in the
model, due to eddy currents. The voltage equations
2.1 Model of LSM of the short-circuited damper winding are
\d Lad iad Lmd iD \ pm , (5) to a position in which the energy of the magnetic
circuit is at its minimum. This phenomenon attempts
to stall the mover at the stator pole positions and is
\q Laqiaq LmqiQ , (6) always present, even when no current is flowing
through the motor coils (Otten et al., 1997). The
ripple of the detent force produces both vibrations
and noise and reduces controllability (Chun et al.,
\D Lmd iad LDiD \ pm , (7)
2000). The force ripple is dominant at low velocities
and accelerations. At higher velocities, the cogging
force is relatively small and the influence of
\Q Lmqiaq LQ iQ , (8) dynamic effects (acceleration and deceleration) is
more dominant (Otten et al., 2000). In this study, the
detent force was measured in the reference system.
where Lad and Laq are the d- and q-axis components The force ripple can be described by sinusoidal
of the armature self-inductance, LD and LQ the d- and functions of the load position, x, with a period of M
q-axis components of the damper winding and an amplitude of Ar, i.e.,
inductance, Lmd and Lmq the d- and q-axis
components of the magnetizing inductance and \pm
Fripple Ar1 sin(M1x ) ª¬ Ar1 Ar 2 sin(M 2 x ) º . (10)
is the flux linkage per phase of the permanent ¼
magnet. By solving the flux linkage differential
equations from (1) to (4) and substituting the current In figure 3, the results of the simulation are
equations from (5) to (8) into these equations, the compared with those measured in the reference
equations for the simulation model of the linear system.
motor can be derived. The electromagnetic thrust of
a PMLSM is (Morimoto et al., 1997)
pe S
Fdx (\ i \ qiad ) , (9)
vs W d aq
The model also takes into account the effect of 2.3 Current Controller of the Linear
friction. Friction is very important for control Motor
engineering, for example, in the design of drive
systems, high-precision servomechanisms, robots,
pneumatic and hydraulic systems and anti-lock The current control of the system is implemented in
brakes for cars. Friction is highly nonlinear and may the form of vector control. Vector control is based
result in steady-state errors, limit cycles and poor on the space vector theory of electrical machines
performance (Olsson et al., 1998). Friction was and, therefore, can be easily implemented in the
modeled using the simple gradient method in which motor model that is also based on the space vector
the linear motor system was set in a tilted position theory. Vector control is suitable for the force
and the moving part allowed to slide down freely. (torque) control of both induction and synchronous
Friction was measured at several tilt angles and the motors. Generally in the vector control theory, the
results obtained were used to plot the friction force and flux components are analyzed separately
function as a function of speed. The friction model from the motor currents using the mathematical
took into account the Coulomb (static) and viscous model of the machine, and control algorithms
(dynamic) components control these components separately. In the vector
control used in this study, the direct axis current, iad,
is set to zero (iad=0) assuming that it does not
FP sign ( v ) ª Fcoulomb abs v Fviscous º , (11) influence the generation of force; i.e. equation (9)
¬ ¼
transforms to
where v is the velocity of the motor. The friction
S
function was incorporated into the simulation model Fdx (\ i ) . (14)
in such a way that it acts between the stator and the W d aq
mover. In the simulation, the smoothing of the
friction function was used to obtain a numerically This means that angle \, between the armature
efficient model in order to improve simulation rate. current and q-axis, always remains at 0q and that the
The effect of load variation was also taken into thrust is proportional to the armature current, ia=iaq.
consideration. This was carried out using a forced The drawback of vector control is its low robustness
vibrating non-homogenous two-mass model, where for changes in the machine parameters. The
the load force variation 'Fl is calculated using a resistance values change considerably due to
spring-mass equation, which is the sum of the spring temperature variations, and the inductances rapidly
force, Fs, and the damping force, Fd. The equation of reach their saturation levels. However, a vector
motion for such a system is controller is appropriate for applications in which
good dynamics and/or accurate velocity control is
'Fl Fs Fd k ( x1 x2 ) c( x1 x2 ) m2
x2 ,(12) needed.
In literature, vector control is presented in many
ways. In this study, we have used a simulation
where k is the spring constant, c the damping principle in which the incoming thrust command,
coefficient, and xi , xi and xi are the displacement, F*, is converted to the iq current component by
velocity and acceleration of masses mi, respectively. dividing the force value by the force constant of the
The total disturbance force equation can be motor, Km. The current control algorithms are
described using the equations of detent force, executed in the rotor flux coordinates and the
friction force and load force variation; i.e., the outputs of the controllers are transformed back into
disturbance force, Fdist, is the stator reference frame, and these values, usa, usb,
and usc, are the inputs of the control inverter. In the
Fdist Fripple FP 'Fl (13) simulation model, the modulation technique used is
sinusoidal pulse width modulation (SPWM) with
ideal switches.
This resultant disturbance force component is
added to the electromotive force to influence the 2.4 Verification of the Simulation
dynamical behavior of the linear motor system.
Model
The simulation model was implemented and
analyzed in the MatLab/Simulink£ software using
the previously mentioned equations. The PWM
A Vector Controlled PM Linear Synchronous Motor 139
APPENDIX
4 CONCLUSION
This paper presented and verified a dynamic model
for a PMLSM including non-idealities. The model
appeared to be an effective tool for designing the
controller of such a system. A disturbance estimator,
which included a low-acceleration estimator, was
proposed and successfully implemented in the
control of the motor. By means of an accurate
simulation model, it was possible to design and test
the controller without fear of physical damage. The
implementation of the proposed controller was
easily carried out by using a DSP system that
supported the used simulation software. Preliminary
parameter tuning was performed by using the REFERENCES
simulation model and final tuning was carried out in
the physical linear motor application. Bassi, E., Benzi, F., Buja, G. and Moro, F., 1999. “Force
It was observed that mechanical non-idealities disturbance compensation for an A.C. brushless linear
have important effect on the dynamics of the motor motor,” in Conf. Rec. ISIE’99, Bled, Slovenia, 1999,
system. This effect can be reduced by constructional pp.1350-1354.
modifications and/or a suitable control algorithm. As Castillo-Castaneda, E. and Okazaki, Y., 2001. ”Static
mentioned before, the acceleration signal for friction compensation approach to improve motion
disturbance estimation or another control algorithm accuracy of machine tool linear stages,”
is not usually available. The double derivation of the Instrumentation and development, vol. 5, no. 1, March
encoder signal produces a very noisy signal, and 2001.
filtering this kind of signal leads to undesirable Chun, J.-S., Jung, H.-K. and Jung, J.-S., 2000. “Analysis
stability problems. With the proposed method, of the end-effect of permanent magnet linear
acceleration can easily be estimated from the synchronous motor energized by partially exited
position signal. primary,” ICEM, International Conference on
Electrical Machines, Espoo, Finland, vol. 1, pp. 333-
337, 2000.
142 M. Hirvonen, H. Handroos and O. Pyrh önen
Deur, J. and Peric, N., 2000. ”A Comparative study of Kim, B. K., Chung, W. K. and Oh, S. R., 2002.
servosystems with acceleration feedback,” IEEE Ind. “Disturbance Observer Based Approach to the Design
Applicat. Conf., Italy, 2000, pp. 1533-1540. of Sliding Mode Controller for High Performance
Godler, I., Inoue, M. and Ninomiya, T., 1999. “Robustness Positioning Systems,” 15th IFAC World Congress on
comparison of control schemes with disturbance Automatic Control, 2002.
observer and with acceleration control loop,” in Conf. Lee, S.-H. and Song, J.-B., 2001. “Acceleration estimator
Rec. ISIE’99, Slovenia, 1999, pp. 1035-1040. for low-velocity and low-acceleration regions based on
Gieras, J. F. and Piech, Z. J., 2001. Linear Synchronous encoder position data,” IEEE/ASME Trans.
Motors: Transportation and Automation Systems. Boca Mechatron., vol. 6, no. 1, March 2001.
Raton, USA: CRC, 2001. Morimoto, S., Sanada, M. and Takeda, Y., 1997. “Interior
Hong, K. and Nam, K., 1998. ”A Load torque Permanent Magnet Synchronous Motor for High
compensation scheme under the speed measurement Performance Drives,” IEEE Trans. Ind. Applicat., vol.
delay,” IEEE Trans. Ind. Electron., vol. 4, no. 2, April 33, Issue 4, July-Aug. 1997.
1998. Olsson, H., Åström, K. J., de Wit, C. C., Gäfvert, M. and
Hor, P. J., Zhu., Z. Q., Howe, D. and Rees-Jones, J., Olsson, P. L., 1998. “Friction Models and Friction
1998. “Minimization of cogging force in a linear Compensation,” European Journal of Control, 1998,
permanent magnet motor”, IEEE Trans. Magn., vol. Vol. 4, No. 3.
34, no. 5, pp. 3544-3547, Sept. 1998. Otten, G., de Vries, T.J.A., van Amorengen, J., Rankers,
Hyun, D.-S., Jung, I.-S., Shim, J.-H. and Yoon, S.-B., A.M. and Gaal, E.W., 1997. “Linear motor motion
1999. “Analysis of forces in a short primary type control using a learning feedforward controller,”
permanent magnet linear synchronous motor,” IEEE IEEE/ASME Trans. Mechatron., vol. 2, no. 3, pp. 179-
Trans. Energy Conversion, vol. 14, no. 4, pp. 1265- 187, 1997.
1270, 1999. Tan, K. K., Huang, S. N. and Lee, T. H., 2002. ”Robust
Inoue, M. and Sato, K., 2000. “An approach to a suitable adaptive numerical compensation for friction and force
stator length for minimizing the detent force of ripple in permanent-magnet linear motors,” IEEE
permanent magnet linear synchronous motors,” IEEE Trans. Magn., vol. 38, no. 1, January 2002.
Trans. Magn., vol. 36, no. 4, pp. 1890-1893, July 2000. Zhu, Z. Q., Xia, Z. P., Howe, D. and Mellor, P. H., 1997.
Jung, S.-Y. and Jung, H.-K., 2002. ”Reduction of force “Reduction of cogging force in slotless linear
ripples in permanent magnet linear synchronous permanent magnet motors”, Proc.IEEE Electr. Power
motor,” Proceeding of International Conference on Appl., vol. 144, no. 4, pp. 277-282, July 1997.
Electrical Machines, Brugge, Belgium pp. 452, Aug
2002.
HYBRID CONTROL DESIGN FOR A ROBOT MANIPULATOR
IN A SHIELD TUNNELING MACHINE
Cees de Keizer
IHC Systems B.V., P.O. Box 41, 3360 AA Sliedrecht, the Netherlands
Keywords: Robotic manipulator, shield tunneling, hybrid control, collision, environment model, feedback linearization.
Abstract: In a novel shield tunneling method, the tunnel lining is produced by an extrusion process with continuous
shield advance. A robotic manipulator is used to build the tunnel supporting formwork, consisting of rings
of steel segments. As the shield of the tunnel-boring machine advances, concrete is continuously injected in
the space between the formwork and the surrounding soil. This technology requires a fully automated ma-
nipulator, since potential human errors may jeopardize the continuity of the tunneling process. Moreover, the
environment is hazardous for human operators. The manipulator has a linked structure with seven degrees of
freedom and it is equipped with a head that can clamp the formwork segment. To design and test the controller,
a dynamic model of the manipulator and its environment was first developed. Then, a feedback-linearizing hy-
brid position-force controller was designed. The design was validated through simulation in Matlab/Simulink.
Virtual reality visualization was used to demonstrate the compliance properties of the controlled system.
shield concrete
spine
Figure 1: Cross-section of the shield tunneling machine. Two working configurations of the derector are shown.
2 MODELING
The mathematical model consists of three parts: the
manipulator, the environment and the hydraulic thrust
cylinders. This section describes these elements one
by one.
q6(yaw)
head
q4
body3
Figure 4: Two consecutive rings of the formwork. Each ring
q3(pitch) body2 q5(roll) consists of eight segments.
figure, a transformation is applied, which decomposes When the actuators come into contact with the seg-
a force fe into a force fl and torque τ acting on the ment, this will result in a force and torque as ex-
center of gravity (COG). The following formulas can plained in Fig. 5. Only the normal force acting on the
be applied. segment is simulated. The error between the segment
and the thrust cylinders is at most 3 degrees, satisfying
fl = fe (4) the assumption to neglect the tangential force. The
τ = r × fe (5) force and torque in the Cb4 frame, are calculated with
b4 b4
the following equations. Let Ha1 and Ha2 be the ho-
where r points to the place where the force acts. The mogeneous transformations from the thrust cylinder
above derivation is valid for a body moving in free frames (Ca1 , Ca2 ) to Cb4 . The two force and torque
space. The transformation of the force and torque to vectors can be calculated as follows
the joint torque is achieved using the principle of vir-
tual work, see (Spong and Vidyasagar, 1989). The fa1 = |fa1 |[0 1 0]T ra1 = (Hb4a1
[0 0 0 1]T )123
following formula for the joint torques can be derived τ a1 = ra1 × fa1 (7)
b4
R0 0 fl fa2 = |fa2 |[0 1 0]T ra2 = (Hb4a2
[0 0 0 1]T )123
τ e = J0 (q)T f with f = (6)
0 Rb4
0 τ τ a2 = ra2 × fa2 . (8)
where R0b4 transforms the force expressed in the seg- where the subscript 123 refers to the first three ele-
ment body frame to the base frame, J0 (q) is the Ja- ments. These forces and torques in the body frame
cobian which transforms the joint speeds to the lin- can be transformed to the joint torques by means of
ear/rotational speeds in the base frame and τ e is a the principle of virtual work (6).
vector with joint torques/forces.
{Cb4} Hydraulic
body4 side view push Segment
zc Segment
zb4 actuators
ring
zb4
r1 r2 y
c
{Ca1}
y
Figure 6: The dimensions of the segment (body4). Figure 7: Top view of the segment.
Hybrid Control Design for a Robot Manipulator in a Shield Tunneling Machine 147
A control scheme known as a hybrid position force which represents the relationship between the joint
controller of (Raibert and Craig, 1981) allows to spec- acceleration and the segment’s linear and rotational
ify for each DOF the type of control. The frame in speed. A new control input can now be chosen as
which the segment is controlled is positioned such
that the direction, in which the position is controlled, u = (J0b4 (q))−1 a − J˙0b4 (q)q̇ . (13)
is perpendicular to the direction in which the force is
controlled. This frame is called the constraint frame. Substitute (13) into (10) and the result into (12), as-
In our case the constraint frame is aligned with the suming perfect modeling and perfect force measure-
two thrust cylinder frames (see Fig. 7). In this sit- ment, leads to the following total plant model
uation, the yaw, y, and the pitch, z, DOFs are con- ẍ = a = ap + af (14)
strained. We choose for the y degree of freedom a
force controller to assure contact. For the other po- where a is the resolved acceleration in the base frame
sition constrained degrees of freedom an impedance and ap , af are the outputs of the position controller
controller is chosen which guarantees compliant be- and force controller in the base frame. The vector ap
havior. can be partitioned into linear acceleration al and an-
The controller consists of four blocks: feedback gular acceleration ao . Likewise, af can be partitioned
linearization, transformation of sensor data (kinemat- into linear acceleration af l and angular acceleration
ics, Jacobian and coordinate transform), selection ma- af t :
trix and the controllers (see Fig. 8).
The coordinate-transform block transforms the data al a
ap = af = f l . (15)
f , x, R, v and ω from the base frame to the constraint ao af t
frame and vice versa, where f is the measured force, x
is the position of the segment, R is the rotation matrix
which defines the orientation of the segment, v is the
linear speed of the segment and ω is the angular speed 3.2 Transformation of Sensor Data
of the segment. The inputs of the force controller are
fd and ḟd , which are the desired force and it’s deriva- The different positions and speeds are measured in the
tive. The inputs of the position controller are xd , ẋd joints of the manipulator. The force is measured us-
and ẍd , which are the desired position, velocity and ing a force sensor, located in the manipulator head. To
acceleration respectively. The vector a is the resolved control the manipulator in Cartesian space these mea-
acceleration vector and τ is the torque/force vector surements must be transformed to a Cartesian frame.
for the manipulator. This is done with the kinematic matrix and the Jaco-
bian matrix. The frame in which the manipulator is
3.1 Feedback Linearization controlled is the constraint frame.
The following controller is used for feedback lin- 3.3 Selection Matrix
earization (Siciliano and Villani, 1999)
The DOF for position control and for force control
T
τ = D̂(q)u + Ĉ(q, q̇)q̇ + F̂v q̇ + φ̂(q) + J0b4 (q) f can be selected. This is done by multiplying the
(9) force/torque vector by a diagonal selection matrix S
where u is the new acceleration control input. Sub- and the position/velocity vector by I − S, with I the
stituting (9) into (1) and assuming perfect modeling identity matrix. For a DOF that is position controlled
results in the following system Si = 0 and for a force controlled DOF Si = 1. For a
manipulator moving in free space the selection matrix
q̈ = u (10) is a zero matrix, meaning position control.
To make sure that the switch between the two sit-
The goal of the controller is to control the manipulator uations is in a controlled manner, the switch function
in the constraint frame to its desired values. of the selection matrix must be smooth. The time of
The Jacobian transforms the joint velocities to the switching in unknown, so the switch should be trig-
linear and rotational speeds. The Jacobian is given by gered by the contact force (Zhang et al., 2001).
b4
v0 fi − fref 1 , if fi ≥ 0
i
= J0b4 (q)q̇ (11)
ω b4
0
Φi (fi ) =
fref 2 − fi , if fi < 0
i (16)
Differentiating (11) gives The smooth switch function can now be defined as
b4
v̇0 0, if Φi (fi ) < 0
= ẍ = J0b4 (q)q̈ + J˙0b4 (q)q̇ (12) Si = (17)
ω̇ b4
0 1 − sech(αΦi (fi )), otherwise
148 J. Braaksma et al.
Selection Coordinate
matrix transform
fd
. Selection Force
fd
matrix controller
Feedback f x, R
+ Coordinate a
linearization & Manipulator
q
Kinematics
Cartesian to joint
+ . + v,
+ transform Environment
q
Jacobian
space transformation
..
xd
. Selection
xd Position
xd matrix controller
Selection Coordinate
matrix transform
4.4
x[m]
4.3
sitioning at q0 = 0. The segment ring has a different
4.2
orientation than the segment; it is rotated around the 5 10 15 20 25 30
yaw axis by 0.05 radians. In order to take model un- time(s)
y[m]
error of 10% is introduced and for length and posi- 0.1
z[m]
0
−0.05
This corresponds with a natural frequency of 3.2 rad/s −0.1
0.02
ther with the same speed as the hydraulic thrust cylin- 0.04
Yaw[rad]
1000
Linear force[N]
0
of the force in the y DOF is not influenced; the time 0 5 10 15
time(s)
20 25 30
800 τx
ter change. 600
Torque[Nm]
400
200
4 CONCLUSIONS −200 τz
−400
0 5 10 15 20 25 30
time(s)
A dynamic model of the manipulator and its environ-
ment has been successfully derived and implemented Figure 11: Force measurement in the segment force sensor
in Matlab/Simulink. The control requirements have (one simulation run).
150 J. Braaksma et al.
REFERENCES
Joseba Landaluze, Victoria del Río, Carlos F. Nicolás, José M. Ezkerra, Ana Martínez
IKERLAN Research Centre, Arizmendiarrieta 2, 20500 Arrasate/Mondragon, The Basque Country (Spain)
Email: jlandaluze@ikerlan.es
Keywords: DR/DGNSS, DR, GPS, DGPS, inertial navigation system, location system.
Abstract: The problem of identifying and adequately positioning containers in the terminal yard during handling with
Reach Stackers still remains to be solved in an appropriate manner, while this is extremely important in
making the identification and positioning operations automatic. A precise knowledge in the Terminal
Operating System (TOS) of such data in Real Time would have considerable economic impact on the
logistic treatment of operations. The MOCONT system sets out to provide a solution to this lack. In
particular, the MOCONT Location Module establishes the position of the container in the yard while it is
being handled by a Reach Stacker. This system is based on the integration of the Differential Global
Navigation Satellite System (DGNSS) with a Dead Reckoning (DR) inertial system. This article presents the
general characteristics of the MOCONT Location Module, its structure, and the structure of data fusion,
besides some results obtained experimentally.
YARD
Ship Gate
Buffer
Figure 1: Overall scheme of a container terminal and Reach Stacher container handling machine.
MOCONT
Display
DR Inertial
DGNSS Navigation Visual Identification
Boom
DR GNSS
sensors
Processing Processing
LM VIM Unit Port DTM
Unit
Synchronisation and
Communication
Middleware
SCM
MOCONT
DR Ag132 GPS
sensors Receiver
Terminal Operating System (TOS)
Figure 2: MOCONT functional architecture. Figure 3: Scheme and flow data of the Location Module.
x In Real Time, update the position of any called rovers, collect GNSS data at unknown
container handled by a Reach Stacker in the locations onboard each Reach Stacker. Over a radio
Terminal Operating System (TOS). band, the reference station broadcasts correction
In order to obtain the objectives proposed, the values, which are applied to the Ag132 GPS receiver
MOCONT system incorporates three different positions. Errors common at both the reference and
modules (Figure 2): the Location Module, the Visual rover receivers and then removed from the solution.
Identification Module and the Synchronisation and The performance of the Ag132 GPS receiver is
Communication Module. The Location Module improved by direct GNSS augmentation with height
determines the position of the container in the aiding. Height aiding improves the solution by
terminal yard; the Visual Identification Module enhancing satellite visibility, and reducing the
reads the container’s identification code; the positioning challenge from a three-dimensional to a
Synchronisation and Communication Module two dimensional problem. Using a DTM of the port
acquires the identification and position data on the and the current location of the Reach Stacker, an
container and informs the TOS. interpolation algorithm provides an accurate
measure of the current ground height. With
knowledge of the Reach Stacker geometry, the boom
extension and boom inclination, the height of the
3 STRUCTURE OF THE GNSS antenna on board the vehicle, and indeed the
LOCATION MODULE height of the container carried by the Reach Stacker,
can be continually computed.
The Location Module consists of two subsystems: In addition, the Location Module provides
the DR subsystem and the DGNSS subsystem. This complimentary DR augmentation for periods when
last one has two different parts: the GPS receiver GNSS positioning with height aiding is not possible.
and the GNSS Processing Module. The DR subsystem consists of a Processing Unit and
In the final MOCONT Location Module some DR sensors, by means of which the Reach
Trimble’s Ag132 GPS receiver is used at the heart of Stacker position is continuously estimated. The
the GNSS and, therefore, of the location system, for GNSS Processing Module continually provides the
the positioning of the Reach Stacker. The Ag132 DR subsystem with the current position from the
GPS receiver combines high-performance GNSS Ag132 GPS receiver (in projected UTM
reception with radio-beacon DGNSS capability in a coordinates) and some indication of the quality of
single durable waterproof housing, ideal for use in that position fix (by means of a covariance matrix of
the yard environment. The receiver uses differential the computed parameters). In return the DR
GNSS to provide sub-metre accuracy. subsystem continually updates the GNSS Processing
Differential GNSS requires two or more Module with the best estimate of the current
receivers. One receiver, called the reference or base position.
station, is located at a known point to determine the The GNSS Processing Module will then pass the
GNSS measurement errors. This could be housed on position information to the driver and the rest of the
the roof of the main administration buildings, to MOCONT system.
allow easy access and constant monitoring. An The GNSS Processing Module, which interfaces
unlimited number of AgGPS receivers, sometimes with the Ag132 GPS receiver, the DR subsystem,
154 J. Landaluze et al.
24 V 24 V
Digital
Compass GNSS subsystem
DR subsystem
Figure 4: Elements of the Location Module. Figure 5: Heading box and Location Module box.
the boom sensors and the Synchronisation and technology Ground Speed Sensor, which
Communication Module, has been developed using provided the forward/backward speed of the
the robust and compact AgGPS 170 Field Computer. vehicle; a stop/direction sensor, in order to
The AgGPS 170 is designed to withstand the detect if the vehicle is stopped or not, as well as
environmental extremes that are typical of the the movement direction of the vehicle, forward
container port environment. or backward; a digital compass, to measure the
A scheme of the Location Module, with its vehicle heading angle.
components and the flow of data, is shown in Figure Figure 4 shows the main elements of the
3 and Figure 4. As can be observed, the Location Module and the structure of the DR
communication between the two subsystems of the subsystem. A laptop computer was used to monitor
Location Module is by means of a CAN bus. The and configure the DR subsystem, as well as to
communication between the GNSS subsystem and collect raw data. Most of the elements of the DR
the Synchronisation and Communication Module is subsystem were included in two boxes, the Location
also by another CAN bus (Figure 4). The values Module box and the Heading box, as they appear in
measured by the boom sensors are supplied by the Figure 5.
MOCONT middle-ware through this bus.
4.2 DR/DGNSS Integration
4 DR SUBSYSTEM DESIGN Although different data fusion algorithms were
tested, a kinematical Kalman Filter was finally
4.1 Description of the DR Subsystem chosen due to its simplicity and the good results
obtained. For the navigation equations, it is assumed
that the vehicle is moving on a tangent-plane, as it
Although initially different sensorings were tested
was a point, so the positioning involves locating the
for the DR subsystem, a sensor structure similar to vehicle in cardinal directions: N-S-E-W. Figure 6
that proposed by Rogers (1999) was finally selected. shows the local level geographic navigation and the
Likewise, replacing the MS750 subcentimetric GPS
receiver in the final structure of the Location
Module with an Ag132 submetric receiver, made it N
X
necessary to complete sensoring in the DR
subsystem with a digital compass. As a result of \
these changes, the final structure used for the DR
subsystem was as follows:
x The DR Processing Module, which consisted of
a sandwich of three PC/104 boards: a CPU
based on a 233 MHz Pentium Processor, an I/O E
data acquisition board and a 2-channel CAN
communication board.
x The DR sensor set. This included the following
sensors: a solid state gyroscope to measure the Y
speed of rotation around the yaw axis; a radar Figure 6: Local level geographic and body frames.
A Container Location System Based on DR/DGNSS Integration 155
DR Software Implementation
body reference frames. It is assumed that the only The heading angle rate could be expressed as
transformation between these two frames is via the follows:
heading angle \.
The DR navigation system implements a \ D \ V\ H \ V\ b\ (3)
distance travelled (integrated velocity) and a travel
direction. The distance travelled is referenced to the where
body frame, which is then transformed into a local
level geographic navigation frame through the angle D \ : gyroscope gain
\. This implementation assumes that other vehicle
attitudes, i.e., roll and pitch, are sufficiently small as H \ : gyroscope scale factor error
to be ignored. b\ : gyroscope bias
The body referenced velocity is represented as a
V\ : measured gyroscope voltage
nominal velocity v, defined such that the X-
component is along the primary direction of travel,
plus velocity errors as a result of speed sensor scale The speed sensor scale factor error H v , the
factors H v . gyroscope scale factor error H \ and the gyroscope
The computed body referenced velocity is bias b\ are modelled as random-walk processes.
represented as
From equations (1), (2) and (3) the continuous-time
vB v v Hv (1) state-space realisation for the DR/DGPS is deduced:
x f ( x, u ) w
where v is the measured or estimated vehicle (4)
velocity. y h( x ) v
Assuming that the body to navigation frame
transformation and body-referenced velocity are c c
approximately constant over a small time interval, where u >v @ >
V\ , x n e H v \ H \ b\ @
the sampling time, it can be written: and w and v are random variables. The augmented
state equations for the DR subsystem can be stated
n v B cos \ v cos \ v H v cos \ in direct form or in terms of residual errors, and
(2) therefore the structure of the Extended Kalman Filter
e v B sin \ v sin \ v H v sin \
can be deduced, the measurement vectors being:
where n and e are the velocities in the local frame
and v is the measured vehicle velocity.
156 J. Landaluze et al.
Figure 8: Installation of all elements of the MOCONT Location Module on a Reach Stacker.
is transmitted to the GNSS on a frequency of 2 Hz. moves backward to point D (instant 130 s). After 11
North and east relative position components, with s it continues going backward to point E (instant 153
respect to the starting point O, appear. The vehicle s), changes movement direction and moves forward
moves forward from the origin O to point A (instant to point F (instant 188 s) and then it continues its
28 s). It then moves backward to point B (instant 30 travel. As it can be deduced from the figure, the
s) from where it moves forward once again to point Reach Stacker performed operations with containers
E (instant 85 s), after having passed through points at points A and C. A container was picked up from a
C (instant 40 s) and D. It is at point E until instant 91 slot at point A and then it was released in other slot
s, when it then moves backward to point F (instant at point C.
104 s). Covariance is not very good (always greater The GNSS data covariance was very bad from
than 1), but also, between points C and D, it is instant 6 s until instant 78 s and from instant 106 s
approximately 3. As shown in the graph of Figure 9, until instant 110 s (east covariance value higher than
when the covariance of the GNSS estimate is 3.5 and north covariance value higher than 9).
relatively low (about 1), the DR estimate continues Therefore, from point A to point C the GNSS
to be in line with that of the GNSS. When the value estimates have poor quality, as it can be observed in
of the covariance is large, particularly in the D-E-F Figure 10, but DR estimates show very well the
stretch, the DR estimate is based mainly on the movement carried out.
information provided by its own sensors.
In Figure 10 a detail of results obtained in Genoa
is shown. In Genoa true container canyons rarely
appeared, but sometimes the influence of high stacks
6 CONCLUSIONS
of containers was evident, as in the case shown in
the figure. The movement of the Reach Stacker Analysis of a large number of experimental data
starts at the point O, point considered as the origin of obtained in the course of the MOCONT-II project
coordinates. The vehicles moves forward to point A has proven the success of the MOCONT Location
(instant 12 s) and it is stopped at that point until Module in tasks involving tracking the position of
instant 74 s, when it then moves backward to point B containers in terminal yards while these are being
(instant 78 s). The Reach Stacker is at point B until handled by the Reach Stackers, recording the slot
instant 106 s. Then it goes forward to point C (row, column, tier), where the container is picked up
(instant 110 s) and after 17 s at that point the vehicle or released. Integration of the Differential Global
158 J. Landaluze et al.
Navigation Satellite System (DGNSS) with a Dead Internal Sensors. T. SICE, vol. 35, no. 8, pp.
Reckoning (DR) inertial system has been 1004/1001.
demonstrated to be effective in estimating the Benson, E.R., T.S. Stombaugh, N. Noguchi, J.D. Will and
position of the vehicle and of the container. J.F. Reid. 1998. An evaluation of a geomagnetic
Positioning is effective even when working in direction sensor for vehicle guidance in precision
container canyons, on the condition that it be for a agriculture applications. ASAE paper 983203.
limited movement time of some 40 s. Apart from the Landaluze, J., V. del Río, A. Milo, J. M. Ezkerra and A.
general characteristics of the MOCONT system, the Martínez. 2003. Desarrollo de un sistema de
structure of the MOCONT Location Module has localización DR/DGPS para vehículos “off-road”. 5ª
been presented as well as the data fusion diagram. Semana Geomática. Barcelona, 11-14 febrero.
Likewise, typical experimental data and the final MOCONT-II. 2004. Final Public Report.
evaluation of effectiveness are also presented. www.mocont.org.
Ramjattan, A.N. and P.A. Cross. 1995. A Kalman Filter
Model for an Integrated Land Vehicle Navigation
System. Amy 1995, vol. 48 (no.2), pp. 293-302.
ACKNOWLEDGEMENTS Rogers, R.M. 1999. Integrated DR/DGPS using Low Cost
Gyro and Speed Sensor. ION National Technical
The material in this paper has been partially funded Meeting.
by the European Union under the scope of the Sukkarieh, S., E.M. Nebot and H.F. Durrant-Whyte. 1999.
Information Society Technologies programme A High Integrity IMU/GPS Navigation Loop for
(research projects MOCONT: IST-1999-10057 and Autonomous Land Vehicle Applications. IEEE
MOCONT-II: IST-2001-34186). Transactions on Robotics and Automation, vol. 15, no.
3.
Zhang, Q, J.F. Reid and N. Noguchi. 1999. Agricultural
REFERENCES Vehicle Navigation Using Multiple Guidance Sensors.
FSR'99 International Conference on Field and Service
Aono, T., K. Fujii and S. Hatsumoto. 1999. Positioning of Robotics.
a Vehicle con Undulating Ground Using GPS and
PARTIAL VIEWS MATCHING USING A METHOD BASED ON
PRINCIPAL COMPONENTS
Abstract: This paper presents a method to estimate the pose (position and orientation) associated to the range data of an
object partial view with respect to the complete object reference system. A database storing the principal com-
ponents of the different partial views of an object, which are generated virtually, is created in advance in order
to make a comparison between the values computed in a real view and the stored values. It allows obtaining
a first approximation to the searched pose transformation, which will be afterwards refined by applying the
Iterative Closest Point (ICP) algorithm.
The proposed method obtains very good pose estimations achieving very low failure rate, even in the case of
the existence of occlusions. The paper describes the method and demonstrates these conclusions by presenting
a set of experimental results obtained with real range data.
this class (Mamic and Bennamoun, 2002). Let us re- range data is homogeneously distributed, it means
mark the methods based in principal components (PC) that the distance between the most extreme points pro-
(Campbell and Flynn, 1999; Skocaj and Leonardis, jected over the first direction is the maximum among
2001), which use them in the matching process as dis- all possible Xc couple of points. The second vec-
criminant parameters to reduce the initial range im- tor points to another direction, normal to the previ-
ages database of an object generated from all possible ous one, in which the variance is maximum for all the
viewpoints. possible normal directions. It means again that the
The method presented in this paper can be classi- distance between the most extreme points projected
fied halfway of the two classes because the appear- over the second direction is the maximum among all
ance of the object from all the possible points of view the possible directions normal to the first vector. The
are not stored and managed. Instead of that, only third vector makes a right-handed reference system
some features of each view are stored and handled. with the two others. The eigenvalues represent a
More specifically, just three critical distances are es- quantitative measurement of the maximum distances
tablished from each point of view. These distances in each respective direction.
are determined by means of the principal components From the point of view of its application to the
computation. A first approach to the transformation matching problem it is important to remark firstly that
matrix between the partial view and the complete ob- the eigenvalues are invariant to rotations and trans-
ject can be obtained from this computation. The de- lations and the eigenvectors invariant to translations,
finitive transformation is finally achieved by apply- and secondly that the frame formed by the eigenvec-
ing a particular version of the Iterative Closest Point tors represents a reference system fixed to the own
(ICP) algorithm (Besl and McKay, 1992) to the gross range data. The first remark can be helpful in the
transformation obtained in the previous stage. A com- process of determining which portion of the complete
parative study of different variants of the ICP algo- object is being sensed in a given partial view, i.e. the
rithm can be seen in (Rusinkiewicz and Levoy, 2001). recognition process. The second one gives an initial
The paper is organized as follows. A general de- estimation of the searched transformation matrix that
scription of the overall method is exposed in the next matches the partial view with the complete object in
section. The method developed to obtain the database the right pose. In fact, it is only valid to estimate the
with the principal components from all the possible rotation matrix because the origins of the reference
viewpoints are described is section 3. Section 4 is de- systems do not coincide.
voted to present the matching algorithm built on top To implement the recognition process it is neces-
of the principal components database. A set of exper- sary to evaluate, in a previous stage, all the possible
imental results is shown in section 5 and conclusions partial views that can be generated for a given com-
are stated in section 6. plete object. We propose a method that considers a
discretized space of the viewpoints around the object.
Then a Virtual Partial View (VPV) is generated for
2 OVERALL DESCRIPTION OF all the discretized viewpoints using a z-buffer based
THE METHOD technique. Principal components of each one of these
VPV are then computed and stored, such that they can
As it has been mentioned, the first stage of the pro- be used in the recognition process.
posed method is based on the computation of the prin- Initial information of the possible candidate zones
cipal components from the range data corresponding to matching a sample partial view to the complete ob-
to a partial view. Let us call X to this partial view. ject can be extracted by comparing the eigenvalues of
Principal components are defined as the set of eigen- the sample with the stored values. Nevertheless, this
values and eigenvectors {(λi , ẽi ) |i = 1, . . . , m} of is only global information and it only concerns to ori-
the Q covariance matrix: entation estimation. A second process must be imple-
mented in order to obtain a fine estimate of the final
Q = Xc XTc (1) transformation matrix. We use the ICP algorithm ap-
where Xc represents the range data translated with plied to the set of candidates extracted in the previous
respect to the geometric center. process. The transformation matrix estimated from
In the particular case we are considering, Xc is a the eigenvectors is used as the initial approximation
matrix of dimension n × 3 and there are three eigen- required by the ICP algorithm. The final matching
vectors that point to the three existing principal direc- zone is selected as the one that minimizes the ICP er-
tions. The first eigenvector points to the spatial di- ror. Figure 1 shows a schematic block diagram of the
rection where the data variance is maximum. From entire developed method. More implementation de-
a geometrical point of view, and assuming that the tails are explained in next sections.
Partial Views Matching Using a Method Based on Principal Components 161
ICP algorithm
Eigenvalues Initial application.
Transformation Range data of PV principal
comparison Transformation Final
computation the sample components
(View Point matrix transformation
process partial view PV computation
estimation) estimation matrix
computation
Eigenvalues
Principal storage
Model Range data of Virtual Partial
generation process the complete Views ( VPV ) Components
(off-line) object computation of the VPV
computation Eigenvectors
storage
Projected
2D points
Depth
O = U−1 O (4)
X X
The developed matching process is divided in four
Z Z stages (see figure 1):
1. Principal components computation of the acquired
Figure 10: Four ambiguous frames for direction combina-
tions.
partial view.
2. eigenvalues comparison and initial candidates
zones selection.
3.2 Principal Components of VPV 3. Initial transformation estimation by using the
Computation eigenvectors.
4. ICP algorithm application to determine the final
Once the range data points of a VPV have been de- transformation.
termined the associated principal components can be
computed from them. They will be the eigenvectors The method developed to carry out the three first
and the eigenvalues of the covariance matrix at (1), stages is described in the next subsection. Then we
where Xc is now O. will explain how the ICP algorithm is applied to ob-
Due to the fact that the eigenvectors only provide tain the final result.
information about the line vectors but not about their
directions, some uncertainties can appear in the ul- 4.1 Initial Transformation Matrix
terior matching process. For example, using right Computation
handed coordinate systems like in figure 10, if no di-
rection is fixed in advance there are four ambiguous
The first thing to do is to compute the eigenvectors
possibilities for frame orientation. It can be also seen
and eigenvalues of the acquired range partial view.
in the figure 10 that when one of the line directions is
To maintain equivalent initial conditions than in the
fixed only two possibilities appear, being related one
VPV computation we must apply the same steps ap-
to the other by a rotation of π radians around the fixed
plied to the complete object range data: normalization
axis. For that reason, before storing the VPV eigen-
with respect to the geometric center of the complete
vectors, following steps are applied:
object, M; multipixel matrix generation; z-buffer al-
1. Verify if the third eigenvector forms an angle gorithm application and, finally, data filtering. In this
smaller than π/2 with the viewing direction. If not, case the main objective is to try the handled data being
we take the opposite direction for this eigenvector. the most similar possible to those used in the principal
component computation of the VPV.
2. The first eigenvector direction is taken to build to-
gether with the two others a right-handed frame. After that, the principal components are computed
and the definitive vector directions are established fol-
After these steps, principal components of the VPV lowing the steps described in subsection 3.2. Then the
are stored in the database for posterior use in the eigenvalues of the acquired view are compared with
matching process. Figure 11 shows the definitive the eigenvalues of all the stored VPV by evaluating
principal components of a given VPV. the following error measurement:
164 S.S. Mino
˜ et al.
Object 1
Object 2
Figure 13: Final results of the overall matching algorithm (c) (d) (c) (d)
Objeto 4
Object 3
Figure 16: Some results over free form objects of the pro-
Figure 14: Set of objects used to test the presented algo- posed method.
rithm.
ied cases. The success rate has been the 90,67%, what
5 EXPERIMENTAL RESULT demonstrates the validity of the method.
The average computation time invested by the algo-
The algorithm proposed in the present work has been rithm has been 75 seconds, programmed over a Pen-
tested over a set of 21 objects. Range data of these ob- tium 4 at 2.4 GHz. computer under Matlab environ-
jects have been acquired by means of a GRF-2 range ment. The time for the phase of eigenvalues com-
sensor which provides an average resolution of ap- parison and better candidates’ selection is very small,
proximately 1 mm. Real size of the used objects goes around 1 sec. The remaining time is consumed in the
from 5 to 10 cm. height and there are both polyhedral computation of the principal components of the real
shaped and free form objects (see figure 14). partial view and, mainly, in the application of the ICP
We have used a sphere with 1280 nodes to com- algorithm to the five candidates: five times for the di-
pute the principal components for the complete ob- rect computation of the R matrix from equation (6),
ject. Some tests have been made with a mesh of 5120 and another five times due to the direction ambigu-
nodes, but the associated increment of the computa- ity existing in the eigenvectors definition described in
tion time does not bring as a counterpart any improve- subsection 3.2.
ment in the obtained matching results. Figures 15 and 16 show the results obtained with
With respect to the multipixel matrix, sizes around several polyhedral and free-form objects respectively.
22x22 pixels have empirically given good results. The Apart from the intensity image of the object, sub-
matrix size can be critical in the method functionality plot (a) presents the range data of the complete ob-
because high value implies poor VPV generation, and ject, subplot (b) shows the partial view set of points,
low value involves a reduction in the number of range subplot (c) shows the data transformed after eigen-
data points that conform the VPV, making unaccept- values comparison, and subplot (d) contains the final
able the principal components computation. results after ICP algorithm application. Some plots
Once the principal components database was gen- have been rotated to enhance data visualization.
erated for all the considered objects we have checked Finally it is important to remark that the devel-
the matching algorithm. Three partial views have oped algorithm can handle partial views with auto-
been tested for each object, making a total of 63 stud- occlusions. Figure 17 shows an example of this case.
166 S.S. Mino
˜ et al.
ACKNOWLEDGEMENTS
This work has been developed under support of the
(a) (b) Spanish Government through the CICYT DPI2002-
03999-C02-02 contract.
REFERENCES
Adán, A., Cerrada, C., and Feliu, V. (2001a). Automatic
(c) (d) pose determination of 3D shapes based on modeling
wave sets: a new data structure for object modeling.
Figure 17: Results of the method in a free form object with Image and Vision Computing, 19(12): 867–890.
existence of auto occlusions. Adán, A., Cerrada, C., and Feliu, V. (2001b). Global shape
invariants: a solution for 3D free-form object discrim-
ination/identification problem. Pattern Recognition,
6 CONCLUSIONS 34(7):1331–1348.
Besl, P. and McKay, N. (1992). A method for registration
of 3-D shapes. IEEE Transactions on Pattern Analysis
A method to find the best matching of a range data and Machine Intelligence, 14(2):239–256.
partial view with the complete object range data has Campbell, R. J. and Flynn, P. J. (1999). Eigenshapes for 3D
been presented in this work. The method takes ad- object recognition in range data. In Proc. of the IEEE
vantage of the principal components concept. The Conference on Computer Vision and Pattern Recogni-
eigenvalues comparison allows determining the most tion, volume 2, pages 2505–2510.
probable matching zones among the partial view and Forsyth, D. A. and Ponce, J. (2002). Computer Vision: A
the complete object. The corresponding eigenvectors Modern Approach. Prentice Hall.
are used to compute an initial transformation matrix. Hebert, M., Ikeuchi, K., and Delingette, H. (1995). A
spherical representation for recognition of free-form
Applying the ICP algorithm refines this one and the surfaces. IEEE Transactions on Pattern Analysis and
definitive transformation is obtained. Machine Intelligence, 17(7):681–690.
For the comparison purposes a database of prin- Higuchi, K., Hebert, M., and Ikeuchi, K. (1994). Merg-
cipal components must be generated in advance. A ing multiple views using a spherical representation. In
procedure has been designed and described to virtu- IEEE CAD-Based Vision Workshop, pages 124–131.
ally generate all the possible partial views of a given Horn, B. K. (1988). Closed form solutions of absolute ori-
complete object and then to compute the associated entation using orthonormal matrices. Journal of the
principal components. The procedure is based on the Optical Society A, 5(7):1127–1135.
z-buffer algorithm. Mamic, G. and Bennamoun, M. (2002). Representation and
The method has been tested over a database con- recognition of 3D free-form objects. Digital Signal
Processing, 12(1):47–76.
taining 21 objects, both polyhedral and free form, in a
Rusinkiewicz, S. and Levoy, M. (2001). Efficient variants
63 case study (three different views for each object).
of the ICP algorithm. In Proceeding of the Third Inter-
The success rate has been the 90,67%. The method national Conference on 3D Digital Imaging and Mod-
has proven its robustness to auto-occlusions. Some eling (3DIM01), pages 145–152, Quebec, Canada.
improvements can still to be made in a future concern- Skocaj, D. and Leonardis, A. (2001). Robust recognition
ing to the candidate selection step. Several candidates and pose determination of 3-D objects using range im-
appear at the same zone and they could be grouped age in eigenspace approach. In Proc. of 3DIM’01,
into the same one for the following step of ICP appli- pages 171–178.
cation.
TOWARDS A CONCEPTUAL FRAMEWORK-BASED
ARCHITECTURE FOR UNMANNED SYSTEMS
Norbert Oswald
European Aeronautic Defence and Space Company - EADS,
Military Aircraft, 81663 Munich, Germany
norbert.oswald@m.eads.net
Abstract: Future unmanned aerial systems demand capabilities to perform missions automatically to the greatest possi-
ble extent. Missions like reconnaissance, surveillance, combat, or SEAD usually consist of recurring phases
and contain resembling or identical portions such as autonomous flight control, sensor processing, data trans-
mission, communication or emergency procedures. To avoid implementing many similar singular solutions,
a systematic approach for the design of an unmanned avionic software architecture is needed. Current ap-
proaches focus on a coarse system design, do not integrate off-the-shelf middleware, and do not consider the
needs for having on-board intelligence.
This paper presents a reference software architecture to design and implement typical missions of unmanned
aerial vehicles based on a CORBA middleware. The architecture is composed of identical components and
rests upon the peer-to-peer architectural style. It describes the internal structure of a single component with re-
spect to autonomous requirements and provides a framework for the rapid development and implementation of
new components. The framework separates functionality and middleware by hiding ORB specific statements
from components. Experimental tests simulating a reconnaissance mission using various ORB implementa-
tions indicate the benefits of having an architectural design supporting multi-lingual multi-process distributed
applications.
artificial intelligence community and the field of ar- the structure of software systems. Support exists from
chitecture description languages (ADL). In the mili- a number of architectural description languages like
tary sector, there is still a primary focus on the de- Adage (Coglianese and Szymanski, 1993), C2 (Med-
sign of physical platforms, low-level control systems vidoc et al., 1996) (Medvidoc, 1999), Meta-H (Binns
and sensing. Recently, there has been some work and Vestal, 1993), or ACME (Garlan et al., 2000) to
started in order to build so-called open source plat- name but a few. xADL, another ADL, has been eval-
forms. OCP is a joint venture from Boeing, Georgia uated by a number of projects like AWACS aircraft
Institute of Technologies and Honeywell Laboratories software system or Mission Data System (Dashofy
to build an open control platform designed to give fu- et al., 2002). It can be used in a flexible manner to
ture UAVs more capable flight control systems and in- develop new styles and architectures on a coarse de-
tegrates interdisciplinary systems that enables recon- scription level, suited even for families of architec-
figurable control (Schrage and Vachtsevanos, 1999) tures. An extensive comparison of the various de-
(Wills et al., 2001). A prototype of OCP was lately scription languages can be found in (Medvidovic and
tested on a UAV helicopter. JAUS is another example Taylor, 2000). Although used in a variety of applica-
of a joint venture to design an architecture for future tions, each ADL has its particular justification but so
unmanned systems. The main focus of this project far none of them has accomplished as being a stan-
is based upon building an architecture for various dard.
unmanned systems that tries to become independent At present, most of the propagated approaches lack
from technological trends (JAUS, 2004) (Hansen, on the one hand of support for integrating off-the-
2003). A third initiative is the avionics architecture shell middleware (Nitto and Rosenblum, 1999) and
description language (AADL) which is expected to consider on the other hand only the design of coarser-
pass as a standard soon. The AADL has be designed grained architectural elements. Instead of ignoring
to support a model-based architecture-driven devel- the results that practitioners have achieved in the de-
opment of large-scale systems with an emphasis on finition of middlewares, the design of a software ar-
concepts that address performance-critical embedded chitecture should incorporate both, the benefits of
systems concerns like timing and performance (Feiler top-down and bottom-up approaches. Some research
et al., 2003) (Dissaux, 2004). concerning the integration of middleware has already
Building of software architectures has a long tradi- been started (e.g. (Dashofy et al., 1999)).
tion in the artificial intelligence community. The first To build systems with capabilities for self-
important developments go back to the early 80s with dependent acting requires a fine-grained design. This
the deliberative architectures from (Nilsson, 1980) regards in particular the internal architecture of sin-
that are characterised through predictable and prede- gle architectural elements like components or connec-
termined communication between layers. Reactive tors. To support this, the present article describes an
behaviour-based architectures introduced by (Brooks, integrated view to the design of a reference software
1986) that emphasised parallelism over hierarchy ap- architecture for the domain of unmanned aerial ve-
peared later. Intelligent behaviour in such an archi- hicles regarding coarse-grained and fine-grained as-
tecture emerges from the interactions of multiple be- pects with respect to autonomous requirements. Com-
haviours and the real world. To combine the benefits ponents are considered as architectural elements that
of both approaches and thus enabling reactive behav- encapsulate functionality in a blackboard style. That
iour and planning capabilities a multitude of hybrid means, the way of providing a service is of no con-
architectures have been introduced over the interven- sideration as long as a reasonable result is returned
ing years. An overview about various architectures and each component therefore possesses mechanisms
in AI applications can be found e.g. in (Kortenkamp to ensure the required quality of service.
et al., 1998). Currently, distributed agent architec-
tures are under investigation. A sample architecture is
the Open Agent Architecture, a domain-independent
framework for integrating heterogeneous agents in a 2 DESCRIPTION OF THE
distributed environment based on the interagent com- SOFTWARE ARCHITECTURE
munication language (Cheyer and Martin, 2001).
Architecture description languages have become an The reference software architecture is an abstract
area of intense research in the software engineering model that may be substantiated for a multiplicity of
community. They define software architectures as missions. It consists of identical constructed compo-
reusable and transferable abstractions of software sys- nents, so-called autonomous entities (AEs), covering
tems (Clements et al., 2002), composed of compo- roles and functionalities, connectors that contain var-
nents, connectors, and configurations to define locus, ious ORB middleware implementations, and configu-
interaction, and topology (Garlan and Shaw, 1993). rations that describe potential connection structures.
In general, software architectures are used to describe
Towards a Conceptual Framework-Based Architecture for Unmanned Systems 169
The design of the architecture follows a peer-to- terfaces from other AEs. Thus, there exist no a pri-
peer approach meaning that peers respectively AEs ori knowledge about connections between AEs at this
may exist independently from each other. A pri- level.
ori, no defined hierarchies exist, but resulting from
the selected AE during setup inherent hierarchies
might appear. The proposed hybrid architecture com- 2.1.2 Connectors
bines behaviour-based and functional-based aspects
and thus provides deliberative and reactive system be-
haviour. The proposed architecture assists coopera- Connectors are used to model the communication be-
tween AEs in ADL. In the above software architec-
AE Autonomous Entity ture, the CORBA middleware is separated from the
AE
Ground Station
Unmanned System one
AEs and embedded into the connectors by hiding all
AE AE
Unmanned System two ORB specific activities. If using exclusively TCP/IP-
based communication, it is possible to join the con-
nectors to constitute a communication network based
on CORBA middleware. To do so with heterogeneous
AE
AE
AE
AE
mediums, some effort to implement pluggable proto-
cols is required (see e.g. (Ryan et al., 2000)). Resolv-
AE AE AE AE
ing known services to the locations of their providing
AE AEs require either a central component similar to the
yellow pages or numerous communications between
AEs performing sophisticated protocols. In terms of
Figure 1: Design of the software architecture. efficiency, a Service Broker is used that manages the
connectors by resolving their requests and keeping
tion not only between AEs of a single system but also their services and thus assists a component to find a
in a group of unmanned systems. Figure 1 shows the particular service in the network. An AE accesses a
design and configuration of the software architecture service simply by calling connect(name). The con-
in a single system as well as in a more complex con- nector forwards this call to the Service Broker which
text, being a part of a compound systems, e.g. with a resolves the request and returns a CORBA object. The
ground station and another unmanned system. latter is narrowed by the connector and returned to the
client in form of a usual object reference. This proce-
2.1 Architectural Elements dure applies too for the access of service interfaces
beyond the particular system.
In the following, the architectural elements are iden-
tified and described at domain level. This is done in a
non-formal way but with respect to standard ADLs. 2.1.3 Configuration
2.1.1 Components
The configuration is used to describe how a system is
Components respectively AEs are major ingredients built-up. As a consequence of using the framework
including the functionalities that sum up to the sys- that hides the middleware, the coupling between AEs
tem capabilities. They work concurrently, synchro- and connectors during design time requires only one
nously, or asynchronously and adopt certain roles ac- identical interface, namely connect(name) with name
cording to the embedded functionality. AEs are iden- specifying the name of the service interface. Thus, an
tified through the process of decomposing missions explicit modelling of the relationship between AEs
in order to locate recurring conceptual formulations. and connectors is reduced to a single recurring de-
At this level of abstraction, the internal representation scription.
of an AE is up to the blackboard style known from As a matter of fact, a linking between AEs occurs
artificial intelligence technologies. To grant access, through claiming of general public service interfaces.
AEs provide fixed interfaces for their services to the A concrete configuration will be chosen only at the
general public. These so-called service interfaces are beginning of a session. An operator selects from a set
a generalisation of their embedded functionality, that of available AEs the one, that provide the required
is to say, they contain no explicit implementation de- mission functionality. The connection structure for
tails. the concrete mission emerges not until the system was
At design time, own service interfaces are made instantiated. Nevertheless, dynamically added AEs
available but the precise implementation of an AE’s to the running system may be integrated into the con-
functionality is unknown. Because of that, there ex- nection structure if a dependency to functionalities of
ist no information about possibly required service in- other AEs exists.
170 N. Oswald
in order to guarantee a service. This might lead to a at run-time. To meet all requirements, the Body re-
change in the selection of the native algorithm, im- solves all variable parameters needed to run a CSP .
provements of a learning component, an update of The Body communicates with the Head, when-
model knowledge, or instructions to other AEs. The ever a decision, an evaluation or a synthesis is re-
third task regards a situation where several algorithms quired. Also, the Body may appear in the role of a
work in parallel. To build a result for the client, data client to other AEs, if the current task requires addi-
have to be fused in an appropriated way. Therefore, tional services. That means, the Body communicates
the Head comprises of a number of CSP s allocat- with other Heads until a reference to another service
ing fusion functionality. Task four is of major impor- provider, CSP or Body has been selected.
tance to the Head because of the AE’s claim to act
autonomously which requires robustness and reliabil- 3.2 Provider of Concrete Services
ity. The Head has to try all feasibilities like using
several implementations in order to execute a given
task reliable. This task does not consider replication While an AE provides services without containing a
aspects as these should be hidden to the components concrete implementation, a CSP provides an imple-
and reside inside the connectors. The above list of mentation of a single algorithm. CSP s are indepen-
tasks for the Head shows minimum requirements and dent components of the software architecture that be-
may be extended on demand without affecting the ar- long typically to one particular AE. They can be ac-
chitecture due to their modular design. cessed only indirectly by accessing an AE’s service
interface.
3.1.2 The Body <component name="AStar">
<interfaces>
The task of the Body is to provide the functionality, <implements>AE navigator/IPlanner</implements>
that an AE has registered with the Service Broker. </interfaces>
Therefore, the Body implements the propagated ser- </component>
vice interface according to figure 4. The service in-
terface ServiceInterface is visible to all other AEs. Figure 5: CSP providing a service.
Usually, the Body core itself contains no service im-
plementations. These are provided from the CSP in- Services from CSP are provided according to fig-
troduced in 3.2. That means, to solve requests that ure 6. A CSP provides an implementation of the in-
belong to the same problem domain, a Body has a terface ManagedServiceInterface. The CSP registers
number of CSP s at it’s disposal. This indirect access that service interface, which is tagged by implements,
to the real implementation offers a number of advan- with the Service Broker as well as a description on
tages, it allows how to use that particular algorithm. In the example
• to administrate several identical sources, of figure 5 the component AStar provides the interface
IPlanner. As ManagedServiceInterface is not a gen-
• to group services of the same type, and
eral public service interface, it is invisible to all AEs
• to provide distributed processing. except the one that depends on that concrete service
marked with the dependency tag.
As already mentioned, there are a number of algo- is returned to the Body which calls the Head for eval-
rithms in the aeronautics domain, that belong to the uation. If several results were calculated it might be
same problem domain. Although they solve the same required to use a fusion algorithm. The Body asks
task, algorithms differ in their native interface, their the Head to take care of the fusion. In both cases, the
behaviour, or may have different constraints. Import- result of these calculations is returned to the Body.
ing a native interface from legacy code will usually The latter returns the result to the client. For evalu-
not meet the service interface. Thus, the CSP wraps ate() and synthesize() the selection of algorithms fol-
the native interface of the legacy code to the service lows according to the Algorithm Selection pattern. To
interface. finish a connection or to choose other selection algo-
rithms the client calls disconnect().
3.3 Retrieving CSP s The selection of CSP s according to the Algorithm
Selection pattern works as explained in Fig. 9. Af-
An AE provides neither particular basic functional- ter having received SelectAlgorithm the Head calls
ity nor particular intelligent support and thus requires select() to the selection algorithm. There, a findSer-
of having a number of CSP . Each CSP implements vice() call is made to the Service Broker. This re-
external functionality that belongs either to the Head trieves a list of currently available algorithms respec-
or to the Body. As CSP s are part of an AE the lat- tively CSP s on the net. From that list, the selection
ter can be considered as an application independent algorithm chooses one or more appropriate CSP s
skeleton or frame that provides, among other things, and return those to the Head. The Head then ini-
a mechanism for a purposive access to one or several tialises the chosen CSP s and returns those references
CSP s. To do so, we have built the Algorithm Se- to the Body.
lection pattern shown in figure 7. The scope of this
pattern is to return a list of references to implemen-
tations of algorithms that shall be executed. It con-
stitutes a proposal for the first task of the Head in- 4 EXPERIMENTAL RESULTS
troduced in 3.1.1. The Algorithm Selection pattern is
used both from the Body to find a CSP that provides To test the framework we have designed an engineer-
the required basic functionality and from the Head ing platform for autonomous systems (EPAS). This
to retrieve CSP s that allocate intelligent support like platform builds the hardware and software infrastruc-
evaluation and synthesis. ture to develop, implement and test the behaviour of
The Algorithm Selection pattern is a collection of constructed software architectures. It consists on the
other patterns, namely Factory, Strategy, Adapter, It- one hand of a number of different hardware compo-
erator and Proxy. It works in the following manner: a nents, operating systems and various ORB implemen-
client, either a Head or a Body, tries to resolve refer- tations. On the other hand, there exists a repository of
ences for a given task. First, it calls the Service Bro- already constructed AEs and CSP s. Although AEs
ker to return an appropriated list of currently available in the repository have default settings, they can be
CSP s on the net together with their constraints. From adapted to current mission purposes simply by reas-
that list, it then decides with the pre-selected decision signing the set of CSP s for each AE. The status quo
algorithm what CSP to use and returns one or several of EPAS is shown in the table of figure 10. In total,
references. four operating systems, seven ORB implementations
and three languages are supported currently together
3.4 Provision of Services with a number of pre-designed AE bricks as well as
two simulators.
After having introduced the construction of an AE, To rapidly construct software architectures, we
interactions to provide a service are focused now by have developed a graphical user interface, the so-
means of the sequence diagram shown in figure 8. An called System Designer as shown in figure 11. Ac-
AE in its role as a client tries to access a particular cording to mission requirements, a user selects AE
service by calling connect(AE X). The connector of from the repository shown as boxes in the System De-
the receiving AE then calls the initialize() method of signer, or he creates new components. For each AE
the Head of the AE, named as AE XHead in the di- the user then assigns the CSP s that resolve the pro-
agram. At that stage, the Head builds a reference to posed service interfaces. A minimal design is com-
its Body and returns that reference to the client. The plete when all dependencies are resolved. Currently,
client now calls the Body directly with one of the pro- the are no intelligent decision algorithms involved.
vided service interfaces. When doing that, the Body Their behaviour is simulated by a simple but flex-
either executes directly a pre-selected CSP or it asks ible decision technique. So far, no system aspects
the Head first to select CSP s according to the Algo- were considered for the developed software architec-
rithm Selection pattern. The result of AlgorithmXCSP ture. To do so, the System Designer allows to do a
174 N. Oswald
covering different functionality and interacting ana- Brooks, R. (1986). A layered control system for a mobile
logue to peers. Advantages of the presented approach robot. 3rd Symposium. MIT Press, pages 367–372.
are Cheyer, A. and Martin, D. (2001). The open agent architec-
• cost saving over a variety of missions because of ture. Journal of Autonomous Agents and Multi-Agent
reusable design technologies and fast turnaround Systems, 4(1): 143–148. OAA.
times, Clements, P., Kazman, R., and Klein, M. (2002). Evaluat-
ing software architectures: Methods and case studies.
• reuse of existing and tested software, Technical report, SEI, Series in Software Engineering.
• rapid system analysis of the composed mission ar- Coglianese, L. and Szymanski, R. (1993). Dssa-adage: An
chitecture, environment for architecture-based avionics develop-
ment. In AGARD’93.
• dramatic reduction in mission completion time, and Dashofy, E., Hoek, A., and Taylor, R. (2002). An infrastruc-
• using of COTS and open source components. ture for the rapid development of xml-based architec-
Experiments in an appropriate engineering platform ture description languages. In The 24th International
Conference on Software Engineering, Orlando.
for autonomous systems containing various ORB im-
Dashofy, E., Medvidoc, N., and Taylor, R. (1999). Us-
plementations showed the rapid development process ing off-the-shelf middleware to implement connectors
to build and test a software architecture. By means in distributed software architectures. In International
of a system designer, autonomous entities can be cus- Conference on Software Engineering, Los Angeles.
tomised, combined and distributed at design-time in a Dissaux, P. (2004). Using the aadl for mission critical soft-
flexible manner. ware development. In ERTS conference, Toulouse.
Douglass, B. (2002). Real-Time Design Pattern. Addison
Wesley.
REFERENCES Feiler, P., Lewis, B., and Vestal, S. (2003). The sae avion-
ics architecture description language (aadl) standard:
Binns, P. and Vestal, S. (1993). Formal real-time archi- A basis for model-based architecture-driven embed-
tecture specification and analysis. In In Tenth IEEE ded systems engineering. In RTAS 2003, Washington.
Workshop on Real-Time Operating Systems and Soft- vorhanden.
ware, New York.
Towards a Conceptual Framework-Based Architecture for Unmanned Systems 177
Garlan, D., Monroe, R., and Wile, D. (2000). Acme: Ar- Medvidovic, N. and Taylor, R. N. (2000). A classifica-
chitectural description of component-based systems. tion and comparison framework for software archi-
Technical report, CMU, Software Engineering Insti- tecture description languages. Software Engineering,
tute. 26(1): 70–93.
Garlan, D. and Shaw, M. (1993). An introduction to soft- Nilsson, N. (1980). Principles of Artificial Intelligence.
ware architecture. In Ambriola, V. and Tortora, G., ed- Tioga Press.
itors, Advances in Software Engineering and Knowl- Nitto, E. D. and Rosenblum, D. (1999). Exploiting ADLs
edge Engineering. to specify architectural styles induced by middleware
Hansen, S. (2003). Integration of autonomous system com- infrastructures. In Int. Conf. on Software Engineering,
ponents using the jaus architecture. In AUVSI Un- pages 13–22.
manned Systems 2003, Baltimore. Ryan, C., Kuhns, F., Schmidt, D., Othman, O., and Par-
JAUS (2004). Joint architecture for unmanned systems. sons, J. (2000). The design and performance of a plug-
http://www.jauswg.org. gable protocol framework for real-time distributed ob-
ject computing middleware. In ACM/IFIP, editor, Pro-
Kortenkamp, D., Bonassao, R., and Murphy, R., editors
ceedings of the Middelware 2000 Conference.
(1998). Artificial Intelligence and Mobile Robots.
MIT Press. Schrage, D. P. and Vachtsevanos, G. (1999). Software en-
abled control for intelligent UAVs. In 1999 IEEE In-
Maes, P. (1994). Mmodelling adaptive autonomous agents.
ternational Conference on Control Applications.
Artificial Life, 1(1): 135–162.
Wills, L., Kannan, S., Sanders, S., Guler, M., Heck, B.,
Medvidoc, N. (1999). Architecture-based Specifi-cation-
Prasad, J., Schrage, D., and Vachtsevanos, G. (2001).
Time Software Evolution. PhD thesis, University of
An open platform for reconfigurable control. IEEE
California.
Control Systems Magazine, 21(3).
Medvidoc, N., Oreizy, P., Robbins, J., and Taylor, R.
(1996). Using object-oriented typing to support archi-
tectural design in the c2 style. In SIGSOFT’96. ACM
Press.
A INTERPOLATION-BASED APPROACH TO MOTION
GENERATION FOR HUMANOID ROBOTS
Keywords: Humanoid robot, motion generation, Tai Chi Chuan, balance checking.
Abstract: This paper proposes a static posture based motion generation system for humanoid robots. The system gener-
ates a sequence of motion from given several postures, and the motion is smooth and stable in the balance. We
have produced all the motions of Tai Chi Chuan by the system. Motion generation for humanoids has been
studied mainly based on the dynamics. Dynamic based method has, however, some defects: e.g., numerous
parameters which can not be always prepared, expensive computational cost and no guarantee that the motions
are stable in balance. We have, thus, studied less dependent-on-dynamics approach. A motion is described as
a sequence of postures. Our system figure out if we need extra postures to insert for stability. This method
enables humanoid robot, HOAP-1 to do Tai Chi Chuan.
179
J. Braz et al. (eds.), Informatics in Control, Automation and Robotics I, 179–185.
© 2006 Springer. Printed in the Netherlands.
180 K. Noritake, S. Kato and H. Itoh
3 11
Low
4 10
High 5 6 9
Height of COM
((5, 6, 9), 7, 8) 7
Low 8
Tai Chi motion are classified into 13 groups (posture • the horizontal component leans to right more
class, or simply class) and these groups are connected than 20% (#5),
by 26 arcs in the balance space. The balance space
is represented by a directed graph shown in Figure 4. • the horizontal component leans to left more than
The classification is based on the relative position of 20% (#9),
COM and the relation of the supporting and idling
legs. Firstly, postures are classified into three classes: • the horizontal component is within 20% from the
center of the both feet (#6).
both leg standing, right leg standing and left leg stand-
ing. Single leg standing is classified into four classes
according to the height of the idling leg in relation to The classification enables our system to approxi-
the supporting leg (see Figure 4): mate the distance of two postures. Let a and b be
• lower than the ankle (#4 and #10), arbitrary postures to be interpolated, and let ga to gb
be the classes which a and b belong to, respectively.
• higher or equal than the ankle and lower than the The distance between a and b is given by the distance
knee (#3 and #11), between ga and gb : the length of the path from ga to
• higher or equal than the knee and lower than the hip gb . We, therefore, can estimate the admissibility of
(#2 and #12), the interpolated motion from a to b by the distance
between ga and gb .
• higher or equal than the hip (#1 and #13).
The balance checker in our system utilizes the di-
Both leg standing is classified into five classes accord- rected graph in Figure 4 for the decision to insert an
ing to the position of the COM in relation to the COM intermediate posture or not. The directed graph give
of the erect posture (see Figure 4): a constraint for the stability in balance on the motion
• the vertical component is less than 80% (#8), generator. The constraint is that two postures to be in-
terpolated should belong to one class or adjoining two
• the vertical component is more or equal than 80% classes. For example, interpolation from a posture in
and less than 90% (#7), class #6 to a posture in class #4 has the risk of tum-
• the vertical component is more or equal than 90% ble. A posture in class #5 should be inserted between
and, them.
182 K. Noritake, S. Kato and H. Itoh
6 9 10 6 5
1 2 3 4 5
9 6 7 6 6
11 12 13 14 15
6 5 4 6 6
16 17 18 19 20
9 6 5 4 6
1 2 3 4 5
9 10 6 7 8
6 7 8 9 10
2 3 4 5 6
1 2 3 4 5
9 10 6 9 10
6 7 8 9 10
11 12 13
11 12 13
Figure 7: The snapshot of Tai Chi #44 motion by HOAP-1.
4 EXPERIMENT COMz=0
Table 1: Key Postures of Tai Chi Generated by Our System. Table 2: Key Postures of Tai Chi (continued).
postures postures
postures postures # name after by
# name after by balance tutorial
balance tutorial checker book
checker book 25 zuo deng jiao 8 4
(0) qi shi 4 4 26 yan shou liao quan 7 3
1 bai he liang chi 5 4 27 hai di zhen 6 3
2 zuo lou xi ao bu 4 4 28 shan tong bei 5 2
3 zuo dan bian 20 10 29 you zuo fen jiao 21 9
4 zuo pi pa shi 4 3 30 lou xi ao bu 15 7
5 lu ji shi 26 15 31 shang bu qin da 10 4
6 zuo ban lan chui 13 7 32 ru feng shi bi 7 4
7 zuo peng lu ji an 19 11 33 zuo yun shou 25 11
8 xie shen kao 8 4 34 you pie hen chui 11 5
9 zhou di chui 11 7 35 zuo you chuan suo 33 16
10 dao juan gong 29 12 36 tui bu chuan zhang 5 2
11 zhuan shen tui zhang 18 13 37 xu bu ya zhang 6 2
12 you pi pa shi 4 3 38 du li tuo zhang 2 1
13 lou xi zai chui 9 6 39 ma bu kao 9 3
14 bai she tu xin 9 6 40 zhuan shen da lu 9 5
15 pai jiao fu hu 31 18 41 liao zhang xia shi 11 7
16 zuo pie shen chui 11 5 42 shang bu qi xing 4 2
17 chuan quan xia shi 9 4 43 du li kua hu 7 4
18 du li cheng zhang 14 6 44 zhuan shen bai lian 12 4
19 you dan bian 20 10 45 wan gong she hu 6 4
20 you yun shou 25 12 46 you ban lan chui 16 7
21 you zuo fen zong 13 7 47 you peng lu ji an 19 11
22 gao tan ma 5 3 48 shi zi shou 5 3
23 you deng jiao 10 6 (49) shou shi 3 3
24 shuang feng guan er 5 3
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 2 3 4 5 6 7 8 9 10 11 12 13
0.06
Tai Chi #7 0.06
Tai Chi #7 without balance check Tai Chi #44
Tai Chi #44 without balance check
0.05
0.05
0.04
imbalance(m^2)
0.04
imbalance(m^2)
0.03
0.03
0.02
0.01 0.02
0
3000 6000 9000 12000 15000 18000 21000 24000 27000 30000 0.01
time(ms) original posture from the Tai Chi tutorial
intermediate posture by balance checker
3000 4500 6000 7500 9000 10500 12000 13500 15000 16500 18000 19500 21000
time(ms) original posture from the Tai Chi tutorial
Figure 9: The imbalance of Tai Chi #7. intermediate posture by balance checker
Rob R. Waiboer
Netherlands Institute for Metals Research
Delft, The Netherlands
Email: R.R.Waiboer@utwente.nl
Keywords: Realistic closed-loop trajectory simulation, Industrial robot, Perturbation method, Friction modelling.
Abstract: This paper presents a realistic dynamic simulation of the closed-loop tip motion of a rigid-link manipulator
with joint friction. The results from two simulation techniques are compared with experimental results. A
six-axis industrial Stäubli robot is modelled. The LuGre friction model is used to account both for the sliding
and pre-sliding regime. The manipulation task implies transferring a laser spot along a straight line with a
trapezoidal velocity profile.
Firstly, a non-linear finite element method is used to formulate the dynamic equations of the manipulator
mechanism. In a closed-loop simulation the driving torques are generated by the control system. The computed
trajectory tracking errors agree well with the experimental results. Unfortunately, the simulation is very time-
consuming due to the small time step of the discrete-time controller.
Secondly, a perturbation method has been applied. In this method the perturbed motion of the manipulator is
modelled as a first-order perturbation of the nominal manipulator motion. Friction torques at the actuator joints
are introduced at the stage of perturbed dynamics. A substantial reduction of the computer time is achieved
without loss of accuracy.
187
J. Braz et al. (eds.), Informatics in Control, Automation and Robotics I, 187–194.
© 2006 Springer. Printed in the Netherlands.
188 R.G.K.M. Aarts, B.J.B. Jonker and R.R. Waiboer
Axis 3
Hinge 3 (q3 ) Beam 3
Axis 4 Beam 4
Hinge 5 (q5 )
Truss 1 (ks , σ (c,0) ) Hinge 4 (q4 ) Beam 5
Hinge 6 (q6 )
Axis 2 Axis 5 Beam 2 Beam 6
End-effector
Axis 6 Beam 1
Hinge 2 (q2 )
Hinge 1 (q1 )
Axis 1 Base
niques are outside the scope of this paper and will be with the experimental results. Also results acquired
outlined elsewhere (Waiboer, 2004). with the perturbation method will be compared with
The present paper will focus on two simulation those obtained from a full non-linear dynamic simu-
techniques and a comparison of numerical and exper- lation.
imental results. At first, a non-linear finite element
method (Jonker, 1990) is used to formulate the dy-
namic equations of the manipulator mechanism, sec- 2 FINITE ELEMENT
tion 2. The finite element formulation and the pro-
posed solution method are implemented in the pro- REPRESENTATION OF THE
gram S PACAR (Jonker and Meijaard, 1990). An inter- MANIPULATOR
face to M ATLAB is available and the closed-loop sim-
ulations are carried out using S IMULINK’s graphical In the non-linear finite element method, a manipu-
user interface. A driving system is added to the ma- lator mechanism is modelled as an assembly of fi-
nipulator model, section 3, and the influence of joint nite elements interconnected by joint elements such
friction is taken into account, section 4. The LuGre as hinge elements and (slider) truss elements. This
friction model (Wit et al., 1995) has been used as it is illustrated in Fig. 2, where the Stäubli robot with
accounts for both the sliding and pre-sliding regimes. six degrees of freedom is modelled by three different
Finally the closed-loop model is assembled by includ- types of elements. The gravity compensation spring
ing the control system, section 5. is modelled as a slider-truss element. The manipu-
The second approach is the so-called perturbation lator arms are modelled by beam elements. Finally,
method, section 6. The differences between the actual the joints are represented by six cylindrical hinge ele-
manipulator motion and the nominal (desired) motion ments, which are actuated by torque servos. The ma-
are modelled as first order perturbations of that nomi- nipulator mechanism is assembled by allowing the el-
nal motion. The computation of the perturbed motion ements to have nodal points in common. The con-
is carried out in two steps. In the first step, the finite figuration of the manipulator is then described by the
element method permits the generation of locally lin- vector of nodal coordinates x, some of which may
earised models (Jonker and Aarts, 2001). In the sec- be the Cartesian coordinates, while others describe
ond step, the linearised model can simulate the per- the orientation of orthogonal triads rigidly attached
turbed motion of the manipulator accurately as long at the element nodes. The motion of the manipulator
as it remains sufficiently close to the nominal path. mechanism is described by relative degrees of free-
The perturbation method is computationally more ef- dom which are the actuator joint angles denoted by
ficient as the non-linear model only has to solved dur- the vector q. By means of the geometric transfer func-
ing the first step in a limited number of points along tions F (x) and F (e,c) , the nodal coordinates x and the
the nominal trajectory. This is the solution of an in- elongation of the gravity compensating spring e(c) are
verse dynamic analysis along a known path, so with expressed as functions of the joint angles q
only algebraic equations. The friction torques at the
actuator joints and the control system are introduced x = F (x) (q) (1)
at the stage of perturbed dynamics in the second step.
and
In section 7, the simulation results will be compared
e(c) = F (e,c) (q) . (2)
Realistic Dynamic Simulation of an Industrial Robot with Joint Friction 189
ẍ = DF (x) q̈ + (D2 F (x) q̇)q̇. (5) where T is the transmission model for the joints. For
joints j = 1..5 only the respective gear ratio nj of the
The geometric transfer functions F (x) and F (e,c) are joint plays a role. The drives for the wrist of the robot,
determined numerically in an iterative way (Jonker, drives 5 and 6, are coupled. This causes an extra term
1990). leading to
The inertia properties of the concentrated and dis-
n1 0 0 0 0 0
tributed mass of the elements are described with the 0 n2 0 0 0 0
aid of lumped mass matrices. Let M(x) be the global
0 0 n3 0 0 0
T=
0
mass matrix, obtained by assembling the mass matri- . (11)
ces of the individual elements and let f (x, ẋ, t) be 0 0 0 n4 0
0 0 0 0 n5 0
the global force vector including gravity forces and
0 0 0 0 n6 n6
the velocity dependent inertia forces. Then the equa-
(f )
tions of motion described in the dynamic degrees of The friction torque in each joint is denoted τj with
freedom are given by j = 1..6. Due to the coupling in the wrist, an addi-
(f )
M̄q̈ + DF (x)T M(D2 F (x) q̇)q̇ − f tional friction torque τ7 is identified on the axis of
(6) motor 6. The vector of joint friction torques is then
+ DF (e,c)T σ (c) = τ , defined as
(f ) (f ) (f ) (f )
where M̄ = DF (x)T MDF (x) is the reduced mass τ (f ) = τ1 , τ2 , τ3 , τ4 , · · ·
matrix and σ (c) is the total stress in the gravity com- T (12)
(f ) (f ) (f ) (f )
pensating spring. The vector τ represents the joint τ5 +τ7 , τ6 +τ7 .
driving torques. The constitutive relation for the grav- The joint friction modelling is continued in section 4.
ity compensating spring is described by The drives are equipped with permanent magnet,
σ (c) = σ (c,0) + k s e(c) , (7) three-phase synchronous motors, yielding a linear re-
lation between motor currents and torque. The vector
where σ and k s denote the pre-stress and the stiff-
c,0
of joint driving torques τ is then given by
ness coefficients of the spring, respectively.
This finite element method has been implemented τ = TT C(m) i − TT J(m) ϕ̈ − τ (f ) , (13)
(m) (m)
in the S PACAR software program (Jonker and Mei- where the matrices C and J are diagonal ma-
(m)
jaard, 1990). trices with the motor constants cj and rotor inertias
(m)
Jj , respectively. Substitution of (10) and (13) into
(6) and some rearranging yields
3 THE DRIVING SYSTEM
M̄(n) q̈ + DF (x)T M(D2 F (x) q̇)q̇ − f
(14)
The robot is driven by servo motors connected via + DF (e,c)T σ (c) = τ (n) ,
gear boxes to the robot joints. The inputs for the drive
system are the servo currents ij and the outputs are the where the mass matrix M̄(n) is defined by
joint torques τj , where the subscript j = 1..6 denotes M̄(n) = M̄ + TT J(m) T , (15)
either the motor or the joint number. A schematic as the rotor inertias TT J(m) T obviously have to be
model of the drives of joints 1 to 4 is shown in Fig. 3. added to the reduced mass matrix M̄ in the equations
The relations between the vector of motor angles ϕ, of motion (6). Furthermore, the vector of net joint
the vector of joint angles q and their time derivatives torques is defined as
are given by
τ (n) = TT C(m) i − τ (f ) . (16)
ϕ = Tq, (8)
The inertia properties and spring coefficients have
ϕ̇ = Tq̇, (9) been found by means of parameter identification tech-
ϕ̈ = Tq̈, (10) niques (Waiboer, 2004).
190 R.G.K.M. Aarts, B.J.B. Jonker and R.R. Waiboer
4 JOINT FRICTION MODEL where τ (c) is known as Coulomb friction torque, τ (s)
is the static friction torque and ωs and δ are shaping
For feed-forward dynamic compensation purposes parameters. The values for the static friction torque
and robot inertia identification techniques it is com- τ (s) and Coulomb friction torque τ (c) may be differ-
mon to model friction in robot joints as a torque τ (f ) ent for positive and negative velocities and are there-
which consists of a Coulomb friction torque and an fore distinguished by the subscripts + and −, respec-
additional viscous friction torque for non-zero veloc- tively.
ities (Swevers et al., 1996; Calafiore et al., 2001). For each friction torque in the robot model, the
These so-called static or kinematic friction models parameters describing the sliding regime of the Lu-
are valid only at sufficiently high velocities because Gre friction model are estimated separately using
they ignore the presliding regime. At zero velocity dedicated joint torque measurements combined with
they show a discontinuity in the friction torque which non-linear parameter optimisation techniques (Wai-
gives rise to numerical integration problems in a for- boer, 2004). The parameters describing the pre-
ward dynamic simulation. To avoid this problem we sliding regime are approximated by comparing the
apply the LuGre friction model (Wit et al., 1995), that pre-sliding behaviour in simulation with measure-
accounts for both the friction in the sliding and in the ments.
presliding regime.
In the LuGre friction model there is an internal state
z that describes the average presliding displacement, 5 CLOSED-LOOP ROBOT
as introduced by Heassig et al. (Haessig and Fried- MODEL
land, 1991). The state equations with a differential
equation for the state z and an output equation for the The S PACAR model of the manipulator mechanism,
friction moment τ (f ) are the controller, the friction models and the robot drives
| q̇ | are assembled into a complete model of the closed-
ż = q̇ − z, (17) loop robot system, Fig. 4.
g(q̇)
The CS7B controller used in the Stäubli RX90B
τ (f ) = c(0) z + c(1) ż + c(2) q̇ . (18) is an industrial PID controller based on the Adept
Note that a subscript j = 1 . . . 7 should be added to all V+ operating- and motion control system. The con-
variables to distinguish between the separate friction troller includes six SISO controllers, one for each
torques in the robot model, but it is omitted here for servo-motor. A trajectory generator computes the set-
better readability. For each joint friction model with points q̈ (r) , q̇ (r) and q (r) at a rate of 1 kHz. The
j = 1..6 the input velocity equals the joint velocity q̇j . actual joint position q is compared with the set-point
(f )
For the extra friction model τ7 the input velocity is q (r) and the error is fed into the P I-block of the
defined as the sum of the joint velocities of joints 5 controller, which includes the proportional part and
and 6. the integrator part. The acceleration set-points q̈ (r)
In general, the friction torque in the pre-sliding and velocity set-points q̇ (r) are used for accelera-
regime is described by a non-linear spring-damper tion feed-forward and friction compensation, both in-
system that is modelled with an equivalent stiffness cluded in the F F -block. The friction compensation
c(0) for the position–torque relationship at velocity re- includes both Coulomb and viscous friction. The ve-
versal and a micro-viscous damping coefficient c(1) . locity feedback q̇ is fed into the D-block, represent-
At zero velocity, the deformation of the non-linear ing the differential part of the control scheme. The
spring torque is related to the joint (micro) rotation block C represents the current loop, including the
q. power amplifier. Note that the position loop runs
(1)
The viscous friction torque in the sliding regime is at fs = 1 kHz and the velocity loop and current
(2)
modelled by c(2) q̇, where c(2) is the viscous friction loop run at fs = 4 kHz. The transfer functions
coefficient. In addition, at a non-zero constant veloc- of the different blocks have been identified and im-
ity q̇, the internal state z, so the average deformation, plemented in a S IMULINK block scheme of the robot
will approach a steady state value equal to c(0) g(q̇). controller (Waiboer, 2004).
The function g(q̇) can be any function that represents The current vector i is fed into the drive model
the constant velocity behaviour in the sliding regime. where the joint torques are computed. The LuGre
In this paper the Stribeck model will be used, which friction models compute the friction torques from
models the development of a lubricating film between the joint velocities q̇. The net joint torque τ (n) in
the contact surfaces as the relative velocity increases (14) is the input for the non-linear manipulator model
from zero. The Stribeck model is given by (S PACAR). The output of the manipulator model con-
δ tains the joint positions, and velocities, denoted by q
c(0) g(q̇) = τ (c) + (τ (s) − τ (c) )e−(|q̇|/ωs ) , (19) and q̇, respectively.
Realistic Dynamic Simulation of an Industrial Robot with Joint Friction 191
q̇(r) q̈(r)
FF (2)
fs = 4kHz
q(r)+ +++ i + τ (n) q q̇
PI C Drives S PACAR
− − −
q (1)
fs = 1kHz q̇ τ (f)
D Friction
Figure 4: Assembly of the closed-loop robot model for a simulation with the non-linear finite element method (S PACAR
block).
q̇(r) q̈(r)
FF
fs = 4kHz
q(r)+ +++ i + τ (n) + δτ (n) δy+ q q̇
PI C Drives LT V
− − − − +
q fs = 1kHz q̇ τ (f) y0
read τ 0 τ 0
(n)
D Friction read y0
Figure 5: Perturbation scheme with the linearised equations of motion (LTV block).
0.4 0.04
q1 Measurement
0.3 q2 Simulation
q3 0.02
q4
V elocity [rad/s]
deviation [mm]
0.2
q5 0
0.1 q6
0 −0.02
−0.1 −0.04
−0.2
−0.06
−0.3
−0.08
−0.4 0 200 400 600 800 1000
0 2 4 6 8 10 12 14
time [s] position [mm]
a. Horizontal deviation
Figure 7: The joint velocity.
0.08
Measurement
Simulation
which is well within the range of accuracy required 0.06
deviation [mm]
for laser welding. At about 600 mm on the trajec-
0.04
tory, at the velocity reversal in joints 2 and 3, there is
a jump of the friction force, resulting in a relatively 0.02
large path error.
During the experiment the motor currents were 0
recorded. In Fig. 9 the measured motor currents of
−0.02
joint 3 is compared with the simulated motor current
as an example. The simulation shows good agreement −0.04
with the measurements. It can be observed that the 0 200 400 600 800 1000
motor currents are predicted quite accurately in the position [mm]
sliding regime and near the velocity reversal. How- b. Vertical deviation
ever, the model is unable to predict the stick-torques
with a high level of accuracy. This can be explained Figure 8: Simulated and measured path deviation.
by the fact that the stiction torque can be anywhere be-
(s) (s)
tween τ− and τ+ over a very small position range
of tenths of µrad, due to the high equivalent stiffness
8 CONCLUSIONS
c(0) in (18).
In this paper a realistic dynamic simulation of a rigid
The required simulation time with the non-linear
industrial robot has been presented. The following
simulation model was about 70 minutes on a 2.4 GHz
components are essential for the closed-loop simula-
Pentium 4 PC, which indicates that it is computation-
tion:
ally quite intensive. This is caused by the small time
steps at which the manipulator configuration, see (1) • A finite element-based robot model has been used
and (2), needs to be solved by an iterative method. To to model the mechanical part of the robot. Robot
overcome this drawback, the perturbation approach identification has been applied to find the model pa-
will be used next. rameters accurately.
For the perturbation method the number of points • Furthermore, joint friction has been modelled using
along the trajectory N at which the system is lin- the LuGre friction model.
earised is taken to be 400. The simulation results of
the perturbation method and the non-linear simulation • Finally, a controller model has been identified and
have been compared. Fig 10 shows the path accuracy implemented.
along the trajectory. There is no noticeable difference The complete closed-loop model has been used for
between the results at this scale. The error stays well the simulation of the motion of the robot tip along
below 10 µm and is mostly less than 2 µm. Also the a prescribed trajectory. The simulation results show
agreement between the simulated motor currents for good agreement with the measurements. It was found
both the non-linear simulation and the perturbation that a closed-loop simulation with the non-linear ro-
method is good, especially when the manipulator is in bot model was very time consuming due to the small
motion. At rest, the torques in the stick or pre-sliding time step imposed by the discrete controller. Appli-
regime shows some differences as before. A signifi- cation of the perturbation method with the linearised
cant reduction of simulation time by about a factor 10 model yields a substantial reduction in computer time
has been achieved. without any loss of accuracy. The non-linear finite
194 R.G.K.M. Aarts, B.J.B. Jonker and R.R. Waiboer
100 0.04
Measurement Non-linear
0 Simulation perturbation
0.02
−100
Current [Counts]
deviation[mm]
−200 0
−300
−400 −0.02
−500
−0.04
−600
−700 −0.06
−800
−900 −0.08
0 2 4 6 8 10 12 14 0 200 400 600 800 1000
time [s] position[mm]
a. Horizontal deviation
Figure 9: Measured and simulated motor current for joint 3.
0.08
Non-linear
perturbation
element model and the perturbation method can rela- 0.06
deviation[mm]
tively easy be extended to account for flexibilities in
0.04
the robot.
0.02
0
ACKNOWLEDGEMENTS
−0.02
This work was carried out under the project num- −0.04
0 200 400 600 800 1000
ber MC8.00073 in the framework of the Strate-
gic Research programme of the Netherlands In- position[mm]
stitute for Metals Research in the Netherlands b. Vertical deviation
(http://www.nimr.nl/).
The authors acknowledge the work carried out on Figure 10: Simulated path deviation (non-linear versus per-
the identification of the controller, inertia parameters turbation method).
and friction parameters by W. Holterman, T. Harde-
man and A. Kool, respectively.
Jonker, J. and Meijaard, J. (1990). Spacar-computer pro-
gram for dynamic analysis of flexible spatial mech-
anisms and manipulators. In Schiehlen, W., ed-
itor, Multibody systems handbook, pages 123–143.
REFERENCES Springer-Verlag, Berlin.
Swevers, J., Ganseman, C., Schutter, J. D., and Brussel,
Calafiore, G., Indri, M., and Bona, B. (2001). Robot dy- H. V. (1996). Experimental robot identification using
namic calibration: Optimal excitation trajectories and optimised periodic trajectories. Mechanical Systems
experimental parameter estimation. Journal of Ro- and Signal Processing, 10(5):561–577.
botic Systems, 18(2):55–68. Waiboer, R. R. (to be published, 2004). Dynamic robot sim-
Haessig, D. and Friedland, B. (1991). On the modeling ulation and identification – for Off-Line Programming
and simulation of friction. Transactions of the ASME, in robotised laser welding. PhD thesis, University of
Journal of Dynamic Systems, Measurement and Con- Twente, The Netherlands.
trol, 113(3):354–362. Wit, C. d., Olsson, H., Åström, K., and Lischinsky, P.
Jonker, J. (1990). A finite element dynamic analysis of flex- (1995). A new model for control of systems with
ible manipulators. International Journal of Robotics friction. IEEE Transactions on Automatic Control,
Research, 9(4):59–74. 40(3):419–425.
Jonker, J. and Aarts, R. (2001). A perturbation method for
dynamic analysis and simulation of flexible manipu-
lators. Multibody System Dynamics, 6(3):245–266.
A NEW PARADIGM FOR SHIP HULL INSPECTION USING A
HOLONOMIC HOVER-CAPABLE AUV
Robert Damus, Samuel Desset, James Morash, Victor Polidoro, Franz Hover, Chrys Chryssostomidis
Sea Grant Autonomous Underwater Vehicles Lab, Massachusetts Institute of Technology, Cambridge, MA, USA
Email: auvs@mit.edu
Abstract: The MIT Sea Grant AUV Lab, in association with Bluefin Robotics Corporation, has undertaken the task of
designing a new autonomous underwater vehicle, a holonomic hover-capable robot capable of performing
missions where an inspection capability similar to that of a remotely operated vehicle is the primary goal.
One of the primary issues in this mode of operating AUVs is how the robot perceives its environment and
thus navigates. The predominant methods for navigating in close proximity to large iron structures, which
precludes accurate compass measurements, require the AUV to receive position information updates from
an outside source, typically an acoustic LBL or USBL system. The new paradigm we present in this paper
divorces the navigation routine from any absolute reference frame; motions are referenced directly to the
hull. We argue that this technique offers some substantial benefits over the conventional approaches, and
will present the current status of our project.
faint flash, but the image is by no means On the other hand, the complete absence of
unusable. Conversely, there is a slight features is workable also: operate at a given depth
degradation of the DVL’s velocity until the integrated velocity safely exceeds the
performance. The drift rate approximately circumference of the vessel, then move to another
doubles, but remains below 1cm per meter depth. When an object of interest is detected,
of distance traveled, which is sufficiently immediate surfacing must occur in this scenario
low enough to satisfy our concept of since location along the hull would be poorly
operations. known.
The horizontal slice method is very good for the
sides and bow of a vessel. Many vessels, for
example, large crude carriers (LCC’s) have flat
bottoms, which must also be inspected. Here, aside
from the fact that the vehicle or the imaging sensor
and DVL must be reoriented to look up, there is no
cross-track error available, since the depth is roughly
constant. Long tracks parallel to the hull centerline
would be subject to accrued errors on the order of
several meters. The vertical slice approach (Figure
5) addresses this problem, by making paths down the
Figure 3: The horizontal slice method; the vehicle makes sides of the hull and then underneath, in a plane
passes at constant depth. normal to the hull centerline. Once at the
centerline, options are to turn around and come back
3.2 Two Approaches Using “Slicing” up on the same side, or to continue all the way under
the hull to surface on the other side, after a 180-
The DVL can be used to servo both orientation and degree turn in place (which must be constructed
distance to the hull (through the four independent based on rate gyro information only). In either case,
range measurements) and to estimate the distance the important property here is that the path length is
traveled, with reasonable accuracy. When coupled limited, so that the cross-track errors are limited, and
with an absolute depth measurement, two plausible overlap can be applied as necessary. For instance,
inspection scenarios emerge for the majority of a using a vertical path length of 130m implies a cross-
large ship’s surface: vertical and horizontal track error on the order of 65cm, which is easily
“slicing.” For the purposes of this paper, we covered by overlapping images with field of view
confine our discussion to the large, relatively smooth several meters, assuming no systematic bias.
surface of the hull sides, bottom, and bow. As with Convex or concave, two-axis curvature of the
other existing automated inspection methods, the hull also requires some overlap. For instance, in the
stern area with propellers, rudders, shafting and extreme case of a spherical hull and the vertical
bosses cannot be easily encompassed within our survey, like ribbons around a ball, the imaged path
scheme. lines converge at the bottom. These cases will
In the case of horizontal slicing (Figures 3 and require further study and mission design at a high
4), paths in the horizontal plane are performed. The level.
absolute depth provides bounded cross-track error
measurement, while the integrated velocity provides
the along-track estimate of position. This along- 3.3 Role of Low- and Mid-Level
track position, with depth, is recorded for each Control
image.
Defining the end of a track at a given depth is a Dynamically, the vehicle is equipped with high-
sensing challenge to which we see several possible performance thrusters so as to operate in shallow
approaches. First, there may be landmarks, such as waters, waves, and in proximity to hulls. The
weld lines, protuberances, or sharp edges as found primary sensor we have available, the DVL,
near the bow or stern areas. These landmarks, however, is a comparatively low bandwidth device,
especially if they occur at many depths, can be used which cannot provide robust measurements for
to put limits on the search area, and to re-zero the direct control – the noise properties may be
integrated velocity error. Certainly prior knowledge unpredictable, timing may vary, and missed data are
of the ship’s lines and these features can be not uncommon. Furthermore, loss of contact with
incorporated into the mapping strategy at some the hull can occur in regular operation, and even be
level. exploited as a landmark.
A New Paradigm for Ship Hull Inspection 199
Harris, S.E. and E.V. Slate, 1999. Lamp Ray: Ship Hull Trimble, G. and E. Belcher, 2002. Ship Berthing and Hull
Assessment for Value, Safety and Readiness. Proc. Inspection Using the CetusII AUV and MIRIS High-
IEEE/MTS Oceans. Resolution Sonar, Proc. IEEE/MTS Oceans.
Hutchinson, S., G.D. Hager, and P.I. Corke, 1996. A http://www.perrymare.com/presentations/Oceans%202
tutorial on visual servo control. IEEE Trans. Robotics 002%20Homeland%20Defense.pdf. See also:
and Automation, 12:651-670. http://web.nps.navy.mil/~brutzman/Savage/Submersib
RD Instruments DVL, http://www.dvlnav.com. les/UnmannedUnderwaterVehicles/CetusFlyerMarch2
Ship Hull Inspections with AquaMap 001.pdf.
http://www.desertstar.com/newsite/positioning/shiphul Wilcox, T., 2003. Marine Sonic Technologies Ltd.,
l/manuals/Ship%20Hull%20Inspections.pdf. Personal communication.
DIMSART: A REAL TIME - DEVICE INDEPENDENT MODULAR
SOFTWARE ARCHITECTURE FOR ROBOTIC AND TELEROBOTIC
APPLICATIONS
Keywords: Telepresence, Distributed Control, Indpendency, Robotic, Telerobotic, DIMSART, RTLinux, VxWorks.
Abstract: In this paper a software architecture for robotic and telerobotic applications will be described. The software
is device and platform independent, and is distributed control orientated. Thus, the package is suitable for
any real time system configuration. The architecture allows designers to easily build complex control schemes
for any hardware device, easily control and manage them, and communicate with other devices with a plug-
in/plug-out modular concept. The need to create a platform where control engineers/designers could freely
implement their algorithms, without needing to worry about the device driver and programming related issues,
further motivated this project. Implementing a new control algorithm with the software architecture described
here, requires that the designer simply follow a template where the necessary code is reduced to only those
functions having to do with the controller. We conducted several teleoperation schemes, one of which will be
presented here as a configuration example.
1.2 Control and Software second group of architectures, but it is more focused
engineering Interplay in the automatic control level. Furthermore, it can
be easily embedded in other architectures or systems
with almost any Linux/Unix operating system type:
A not less significant goal is the creation of an har- Linux, Solaris, RTLinux, VxWorks.
mony between the computer science world and the The outline of this paper is as follows. We first
control engineering world. Not rarely, control engi- present, in section 2, a chapter dedicated to general
neers are faced with obstacles arising from the pro- robotic control concepts with a particular scheme ex-
gramming work required for controlling and driving ample which will be used in the subsequent sections
hardware devices. The software architecture de- to introduce the DIMSART architecture. We then de-
scribed here allows a control engineer to forget about scribe the software platform and its main parts in sec-
issues related to device drivers, real time program- tion 3. Section 4 introduces a complete experimen-
ming, concurrencies or thread programming. Thus, tal setup as a DIMSART configuration example. Fi-
he/she only needs to concentrate on the specific con- nally, in section 5, some concluding remarks and fu-
trol algorithm. As it will be seen, by using this ture lines are given.
software platform, the designer is only faced with
the creation a ”module”, for which a template-based
methodology is used. This goal will result in a pro-
gramming time saving for the control designer and 2 ROBOT CONTROL
thus the consequence of investing the whole energy
in the control design itself.
We will make use of a telepresence control scheme
1.3 Existing Architectures example to focus our interest in three aspects: distrib-
uted control, the data flow and the definition of the
The generalized needs of facilitating efficient robotic acting regions of our framework. Also in this chap-
system designs and implementations resulted in ter, a more abstract view of a general robotic control
the development of several software architectures. scheme will be introduced, and later it will be speci-
fied within the mentioned example.
In (Ève Coste-Manière and Redi Simmons, 2000)
these general needs are formalized. Furthermore, the
importance of making the right architecture choice 2.1 Wave Variables Scheme as
is noted, and some architectures are compared and
contrasted. Bilateral Control Example
Some architectures for robotic systems are very
complete packages which consider the overall struc-
In fig.2 a block diagram of a Wave Variable control
ture for controlling a robot, including all possible
scheme can be seen. The Wave Variables Theory
levels of competence in a robotic system (sensing,
is a common approach to minimize the degradative
mapping, modeling, planning, AI, task execution,
effects of time-delayed communication channels
motor control, etc...) either in a hierarchical layered
in telepresence systems. For detailed information
style (Albu et al., 1988), in a behavioral one (Brooks,
about this theory refer to (Niemeyer, 1996) and
1986), or in an hybrid one (Borrelly et al., 1998),
(Artigas, 2003) . It is not the aim of this paper to
(Schneider et al., 1998), (RTI, 2004), (Volpe et al.,
detail the control theory behind the scheme. Rather,
2001). However these kind of architectures are more
it is intended to be used as a reference point for the
appropriate for autonomous robot vehicles where
DIMSART approach. We will refer to this example
a control at high level or, alternatively, a Decision
in some of the following sections to give support to
Layer, as mentioned in (Volpe et al., 2001), is of high
the theoretical explanations of the architecture.
importance.
Other architectures are not so concerned with
layered structures and emphasize instead the real
time operation as a sequence of control components
executed at a lower level. These architectures tend to
be simpler but more flexible (Scholl, 2001), (Stasse
and Kuniyoshi, 2000).
The DIMSART architecture shines for its simplic- Figure 2: Global control software is decoupled from hard-
ity, flexibility and portability. It can be included to the ware device, driver and communication.
DIMSART 203
Distributed Control reading and writing data from/to it, is part of what
we call the frame. The frame encompasses elements
In telepresence scenarios the concept of distributed located between the low level control layer, the hard-
control becomes an important issue. Although from ware I/O layer and the network communication layer.
the hardware point of view both master and slave de- The high level control layer deals with non-real time
vices can be quite different, from the control point of control such as task planning or behavioral control.
view they are not so dissimilar. The main idea of dis- Our framework will be focused on the low level con-
tributed control is to divide the global control task of trol layer and its relationship with the frame.
the system in n identical or quasi identical local con-
trol components. The nature of a bilateral control is
HIGH LEVEL CTRL
to distribute the control task between both sides, mas-
ter and slave. The control component, -henceforth re-
SCHEDULER
ferred to as module-, will have to be sufficiently pow- LOW LEVEL CTRL
erful to support
FRAME
1. The existing differences between master and slave DRIVER
robots/environments characteristics (for instance,
NETWORK
controller constants, input/output variables, algo- HW I/O
COMM
rithm differences, etc...)
2. Possible different OS platforms. For example, the ACTU− SENSORS
master could be controlled by a RTLinux machine, ATORS
SART architecture provides the needed mechanisms diagram of the DIMSART overview. Furthermore, in
for this job. a higher layer, a GUI has been developed to configure
the robotic control scheme. The user can choose from
2.3 Bilateral Control Scheme with a list of read-to-use modules which ones to activate,
and configuration parameters can also be set for each
DIMSART Embedded module.
At this point, we are ready to concretely define
specific requirements for the architecture, as well
as its location in a robotic scheme. Fig.4 shows
the introduced bilateral control example with a
DIMSART on each side. Each DIMSART performs
the control for each side and could be running in
different operating systems.
Moreover, as it will be seen in section 3.3, the 3.1.1 Initialization and Activation
Module Engine provides a mechanism for com-
municating with the active modules. By means of Initialization of a module means that its internal
a Command interface, the user will be able to send memory is allocated, and its internal variables and
commands from the frame space to a specific mod- constants are initialized. This process takes place
ule. These commands are internally defined in the for every module belonging to the modules list
module, and they are thought to set the configuration (attributed in the Module Engine, see fig.6),
parameters of the module (in the previous example, a during the initialization process of the DIMSART.
Command could be used to set the constants of the On the other hand, only the desired modules
PD Controller, or to specify the configuration of the for the specific control scheme will be activated.
Wave Transformer). Activate means to insert the input and output data
Once the DIMSART is loaded in a robotic system, types needed by the module under consideration into
any control engineer can easily implement a module the Data Base. Thus the Data Base will dynam-
by simply following a module pattern in a pure ”write ically grow by means of each module activation.
your code here” style. The aim of the DIMSART is to The Module Engine, or more precisely, the
create a list of modules, from which control engineers Module Step function (which will be called at
will be able to build complex control schemes by every time step), will act by calling the Compute
choosing and combining modules from this list. function of each active module.
Thus, a chain or sequence of modules will be created It is important to note the differences between the
to perform the control task of a robotic application. tasks of the initialization and activation processes.
As it will be seen in the following subsections, after In order to make the DIMSART compatible with
a module ”library” is created, the user will be able to most operating systems, the conception of these ini-
activate and deactivate modules in a plug-in/ plug-out tial processes is based on a kernel/modules3 model of
methodology. operating systems like Unix or Linux (Corbet, 2001).
A kernel module in RTLinux, for instance, allocates
Module Template its memory during its insertion process. Once the
RTLinux module is inserted it should not allocate
As already stated, every control block has simi- more memory.
lar characteristics. The Module Template formalizes
the base of every module in an object oriented way.
The class2 struct Module is declared here with a 3.2 The Data Base
group of functions and some attributes (see fig.6).
The core of the Data Base is a dynamic list which
stores the incoming data from each active module,
and the data coming from the frame (which comes
from the hardware device). Furthermore, the Data
Base incorporates a set of mechanisms for the data
interaction between the active modules and the
dynamic list. Its construction is performed during the
initialization of the Module Engine and at each
module activation processes.
During the initialization the dynamic list is created
according to a Device Descriptor of the hardware
device. In this descriptor, characteristics such as the
DoF and input and output data types are enclosed.
After the initialization process, the Data Base is
created. At this point, each time a module is activated
new data fields are created in accordance with the
data types needed by the module. Modules can
be inserted or removed at any time during system
Figure 6: Class-like Diagram of the DIMSART. operation (which in turn will insert or remove input
and output types into the Data Base).
3
Unix/Linux kernel modules
2
Simulated class in C code
206 J. Artigas et al.
cmd.Value=PDctrl;
ModuleCmd(&cmd); /*Activates PD ctlr*/ Table 1: Master and slave Commands configuration. Dest
/*Other mod activations go here*/. is destination. m&s means master and slave. MOD ON, for
} instance, activates the module.
main_interrupt_thread(arg){
Dest. Module Command Value
/* Some inis */ m&s COMM RXMOD CRX ADD DATA CH2 WAVES
Read_Comm(inwaves); m&s MOD ENG MOD ON COMM RXMOD
m&s WTRANSF MOD B PARAM 10
Robot_read(pos); master WTRANSF MOD CONF MODE MASTER
DB_ext_write(pos,inwaves); slave WTRANSF MOD CONF MODE SLAVE
Module_Step(); /*compute active mods*/ m&s MOD ENG MOD ON WTRANSF MOD
master PDCTRL MOD K PARAM 3000
DB_ext_read(force,outwaves); slave PDCTRL MOD K PARAM 5000
Write_Comm(); m&s MOD ENG MOD ON PDCTRL MOD
Robot_Command(force); master TIMEDELAY MOD TD PARAM 10
master MOD ENG MOD ON TIMEDELAY MOD
} m&s COMM TXMOD CTX ADD DATA CH1 TD WAVES
m&s MOD ENG MOD ON COMM TXMOD
DB ext write : Writes the device output data to the m&s MOD ENG MATCHING CHECK /
Data Base (position in the example).
Module Step : function which schedules all active
modules (in the previous example the compute 5 CONCLUDING REMARKS AND
function of the modules PD Controller and Wave
Transformer are called). REMAINING ASPECTS
DB ext read : Reads the device input data from the
Data Base (desired force in the example.)
The DIMSART has been presented in this pa-
per. It provides a solution to embed a robotic or
The data coming from the robot is no longer in the telerobotic control scheme in a hardware device-
driver, but instead in a data container, from which OS-communication channel configuration. Indepen-
other elements will be able to read. Thus, a software dence, distributed control, dynamics and flexibility
boundary between the frame and the DIMSART is de- are values provided to the architecture. The system
fined. performance depends on several parameters which
may vary in every particular scheme. The number of
degrees of freedom, the number of active modules
and the length of the active modules influence the
system performance. The system has been tested
4 EXAMPLE in several robotic and telerobotic contexts and has
shown good performance. One of them has been
Fig.8 shows the complete scheme for the above pre- presented in this paper as an example and as a tool to
sented Wave Variables scheme example, and table 1 describe the DIMSART architecture to the reader. A
its Commands configuration. The system is distrib- very representative application is the ROKVISS4 , a
uted within two computers, each one running a DIM- Telepresence experiment in which a force feedback
SART architecture. The computer governing the mas- joystick on Earth is to be controlled with the DIM-
ter is equipped with a RTLinux OS. The slave runs SART architecture, and a 2 DoF robot, which will be
under Linux. On the master side there is a frame mounted on the ISS is also to be controlled with the
driving a PHANToM 3DoF (Massie and Salisbury, same architecture. For detailed information about the
1994) as a master device with a DIMSART configura- ROKVISS experiment see (Preusche et al., 2003).
tion. The communication between master and slave is Future work for DIMSART will include several as-
performed through UDP sockets . On the slave side, a pects. ”Online” module compilation and the exten-
user frame governing a DIMSART is used to simulate sion of the Data Base to multiple data formats and
a slave robot and a virtual environment. This specific dimensions are issues which are already being devel-
scheme was built for testing the performance of the oped. Future lines could extend the DIMSART to
Wave Variables control scheme as well as for verify- high level control and multi-thread architectures.
ing the modular container approach of the DIMSART.
As it can be seen, the communication between the
two sides is performed through some dedicated mod-
ules. These two modules provide the interface be- 4
Robotic Component Verification on the International
tween the DIMSART and the communication chan- Space Station (ISS)
nel.
208 J. Artigas et al.
u wave
USER FRAME DEVICE FRAME
FORCE POS
v wave
(Comm channel)
POS, CH2_WAVES
FORCE
DataBase
DataBase
VIRTU AL WALL
CH1_TD_WAVES
CH2_WAVES
CommRXMod
POS
CH1_WAVE, POS
CommTXMod
CH2_WAVES
POS
POS
WTRANSF
CH1_WAVES
CommTXMod
DES_FORCE
POS, CH2_WAVES
CommRXMod
Master Side (RTLinux)
CH1_TD_WAVES
CH1_WAVES
POS, DES_POS
CH1_WAVE, FORCE
WTRANSF
CH1_WAVES, DES_POS
artigas 30/10/03
PDCTRL
ROBOTSIM
TIMEDELAY
PDCTRL
Signal Processing,
Systems Modeling and Control
ON MODELING AND CONTROL OF DISCRETE TIMED EVENT
GRAPHS WITH MULTIPLIERS USING (MIN, +) ALGEBRA
Samir Hamaci
Jean-Louis Boimond
´
Sebastien Lahaye
LIS
62 avenue Notre Dame du Lac - Angers, France
Email: [hamaci, boimond,lahaye]@istia.univ-angers.fr,
Keywords: Discrete timed event graphs with multipliers, timed weighted marked graphs, dioid, (min, +) algebra, Resid-
uation, just-in-time control.
Abstract: Timed event graphs with multipliers, also called timed weighted marked graphs, constitute a subclass of Petri
nets well adapted to model discrete event systems involving synchronization and saturation phenomena. Their
dynamic behaviors can be modeled by using a particular algebra of operators. A just in time control method
of these graphs based on Residuation theory is proposed.
est solution of a system of ”backward” equations. We Note the presence of inferior integer part to pre-
give a short example before concluding. serve integrity of Eq. (1). In general, a transition q
may have several upstream transitions ({q ∈ •• q})
which implies that its associated counter variable is
given by the min of transition to transition equations
2 RECURRENT EQUATIONS OF obtained for each upstream transition.
TEGM’s Example 1 The counter variable associated with
transition q described in Fig. 1 satisfies the follow-
We assume the reader is familiar with the structure, ing equation:
firing rules, and basic properties of Petri nets, see
(Murata, 1989) for details. xq (t) = a−1 (m + b xq (t − τ )).
Consider a TEGM defined as a valued bipartite
graph given by a five-tuple (P, T, M, m, τ ) in which:
- P represents the finite set of places, T represents b J a
the finite set of transitions; x m x
- a multiplier M is associated with each arc. Given q ' q
q ∈ T and p ∈ P, the multiplier Mpq (respectively,
Mqp ) specifies the weight (in N) of the arc from tran- Figure 1: A simple TEGM.
sition q to place p (respectively, from place p to tran-
sition q) (a zero value for M codes an absence of arc); Example 2 Let us consider TEGM depicted in Fig.
- with each place is associated an initial marking 2. The corresponding counter variables satisfy the
(mp assigns an initial number of tokens (in N) in place following equations:
p) and a holding time (τp gives the minimal time a
token must spend in place p before it can contribute x1 (t) = min(3 + x3 (t − 2), u(t)),
to the enabling of its downstream transitions).
We denote by • q (resp. q • ) the set of places up- x2 (t) = min( 2x1 (t−2)
3 , 6+2x33(t−2) ),
stream (resp. downstream) transition q. Similarly,
x3 (t) = 3x2 (t − 1),
•
y(t) = x (t).
p (resp. p• ) denotes the set of transitions upstream 2
(resp. downstream) place p.
In the following, we assume that TEGM’s func- N
!
tion according to the earliest firing rule: a transition
q fires as soon as all its upstream places {p ∈ • q}
contain enough tokens (Mqp ) having spent at least τp
!
units of time in place p (by convention, the tokens
of the initial marking are present since time −∞, so $
that they are immediately available at time 0). When
the transition q fires, it consumes Mqp tokens in each ! !
upstream place p and produces Mp q tokens in each
downstream place p ∈ q • . O
K !
N
Remark 1 We disregard without loss of generality N
firing times associated with transitions of a discrete
event graph because they can always be transformed
into holding times on places (Baccelli et al., 1992, Figure 2: A TEGM.
§2.5).
Definition 1 (Counter variable) With each transi-
tion is associated a counter variable: xq is an increas-
ing map from Z to Z ∪ {±∞}, t → xq (t) which de- 3 DIOID, OPERATORIAL
notes the cumulated number of firings of transition q REPRESENTATION
up to time t.
Assertion 1 The counter variables of a TEGM (under Let us briefly define dioid and algebraic tools needed
the earliest firing rule) satisfy the following transition to handle the dynamics of TEGM’s, see (Baccelli
to transition equation: et al., 1992) for details.
−1 Definition 2 (Dioid) A dioid (D, ⊕, ⊗) is a semiring
xq (t) = min Mqp (mp + Mpq xq (t − τp )).
p∈• q, q ∈• p in which the addition ⊕ is idempotent (∀a, a ⊕ a =
(1) a). Neutral elements of ⊕ and ⊗ are denoted ε and e
respectively.
On Modeling and Control of Discrete Timed Event Graphs 213
A dioid is commutative when the product ⊗ is com- 1. Operator γ ν represents a shift of ν units in
mutative. Symbol ⊗ is often omitted. counting (ν ∈ Z ∪ {±∞}) and is defined as
Due to idempotency of ⊕, a dioid can be endowed γ ν x(t)= x(t) + ν. It verifies the following rela-
with a natural order relation defined by a b ⇔ b = γ ν ⊕ γ ν = γ min(ν, ν ) ,
a⊕b (the least upper bound of {a,b} is equal to a⊕b). tions:
γ ν ⊗ γ ν = γ ν+ν .
A dioid D is complete if every
subset A of D admits
a least upper bound denoted x∈A x, and if ⊗ left 2. Operator δ τ represents a shift of τ units in
and right distributes over infinite sums. dating (τ ∈ Z ∪ {±∞}) and is defined as
The greatestelement noted
of a complete dioid δ τ x(t)= x(t − τ ). It verifies the following rela-
D is equal to x∈D x. The greatest lower bound of δ τ ⊕ δ τ = δ max(τ, τ ) ,
tions:
every subset
X of a complete dioid always exists and δ τ ⊗ δ τ = δ τ +τ .
is noted x∈X x. 3. Operator µr represents a scaling of factor r and is
defined as µr x(t) = r × x(t) in which r ∈ Q+
Example 3 • The set Z∪{±∞}, endowed with min (r is equal to a ratio of elements in N). It verifies
as ⊕ and usual addition as ⊗, is a complete dioid the following relation: µr ⊕ µr = µmin(r, r ) . Note
noted Zmin with neutral elements ε = +∞, e = 0 that µr ⊗ µr can be different from µ(r×r ) .
and
= −∞. See Fig.3.a-3.c for a graphical interpretation of op-
• Starting from a ’scalar’ dioid D, let us consider p × erators γ, δ, µ respectively. We note that operators
p matrices with entries in D. The sum and product γ, δ are linear while operator µ is only additive. We
of matrices are defined conventionally after the sum have the following properties:
and product of scalars in D: 1. γ ν δ τ = δ τ γ ν , µr δ τ = δ τ µr (commutative proper-
p
(A⊕B)ij = Aij ⊕Bij and (A⊗B)ij = Aik ⊗Bkj . ties),
k=1
The set of square matrices endowed with these two 2. Let a, b ∈ N, we have µa−1 µb = µ(a−1 b) .
operations is also a dioid denoted D p×p . Let us introduce dioid Dmin [[δ]]. First, we denote
Counter variables associated with transitions are by Dmin the (noncommutative) dioid of finite sums
also called signals by analogy with conventional sys- of operators {µr , γ ν } endowed with pointwise min
tem theory. The set of signal is endowed with a kind (⊕) and composition (⊗) operations, with neutral ele-
ments ε = µ+∞ γ +∞ and e = µ1 γ 0 . Thus, an ele-
of module structure, called min-plus semimodule; the k
two associated operations are: ment in Dmin is a map p = i=1 µri γ νi such that
• pointwise minimum of time functions to add sig- ∀t ∈ Z, p (x(t)) = min (ri (νi + x(t))).
1≤i≤k
nals:
Operator δ is considered separately from the other
∀t, (u ⊕ v)(t) = u(t) ⊕ v(t) = min(u(t), v(t)); operators in order to allow the definition of a dioid of
formal power series. With each value of time delay τ
• addition of a constant (∈ Zmin ) to play the role of (i.e., with each operator δ τ ) is associated an element
external product of a signal by a scalar: of Dmin . More formally, we define a map
∀t, ∀λ ∈ Z∪{±∞}, (λ.u)(t) = λ⊗u(t) = λ+u(t). g : Z → Dmin , τ → g(τ ) in which
k τ τ
g(τ ) = i=1 µriτ γ νi .
A modeling method based on operators is used in Such an application can be represented by a formal
(Cohen et al., 1998a), (Cohen et al., 1998b), a similar power series in the indeterminate δ. Let the series
approach is proposed here to model TEGM’s. Let us G(δ) associated with map g defined by:
recall the definition of operator.
G(δ) = g(τ ) δ τ .
Definition 3 (Operator, linear operator) An opera- τ∈ Z
tor is a map from the set of signals to the set of sig-
nals. An operator H is linear if it preserves the min- The set of these formal power series endowed with
plus semimodule structure, i.e., for all signals u, v and the two following operations:
constant λ, F (δ) ⊕ G(δ) : (f ⊕ g)(τ ) = f (τ ) ⊕ g(τ )
= min(f
(τ ), g(τ )),
H(u ⊕ v) = H(u) ⊕ H(v) (additive property), F (δ) ⊗ G(δ) : (f ⊗ g)(τ ) = f (i) ⊗ g(τ − i)
i∈ Z
H(λ ⊗ u) = λ ⊗ H(u) (homogeneity property). = inf (f (i) + g(τ − i)),
i∈ Z
Let us introduce operators γ, δ, µ which are central is a dioid noted Dmin [[δ]] with neutral elements
for the modeling of TEGM’s: ε = µ+∞ γ +∞ δ −∞ and e = µ1 γ 0 δ 0 .
214 S. Hamaci, J.-L. Boimond and S. Lahaye
Elements of Dmin [[δ]] allow modeling the transfer 4 JUST IN TIME CONTROL
between two transitions of a TEGM. A signal x can
be also represented
by a formal series of Dmin [[δ]]
(X(δ) = τ 4.1 Residuation Theory
τ ∈ Z x(τ ) δ ), simply due to the fact
that it is also equal to x ⊗ e (by definition of neu-
tral element e of Dmin ). For example, the graph de- Laws ⊕ and ⊗ of a dioid are not reversible in general.
picted in Fig. 1 is represented by equation Xq (δ) = Nevertheless Residuation is a general notion in lat-
µa−1 γ m δ τ µb Xq (δ) where Xq (δ) and Xq (δ) denote tice theory which allows defining ”pseudo-inverses”
elements of Dmin [[δ]] associated with transitions q and of some isotone maps (f is isotone if a b ⇒ f (a)
q respectively. f (b)). Let us recall some basic results on this theory,
see (Blyth and Janowitz, 1972) for details.
Definition 4 (Residual of map) An isotone map f :
b D → C in which D and C are ordered sets is residu-
ated if there exists an isotone map h : C → D such
n t that f ◦ h IdC and h ◦ f IdD (IdC and IdD are
identity maps on C and D respectively). Map h, also
a noted f , is unique and is called the residual of map
f.
r = b a If f is residuated then ∀y ∈ C, the least upper
bound of subset {x ∈ D | f (x) y} exists and
(a ) (b ) (c )
belongs to this subset. This greatest ”subsolution” is
equal to f (y).
Figure 3: Graphs corresponding to operators γ, δ, µ.
Let D be a complete dioid and consider the isotone
map La : x → a ⊗ x from D into D. The greatest
In the following, matrices or scalars with elements
solution to inequation a ⊗ x b exists and is equal to
in dioid Dmin [[δ]] are denoted by upper case letters,
La (b), also noted ab . Some results related to this map
i.e., X is a shorter notation for X(δ). and used later on are given in the following proposi-
Let us extend the product notation to compose ma- tion.
trices of operators with vectors of signals (with com-
patible dimensions). Given a matrix of operators A Proposition 1 ((Baccelli et al., 1992, §4.4, 4.5.4,
and a vector of signals X with elements in Dmin [[δ]], 4.6))
def Let maps La : D → D, x → a ⊗ x and Lb : D →
we set (AX)i = j Aij (Xj ). D, x → b ⊗ x.
Relatively to residuation of operator µ, let us express Proof We deduce from Eqs. (2) that state X and
that µr = P µr I in which X AX (i)
I : (Z ∪ {±∞})Z → (R ∪ {±∞})Z , output Y are such that
X BU (2i)
and
{x(t)}t∈Z → {x(t)}t∈Z ,
µr : (R ∪ {±∞})Z → (R ∪ {±∞})Z , Y CX
. Moreover, we look for control U such
{x(t)}t∈Z → {r × x(t)}t∈Z Y DU
and P : (R ∪ {±∞})Z → (Z ∪ {±∞})Z , Z CX (3i)
{x(t)}t∈Z → {x(t)}t∈Z . that Y Z which leads to .
Z DU (4i)
Operator I is residuated, its residual is defined by
I : (R ∪ {±∞})Z → (Z ∪ {±∞})Z , The greatest solution to Eq. (3i) is equal to CZ .
{x(t)}t∈Z → {x(t)}t∈Z . Hence we deduce thanks to Prop. 1.2 that the greatest
Operator P is residuated, its residual is defined by solution noted ξ verifying Eqs. (i) and (3i) is equal
P : (Z ∪ {±∞})Z → (R ∪ {±∞})Z , to ξ = Aξ ∧ CZ (sizes of ξ and X are equal). So
{x(t)}t∈Z → {x(t)}t∈Z , we have P = I. the greatest solution verifying Eqs. (2i) and (4i) (in
Residuations of I and P are proven directly from which ξ replaces X) is equal to Bξ ∧ DZ .
Def. 4. Indeed I, P, I and P are isotone, moreover,
∀t ∈ Z, For example let us consider the TEGM depicted in
∀x ∈ (R ∪ {±∞})Z , I I (x(t)) = I(x(t)) x(t) Fig. 2 and modeled by Eqs. (3). Let us give the ex-
and ∀x ∈ (Z ∪ {±∞})Z , I I(x(t)) = x(t) = x(t); pression of the just in time control, which leads to cal-
∀x ∈ (Z ∪ {±∞})Z , P P (x(t)) = P I(x(t)) = culating the greatest solution of the following equa-
x(t) = x(t) and ∀x ∈ (R∪{±∞})Z , P P (x(t)) = tions:
IP (x(t)) = x(t) x(t). ξ2
ξ µ(1/3) δ 2 µ2
Residual of operator µ is classical, it is defined by
1
µr : (R ∪ {±∞})Z → (R ∪ {±∞})Z ,
ξ2 = ξ3
∧ Z ,
{x(t)}t∈Z → { 1r × x(t)}t∈Z . Hence, we can δµ3
deduce the residuation of operator µ. We have
ξ3 ξ 1
∧ ξ 2
µr = (P µr I) = I µr P thanks to Prop. 1.1, i.e.,
3 2 6 2
γ δ µ(1/3) γ δ µ2
∀x ∈ (Z ∪ {±∞})Z , µr x(t) = µr I(x(t)) =
1 U = ξ1 .
r × x(t).
Let us express these equations in usual counter set-
ting. The recursive equations are backwards in time
4.2 Control Problem Statement numbering and are supposed to start at some finite
time, noted tf , which means that system is only con-
Let us consider a TEGM described by Eqs. (2). The trolled until this time. So let us consider the following
just in time control consists in firing input transitions ”initial conditions”:
(u) at the latest so that the firings of output transitions z(t) = z(tf ) and ξ(t) = ξ(tf ), ∀t > tf .
(y) occur at the latest before the desired ones. Let us
define reference input z as the counter of the desired For all t ∈ Z , we have:
outputs: zi (t) = n means that the firing numbered ξ1 (t) 3/2 × ξ2 (t + 2)
n of the output transition yi is desired at the latest at ξ2 (t)
=
max(1/3 × ξ3 (t + 1), z(t)) ,
time t. More formally, the just in time control noted
ξ3 (t) max(ξ1 (t + 2) − 3, 3/2 × ξ2 (t + 2) − 3)
uopt is the greatest solution (with respect to the order
u(t) = ξ1 (t).
relation ) to Eqs. (2) such that y z (with respect
to the usual order relation ≤, uopt is the lowest control Reference input z and output y are represented in
such that y ≥ z). Fig.4, z is such that z(t) = z(tf ), ∀t > tf = 15.
Its expression is deduced from the following result Control u is represented in Fig.5 and is as late as pos-
based on Residuation theory. sible so that desired behavior of output transition is
Proposition 3 Control uopt of TEGM described by satisfied (y z). Moreover, control u is such that
Eqs. (2) is the greatest solution (with respect to the components of ξ are greater than or equal to those of
order relation ) to the following equations: x (x ξ).
ξ = Aξ ∧ CZ ,
U = Bξ ∧ DZ . 5 CONCLUSION
ξ is the greatest solution of the first equation and
corresponds to the latest firings of state transition X Most works on dioid deal with discrete timed event
(ξ X). graphs without multipliers. We aim at showing here
216 S. Hamaci, J.-L. Boimond and S. Lahaye
Cottenceau, B., Hardouin, L., Boimond, J.-L., and Ferrier,
J.-L. (2001). ”Model Reference Control for Timed
Event Graphs in Dioids” . utomatica, 37:1451– 1458.
Menguy, E. (1997). ”Contribution à la commande des
systèmes linéaires dans les dioı̈des”. PhD thesis, Uni-
versité d ’Angers, Angers, France.
Munier, A. (1993). Régime asymptotique optimal d’un
graphe d’événements temporisé généralisé : Applica-
Figure 4: Output y (thin line) and reference input z (dotted tion à un problème d’assemblage. In IPO- PII,
line). volume 27(5), pages 487 – 513.
Murata, T. (1989). ”Petri Nets: Properties, Analysis and
Applications” . I Proceedings, 77(4):541–580.
Nakamura, M. and Silva, M. (1999). Cycle Time Compu-
tation in Deterministically Timed Weighted Marked
Graphs. In I - T , pages 1037 –1046.
Figure 5: Control u.
MODEL PREDICTIVE CONTROL FOR HYBRID SYSTEMS
UNDER A STATE PARTITION BASED MLD APPROACH
(SPMLD)
Keywords: Hybrid dynamical systems, Mixed Logical Dynamical systems (MLD), Piecewise Affine systems (PWA),
Model Predictive Control (MPC)
Abstract This paper presents the State Partition based Mixed Logical Dynamical (SPMLD) formalism as a new
modeling technique for a class of discrete-time hybrid systems, where the system is defined by different
modes with continuous and logical control inputs and state variables, each model subject to linear
constraints. The reformulation of the predictive strategy for hybrid systems under the SPMLD approach is
then developed. This technique enables to considerably reduce the computation time (with respect to the
classical MPC approaches for PWA and MLD models), as a positive feature for real time implementation.
This strategy is applied in simulation to the control of a three tanks benchmark.
new modeling technique, called State Partition based as described in Figure 1. All matrices appearing in
MLD approach (SPMLD) formalism, combining the (1) can be obtained through the specification
PWA and MLD models. The complexity of this language HYSDEL (Hybrid System Description
formalism is compared to that obtained with the Language), see (Torrisi et al ., 2000).
usual PWA and MLD forms, which can also model
this class of hybrid systems as well. 2.2 Piecewise Affine Model
The paper is organized as follows. Section 2
presents a short description of the PWA and MLD
hybrid systems. General consideration about model Another framework for discrete time hybrid systems
predictive control (MPC) and its classical is the PWA model (Sontag, 1981), defined as
application to PWA and MLD systems are °x k 1 A i x k B i u k f i ½° ªx k º
summarized in Section 3. Section 4 develops the Si : ® ¾ , for: «u » F i (2)
State Partition based MLD approach (SPMLD) and °̄y k C i x k g i °¿ ¬ k¼
examines the application of MPC to hybrid systems
under this formalism. Section 5 gives an application where ^F i `is 1 is the polyhedral partition of the state
of this strategy to water level control of a three tanks and input spaces (s being the number of subsystems
benchmark. Section 6 gives final conclusions. within the partition). Each F i is given by
°ª x k º i ªx k º i½
°
Fi ®« » Q « » d q ¾ (3)
°̄¬u k ¼ ¬u k ¼ °¿
2 HYBRID SYSTEMS MODELING
where x k , u k , y k denote the state, input and output
2.1 Mixed Logical Dynamical Model vector respectively at instant k . Each subsystem S i
defined by the 7-uple A i , B i , C i , f i , g i , Q i , q i ,
i 1,2, , s is a component of the PWA system
The MLD model appears as a suitable formalism for
various classes of hybrid systems, like linear hybrid (2). A i nun , B i num , C i pun , Q i pi n m
or constrained linear systems. It describes the sys- and f i , g i , q i are suitable constant vectors or
matrices, where n , m , p are respectively the
tems by linear dynamic equations subject to linear
inequalities involving real and integer variables, number of states, inputs, outputs, and pi is the
under the form (Bemporad and Morari, 1999) number of hyperplanes defining the i -polyhedral. In
this formalism, a logical control input is considered
x k 1 Ax k B1u k B 2 į k B 3 z k by developing an affine model for each input value
(1/0), defining linear inequality constraints linking
yk Cx k D1u k D 2 į k D 3 z k (1)
the model with the relevant input value.
E 2 į k E 3 z k d E1u k E 4 x k E 5 It has been shown in (Bemporad et al ., 2000),
where that MLD and PWA models are equivalent, which
enables transformation from one model to the other.
§xc · §uc ·
x ¨¨ ¸¸ nc u ^0,1`nl , u ¨¨ ¸¸ mc u ^0,1`ml , A MLD model can be transferred to a PWA model
© xl ¹ © ul ¹ with the number of subsystems inside the polyhedral
partition equal to all possible combination of all the
§yc ·
y ¨¨ ¸¸ pc u ^0,1` pl , į ^0,1`rl , z rc integer variables of the MLD model (Bemporad et
© yl ¹ al., 2000) (a technique for avoiding empty region is
presented in (Bemporad, 2003))
are respectively the vectors of continuous and binary
states of the system, of continuous and binary s 2 nl ml rl (4)
(on/off) control inputs, of output signals, of auxiliary
binary and continuous variables.
through an on-line optimization process, which The number of binary optimization variables is
maximizes the tracking performance while satisfying L N ml rl . In the worst case, the maximum
constraints. Only the first value of this optimal number of solved QP problems is
sequence is applied to the plant according to the
‘receding’ horizon strategy (Dumur and Boucher, No of QPs 2 L 1 1 (7)
1998).
So the main drawback of this MLD formalism
Considering the particular class of hybrid
remains the computational burden related to the
systems previously described, implementing MPC
complexity of the derived Mixed Integer Quadratic
leads to a problem including at each prediction step
Programming (MIQPs) problems. Indeed MIQPs
the states vector, the inputs vector (both continuous
problems are classified as NP-complete, so that in
and discrete), the dynamic equation and linear
the worst case, the optimization time grows expo-
constraints, for which a quadratic cost function has
nentially with the problem size, even if branch and
to be optimized. Two classical approaches exist for
bounds methods (B&B) may reduce this solution
solving this optimization problem, the Branch and
time (Fletcher and Leyffer, 1995).
Bound technique that can be used with the MLD
formalism and the enumeration of all possible
logical system combinations at each prediction time 3.2 Model Predictive Control for the
corresponding to all particular scenarios of logical PWA Systems
inputs and modes used with the PWA formalism.
Considering the PWA system under the form (2),
3.1 Model Predictive Control for the assuming that the current state x k is known the
MLD Systems model predictive control requires solving at each
time step (Pena et al., 2003).
For a MLD system of the form (1), the following N
2
model predictive control problem is considered. Let min J (u kk N 1 , x k ) ¦ qii y k i / k w k i
k be the current time, x k the current state, u kk N 1 i 1
(x e , u e ) an equilibrium pair or a reference N 1
2
trajectory value, k N the final time, find ¦ rii u k i (8)
u kk N 1 u k u k N 1 the sequence which i 0
moves the state from x k to x e and minimizes s.t. : u min d u k i d u max
N 1 where N is the prediction horizon, w k i is the
2
min J (u kk N 1 , x k ) ¦ u k i u e output reference, and y k i / k denotes the predicted
u kk N 1 i 0
Q1
output vector at time k i , obtained by applying the
į k i / k į e
2
z k i / k z e
2
(5) input sequence u kk N 1 u k u k N 1 to the
Q2 Q3 system starting from the current state x k . qii , rii are
x k i 1 / k x e
2
y k i / k y e
2 the elements of Q, R weighting diagonal matrices.
Q4 Q5 In order to solve this equation the model applied
at each instant has to be determined and all potential
subject to (1), where N is the prediction horizon, sequences of subsystems I ^I k , I k 1 , , I k N 1`
į e , z e are the auxiliary variables of the equilibrium have to be examined, where I k i is one sub-region
point or the reference trajectory value, calculated by among the s subsystems at prediction time i for
solving a MILP problem for the inequality equation i 1,2, , N 1 . As for each model the value of the
of (1). x k i / k denotes the predicted state vector at logical variable is fixed, the MPC problem is solved
time k i , obtained by applying the input sequence by a QP for each potential sequence. As the current
u kk N 1 to model (1) starting from the current state state x k is known, the starting region according to
x k (same for the other input and output variables), the state partition is identified. But the initial sub-
Q i Q i' ! 0 , for i 1,4 , and Q i Q i' t 0 , for region related to the current input control is not
i 2,3,5 . known as it appears in the domain definition (3).
The optimization procedure of (5) leads to MIQP Similarly, the next steps subsystems are also
problems with the following optimization vector unknown, depending on the applied control
sequence. In general, all potential sequences of
Ȥ [uk , , uk N 1, įk , , įk
(6) subsystems I have to be examined, which increases
T the computation burden. If no constraints are
N 1, z k , , z k N 1]
considered, the number of possible sequences for a
prediction horizon N is m p s N 1 , where m p is the
number of all possible sub-regions at instant k
220 J. Thomas et al.
according to the input space partition. In order to A i , B1i 3 , C i , D1i 3 , E1i 5 are the matrices of the ith
solve the MPC problem of (8), the number of MLD model defining the dynamics into that sub-
quadratic programming problems to be solved is region. Q i , q i constraints has to be included in (12).
No QPs m p s N 1 (9)
4.2 Reformulation of the MPC Solution
At this stage, the MPC technique developed for the
4 MPC FOR STATE PARTITION PWA formalism must be rewritten to fit the new
SPMLD model. Consider the initial subsystem I k
BASED MLD (SPMLD)
FORMALISM x k 1 A k x k B1k u k B 2k į k B 3k z k
(13)
yk C k x k D1k u k D k2 į k D 3k z k
4.1 The SPMLD Formalism
with E1k u k E 3k z k d E k4 x k E 5k E 2k į k
The SPMLD model is a mixed approach where in
each region of the feasible space a simple MLD Where A k will now denote for simplification
model is developed. Starting from the MLD model, purposes the A i matrix of model i at instant k (the
the auxiliary binary variables are divided into two same notations are used for B1k3 , C k , D1k3 , E1k5 ).
groups į >į1 į 2 @T . Where į 2 ^0,1`rl 2 is For a given sequence over the prediction horizon N
chosen in order to include the G variables that are i.e. for I ^I k , I k 1 , , I k N 1 ` , the system is
not directly depending on the state variables (the recursively defined as follows
inequalities that define G variables are not x Fx x k H x u Px į G x z
depending on x ), and į1 ^0,1`rl1 depending on x . (14)
This partition will be further justified. The SPMLD y Fy x k H y u Py į G y z
model is then developed by giving į1 a constant
value: for each possible combination of į1 a sub- Where x >x k 1 x k 2 x k N @T ,
region is defined with the corresponding Q i , q i u >u k u k N 1 @T , y >y k y k N 1 @T
constraints as in (3). As some logical combinations
may not be feasible, the number of sub-regions of z >z k z k N 1 @T , į >į k į k N 1 @T
the polyhedral partition is ª Ak º ª Ck º
« k 1 k » « k 1 k »
rl1 « A A », F « C A »
sd2 (10) Fx
« » y « »
Consequently, this model requires a smaller number « k N 1 k
» « k N 1 k N 2 k
»
«¬ A A »¼ «¬C A A »¼
of sub-regions than the classical PWA model for the
same modeled system. Each sub-region has its own ª B 1k 0 0 º
« »
dynamic described in the same way as (1) but with a Hx
« A k 1 k
B1 B 1k 1 0 »
« »
simpler MLD model that represents the system « »
behavior in this sub-region and includes only the «¬ A k N 1 A k 1 B 1k A k N 1 A k 2 B 1k 1 B 1k N 1 »¼
active variables in this sub-region. This partition ª B 3k 0 0 º
always implies a reduction in the size of z and/or « k 1 k
»
u . For example, some control variables may not be « A B3 B 3k 1 0 »
Gx «
active in sub-regions and the auxiliary continuous « »»
variables z depending on the į1 variables may « A k N 1 A k 1B 3k A k N 1 A k 2 B 3k 1 B 3k N 1 »¼
¬
disappear or become fixed as į1 is fixed where: ª B 2k 0 º 0
« »
0 if G 0 «
k 1 k
A B2 B 2k 1 » 0
z G f ( x) o z ® (11) Px
« »
¯ f ( x) if G 1 « k N 1 »
«¬ A A k 1B k2 A k N 1 A k 2 B 2k 1 B 2k N 1 »¼
Consequently, simplified sub-regions models can be
ª D1k 0 0 º
derived, an example of this simplification is given in « »
« Ck 1B1k D1k 1 0 »
the application section. Hy
« »
« k N 1 k N 2 »
The system is thus globally modeled as ¬«C A A k 1B1k Ck N 1A k N 2 A k 2B1k 1 D1k N 1 ¼»
ª
«
D k2 0 º
»
0 The number of binary optimization variables, with
k 1 k
« C B2 D k2 1 » 0 į1 known and constant, is given by the relation
Py
« »
« k N 1 k N 2 » N 1
¬«C A A k 1B k2 C k N 1 k N 2
A k 2 k 1
A B2 k N 1
D2 ¼»
L ¦ mlji rli2 j , j ^1,2, , s` (17)
Then the MPC optimization problem (8) leads to the i 0
following cost function
Where mlj , rli2 j
i
are the number of modeled logical
ªu º ªu º control and į 2 elements respectively in the jth sub-
region at prediction time i .
J >u z @
į H o «« z »» 2f o «« z »» g o (15) Therefore, if the sequence I is fixed, the
«¬ į »¼ «¬ į »¼ problem can be solved minimizing (15) subject to
the constraints of (16). But, as only I k is known
ªH T Q H R H T Q G (where x(k ) is considered as known, and į1 (k )
y y H T QP y º
« y y y » depends on x(k ) ), all possible sequences as in
« T T » Figure 2 have to be solved. So the number of
where H o « G y QH y G QG y G T QP y » N 1
y y possible sequences is s . The optimal solution is
« T T » N 1
«¬ P Q H y P QG y P T QP y » provided by the resolution of these s MIQPs. In
y y y ¼ order to find the solution more quickly, these
T problems are not solved independently and the
ª x Tk F Ty Q H y w T Q H y º
« T T » optimal value of the criterion provided by the solved
fo «x k F y Q G y w T Q G y » MIQP is used to bind the result of the others. It can
« T T T » then be used by the B&B algorithm to cut branches.
«¬ x k F y Q P y w Q P y »¼ >I k ,*,*@
Ik
go [x Tk F Ty Q F y x k T
2w QF y x k w Q w ] T
1 2 s >I k , I k 1 ,*@
R diag>rii @, R RT 0
Q diag>qii @, Q QT 0 1 2 s 1 2 s 1 2 s >I k , I k 1 , I k 2 @
Inside each sub-region, a simple MLD model is 5.3 Comparison of the Approaches
developed, that takes into account only the system
dynamics in this sub-region. In some sub-regions a
reduction in the size of u and z appears; for As a comparison purpose between the SPMLD
example in the sub-region where į1 ' >0 0 0@ it model, the classical MLD model and the classical
clearly appears that the two valves V1 and V2 of the PWA model strategies, the same previous level
specification has been considered with N 2 . The
input vector are not in progress, as the liquid level in
MLD model described in (Bemporad et al., 1999)
this region is always less than the valves level.
has been used for the three tanks modeled by (20);
Consequently, the continuous auxiliary variables
this MLD model transfers to a PWA model with
^z 0i `i 1,2,3 and ^z i `i 1,2 corresponding to the flows s 128 subsystems (with 28 empty regions). The
that pass through the upper pipes are useless. It
classical PWA model has not been developed as it
results from this a simple model with:
needs 100 sub-models and is in fact not required to
x [h1 h2 h3 ] ' , u [Q1 Q2 V13 V23] ' compare complexity. For that comparison, looking
(22) at the number of QPs that have to be solved during
z1 [ z13 z23] '
optimization is sufficient.
Let us consider now the following specification: Table 1 illustrates for N 2 the total time
starting from zero levels (the three tanks being required to reach the specification level, the total
completely empty), the objective of the control number of QPs solved, and the maximum time and
strategy is to reach the liquid levels h1 0.5 m , maximum QPs to find the optimized solution at each
h2 0.5 m and h3 0.1 m . The MPC technique for iteration. It can be seen that the difference between
a SPMLD model has been implemented in the SPMLD technique and the other classical
simulation to reach the level specification with techniques is quite large, the SPMLD model
N 2 . The results are presented on Figure 5 for the allowing real time implementation and avoiding
tanks levels and on Figure 6 for the control signals. exponential explosion of the algorithm (the sampling
Level of the frist tank
0.2
Level of the third tank time of the three tanks benchmark is 10 s.). All data
0.6 0.15 given above were obtained using the MIQP Matlab
0.4 0.1 code (Bemporad and Mignone, 2000), on a 1.8 MHz
0.2 0.05 PC with 256 Mo of ram. Same comparisons are
0
10 20 30
0
0 10 20 30
presented with N 3 in table 2.
Level of the second tank The level of three tanks
0.8 0.8
Table 1. Comparison of performances obtained with the
0.6 0.6
SPMLD model, the classical MLD model and the classical
0.4 0.4
PWA model for N 2 .
0.2 0.2
No of Max. Max.
0 0 Total
0 10 20
Sampling instants
30 0 10 20
Sampling instants
30
Approach QPs No. QPs time /
time
solved / step step
Figure 5: Water levels in the three tanks.
Classical
x 10
-4 -4 8 800 1 600 * *
2
Input Q1
2
x 10 Input Q2
PWA
The flow (m3/5)
Classical
0 0 11 130 2 089 822.97 s 138.97 s
MLD
0 10 20 30 0 10 20 30
1 SPMLD 832 218 15.28 s 3.90 s
The valve position
1 (open) - 0 (close)
1
V1 V2
0.5 0.5
0
0 10 20 30
0
0 10 20 30
Table 2. Comparison of performances obtained with the
1 1
V23
SPMLD, MLD and PWA models for N 3.
V13
This table shows that no real time implementation is factors according to the priority of each region.
possible with N 3 for the SPMLD form, although Future work may consider examining į variables
the maximum time per iteration is much smaller in that depends on the control inputs, by partitioning
this case. But it must be noticed that the results in the feasible region according to those variables also
table 1 and 2 for the SPMLD model are achieved instead of leaving them free included in the
without applying techniques described in section optimization vector.
4.4. For example using a prediction horizon N 3
and a control horizon N u 1 leads to the following
results enabling real time implementation
REFERENCES
No QPs solved = 1224, Max. No QPs/step = 326
Bemporad, A., 2003. “A Recursive Algorithm for
Total optimization time = 29.24 s., Max. time/step = 7.92 s.
Converting Mixed Logical Dynamical Systems into an
The technique of MPC for SPMLD systems has Equivalent Piecewise Affine Form”, IEEE Trans.
been examined also with a simple automata, where Autom. Contr.
automata of Figure 7 have been added to V1 and V2 Bemporad, A., Ferrari-Trecate G., and Morari M., 2000.
valves of the three tanks benchmark. We assumed Observability and controllability of piecewise affine
for a simplification purpose that G 03 0 i.e. the and hybrid systems. IEEE Trans. Automatic Control,
level in the third tank is always behind the hv level. 45(10): 1864–1876.
Bemporad, A., and Mignone, D., 2000.: Miqp.m: A
close
a b Matlab function for solving mixed integer quadratic
a close programs. Technical Report.
V1
Wait
V2 Bemporad, A., Mignone, D. and Morari, M., 1999.
open open
Moving horizon estimation for hybrid systems and
close b fault detection. In Proceedings of the American
Control Conference, San Diego.
Figure 7: Added Automata to the three tanks benchmark. Bemporad, A. and Morari, M., march 1999. Control of
The automata of Figure 7 can be presented as follows systems integrating logical, dynamics, and constraints.
Automatica, 35(3): 407-427.
V1open ( wait & a) (V1open & a ) Branicky, M.S., Borkar, V.S. and Mitter, S.K., January
1998. A unified framework for hybrid control: model
V 2open ( wait & b) (V 2open & b) (23) and optimal control theory. IEEE Transaction. on
Wait close Automatic. Control, 43(1): 31-45.
Dolanc, G., Juricic D., Rakar A., Petrovcic J. and Vrancic,
The SPMLD technique succeeds to reduce the total D., 1998. Three-tank Benchmark Test. Technical
optimization time to arrive to the specifications, Report Copernicus Project Report CT94-02337.
from 5691.4 s for the classical MLD technique to a Dumur, D. and Boucher, P.,1998. A Review Introduction
173.5 s, solving 3990 QPs instead of 60468 QPs to Linear GPC and Applications. Journal A, 39(4),
where for each sequence I, į variables as well as pp. 21-35.
the logical control variables that control the Fletcher, R. and Leyffer, S., 1995. Numerical experience
automata are known. with lower bounds for MIQP branch and bound.
Technical report, Dept. of Mathematics, University of
Dundee, Scotland.
6 CONCLUSION Kerrigan, E., 2000. Robust Constraint Satisfaction:
Invariant sets and predictive control. PhD thesis
This paper presents the SPMLD formalism. It is University of Cambridge.
developed by partitioning the feasible region Pena, M., Camacho, E. F. and Pinon, S., 2003. Hybrid
according to the auxiliary binary elements į1 of the systems for solving model predictive control of
MLD model that depends on the state variables. A piecewise affine system. IFAC conference, Hybrid
reformulation of the MPC strategy for this system analysis and design Saint Malo, France.
formalism has been presented. It is shown that the Sontag, E.D., April 1981: Nonlinear regulation: the
SPMLD model successfully improves the piecewise linear approach. IEEE Transaction. on
computational problem of the mixed Logical Automatic. Control, 26(2): 346-358.
Dynamical (MLD) model and Piecewise Affine Torrisi, F., Bemporad, A. and Mignone, D., 2000. Hysdel
(PWA) model. Moreover, the partition into several – a tool for generating hybrid models. Technical
sub-regions enables to define particular weighting report, AUT00-03, Automatic control laboratory, ETH
Zuerich.
EFFICIENT SYSTEM IDENTIFICATION FOR MODEL
PREDICTIVE CONTROL WITH THE ISIAC SOFTWARE
Paolino Tona
Institut Français du Pétrole
1 & 4, avenue de Bois-Préau, 92852 Rueil-Malmaison Cedex - France
paolino.tona@ifp.fr
Jean-Marc Bader
Axens
BP 50802 - 89, boulevard Franklin Roosevelt, 92508 Rueil-Malmaison Cedex - France
jean-marc.bader@axens.net
Abstract: ISIAC (as Industrial System Identification for Advanced Control) is a new software package geared to meet
the requirements of system identification for model predictive control and the needs of practicing advanced
process control (APC) engineers. It has been designed to naturally lead the user through the different steps of
system identification, from experiment planning to ready-to-use models. Each phase can be performed with
minimal user intervention and maximum speed, yet the user has every freedom to experiment with the many
options available. The underlying estimation approaches, based on high-order ARX estimation followed by
model reduction, and on subspace methods, have been selected for their capacity to treat the large dimensional
problems commonly found in system identification for process control, and to produce fast and robust results.
Models describing parts of a larger system can be combined into a composite model describing the whole
system. This gives the user the flexibility to handle complex model predictive control configurations, such as
schemes involving intermediate process variables.
ways). This can be assimilated (Ljung, 2003) to the data records and do not carry any structure infor-
estimation of a high-order ARX model, which is then mation. They are mainly used for preliminary ap-
reduced using weighted Hankel-norm model reduc- praisal and processing of available data sets. IO
tion. The three most well-known algorithms, CVA, data are defined by selecting subsets of fields of raw
N4SID and MOESP, can be studied under an uni- data objects, and can be used for system identifica-
fied framework (Van Overschee and DeMoor, 1996), tion. Notice that data objects in ISIAC may include
where each algorithm stems from a different choice measurements coming from different experiments
of weightings in the model reduction part. Subspace (multi-batch data).
identification methods can handle the large dimen- • Models include all the dynamic models estimated
sional problems commonly found in system identifi- or defined during a session. ISIAC handles
cation for process control, producing (very) fast and discrete-time state-space, transfer function (ma-
robust results. However, it must be pointed out that trix), FIR, ARX and general polynomial models.
their estimates are generally less accurate than those State-space and transfer function models are also
from prediction error methods and that standard SIM available in continuous time. Simple process mod-
algorithms are biased under closed-loop conditions. els, such as first-order plus time delay (FOPTD)
Even though a lower accuracy is to be expected, it models in gain-time constant-delay form, are han-
is important to have a viable alternative to the two- dled as specializations of transfer function models.
step method. This is why, we have implemented in
ISIAC two estimation procedures based on subspace
algorithms taken from control and systems library
SLICOT (Benner et al., 1999):
• a combined method, where MOESP is used to es-
timate A and C and N4SID is used to estimate B
and D;
• a simulation method, where MOESP is used to es-
timate A and C and linear regression is used to es-
timate B and D.
The second method is usually more accurate (though
a little slower) and is presented as the default choice.
High-level design parameters for these two method-
ologies are the final model order n, and the prediction
horizon r used in the model reduction step. ISIAC
can select both parameters automatically: the latter
Figure 2: ISIAC GUI.
using a modified AIC criterion based on a high-order
ARX estimation, the former using a combined crite-
This structure provide a powerful and flexible sup-
rion taking into account the relative importance of sin-
port to the user:
gular values and errors on simulated outputs (output
errors). • no restriction is put on the number of models and
data objects, nor on their sizes;
3.2 General Structure and Layout • system identification of the whole process can be
decomposed in smaller problems whose results can
be later recombined;
Fig. 2 shows ISIAC graphical user interface (GUI).
The tree on the left (the session tree) highlights the • it is straightforward to keep track of all the work
relationships between the different elements the user done during an identification session.
deals with during a typical system identification ses- Three special windows are dedicated to definition
sion. and basic handling of system, data and model objects.
The Input Design Window is intended to help the user
• A System object representing the whole process the
to design appropriate test signals for system identifi-
user is working on. It includes a list of process
cation. More advanced operations on data and mod-
Variables and a list of Subsystems, which can be
els are available in the Data Processing Window and
used to store partial measurements and dynamic
in the Model Processing Window. The most impor-
models relating groups of input and output vari-
tant window is certainly the Data To Models Window,
ables.
where model estimation and validation take place.
• Data objects in two flavors: Raw Data and IO Last, the ISIAC To MVAC Window hosts the graphi-
Data. The former are defined from raw process cal control model builder.
Efficient System Identification For Model Predictive Control 229
ISIAC GUI implements a multi-document inter- domain and in frequency domain, are extremely flex-
face (MDI) approach: it is possible to have several ible. An unlimited number of models (not necessarily
windows opened at once in the child window area. sharing the same inputs or outputs) can be compared
Furthermore, thanks to drag-and-drop operations and on the same chart, and an unlimited number of chart-
pop-up menus, the same action (say, plotting a model ing windows can be opened at once.
time response) is accessible from different locations. Advanced model processing (in the Model Process-
This means that, although ISIAC layout clearly under- ing Window) includes model reduction and model
lines the different steps of the identification process, building tools. Time domain techniques (step re-
the user is never stuck into a fixed workflow. sponse fitting of simple process models, see Fig. 3) or
frequency weighted model reduction techniques are
available. Model building can be performed through
simple connections (cascade, parallel) or through a
4 WORKING WITH ISIAC full-fledged graphical model builder which closely re-
sembles the one described in section 4.5.
4.1 Experiment Design
Whenever the APC engineer has the freedom to
choose other input moves than classical step-testing
(not often, unfortunately), ISIAC offers support to
generate test signals which are more likely to yield
informative data. The Input Design Window lets the
user design signals such as pseudo-random binary sig-
nals (PRBS), using few high level parameters.
also possible to estimate FIR models or general ARX intermediate process variables are to be included. In
models. figure 5, which depicts part of the control configura-
Beside the comparison between measured outputs tion for a unit involving cascaded reactors, the vari-
and simulated outputs (as in Fig. 4), model validation able denoted S HDT 1 is one of those variables.
can be performed by checking the confidence bounds
and visualizing and comparing time and frequency re-
sponses.
5 AN INDUSTRIAL
APPLICATION: MODEL
PREDICTIVE CONTROL OF A
MTBE UNIT
To prove the usefulness of ISIAC in an industrial con-
text, we examine some aspects of a model predictive
control project, carried out by IFP affiliate Axens on
a petrochemical process unit.
The process under consideration is an etherifica-
tion unit producing methyl-tert-butyl ether (MTBE),
from a reaction between isobutene (IB) and methanol
Figure 4: Model validation through simulation (simulated (MeOH).
outputs in white).
Abstract: In this paper we introduce a method to extract the bar-space patterns directly from the gray-level two-
dimensional barcode images, which employs the location and the distance between extreme points of
profiles scanned from the barcode image. This algorithm proves to be very robust from the high
convolutional distortion environments such as defocussing and warping, even under badly illuminating
condition. The proposed algorithm shows excellent performance and is implemented in real-time.
233
J. Braz et al. (eds.), Informatics in Control, Automation and Robotics I, 233–237.
© 2006 Springer. Printed in the Netherlands.
234 H.L. Hahn and J.G. Jung
corresponding to the start patterns, which are from the data region and are decoded to obtain the
extracted from the clear barcode image and the corresponding codewords. The problem is how we
highly blurred, high-density one respectively, get bar-space pattern from the barcode data region.
together with their profiles. Although the start Usually, image thresholding is employed for this
patterns shown in Fig. 2-(a) can be easily identified, goal. Many researchers developed the image
it might not be easy to detect them in case of Fig. 2- thresholding algorithms,most of which reported
(b) because the width of one module is less than 1.5 to date are based on edge information or
pixels and the dynamic range of the profile at the histogram analysis using information-theoretic
region corresponding to narrow bar or space is
severely reduced due to convolution with the point
spread function of the camera. After the start pattern
and/or stop pattern are detected, line equations
corresponding to them are estimated through line
fitting to localize left and/or right row indicators.
Secondly, the header information such as the
number of rows and columns, error correction level,
row number, error correction level and the width of
module, etc. are obtained by extracting and decoding (a)
the left and/or right row indicators (Hahn, 2002).
(b)
can be easily measured, it might not be a simple where the break region means the region whose
matter to measure them in case of Fig. 5-(b) and the profile is horizontal. The regions marked as
obvious thing is single global threshold can not even rectangular box in Fig. 6-(d) represent the break
discriminate them. Fig. 6 shows the intensity profile regions. Finally, the break regions are partitioned
of the codeword ( 824 : 1, 5, 1, 2, 1, 1, 1, 5 ) according to the following rules. Usually, the edges
comprised of four bars and four spaces, together between bars and spaces lie in the break regions. In
with their widths and classification results. Fig. 7, we define 'a = x2 – x1 and 'b = x3 – x2.
As shown in Fig. 6-(a), it is impossible to select If 'a is greater than 'b , the more part of the break
the single optimal threshold for detecting the widths region belongs to the space region, vice versa. The
of four bars and four spaces because the pixel values ratios are obtained by experimenting with several
change dynamically according to the widths of bars hundreds of bar-space patterns, extracted from the
and spaces. various barcode images scanned under varying
conditions. Thus, the widths of bars and spaces are
represented as real values rather than integer ones to
measure the bar-space patterns as correctly as
possible.
4 EXPERIMENTAL RESULTS
Figure 4: Warping the data region of Fig. 2 using Affine The “edge to similar edge” estimation method is
transform. employed to check whether the detected bar-space
pattern is correct. The detected bar-space patterns
The widths and peaks of narrow bars or spaces can be converted to the encoded codewords by using
corresponding to 1 or 2 module values get smaller the lookup table specified in (AIM USA, 1994). The
compared to the wide ones even under the same codewords are checked whether there are any errors
illumination, due to convolution with the point through Reed-Solomon error correction coding
spread function. The proposed algorithm employs algorithm. Given the error-corrected codewords,
the high curvature points and local extreme points to they are decoded in the manner as specified in (AIM
extract four bars and four spaces from the warped USA, 1994), to get the message.
barcode image. The points of high curvature on the In order to verify our algorithm , we benchmark-
waveform represent the midpoints of the bar or tested our decoder with the test barcode images. Our
space, whereas the local extreme points are database is composed of 153 barcode images, which
estimates of their centers. were taken under various conditions. In other words,
they are rotated, outfocussed, warped or even
severely damaged by cutting off some region, as
shown in Fig. 8. Almost of them are taken under
badly illuminated conditions. At first, 2,000 pieces
of profiles corresponding to the bar-space patterns
are extracted from our database. Each profile is
tested to extract the bar-space pattern and decode the
corresponding codeword. Among them, 1,466
profiles are detected correctly. As an example, the
image of Fig. 8-(a) is obtained by hardcopying the
Figure 5: Segmented bar-space patterns and their barcode image several times, whose upper part is
corresponding profiles obtained from (a) the focussed severely degraded. When it is applied to our decoder,
image, (b) the outfocussed image. 42 erasures and 32 errors are detected among total
329 codewords, which can be decoded correctly
At first, our algorithm localizes four local minimum through Reed-Solomon error correction algorithm.
points and four local maximum points by scanning Fig. 8-(b) is an image reassembled but aligned
the profile of each bar-space pattern, as shown in Fig. incorrectly after tearing it into two parts. Fig. 8-(c) is
6-(b). The local minimum point whose value is large obtained from Fig. 8-(a) by cutting off the right part
compared to the other minimum points or the of it and Fig. 8-(d) are taken outfocussed under too
maximum point smaller than the adjacent ones are bright illuminating condition. Our algorithm
compensated to increase their dynamic range as decoded 138 images correctly among total 153
depicted in Fig. 6-(c). Then, the break regions are images. This result is expected to be good for
detected between the compensated extreme points,
236 H.L. Hahn and J.G. Jung
5 CONCLUSION
We have proposed algorithms to decode two-
dimensional barcode symbology PDF417 and
implemented a barcode reader in real-time using
ARM core. Our decoder employs a method to
extract the bar-space patterns directly from the
(d )
profiles of the gray-level barcode image. Our
algorithm shows performance improved further than Figure 6: The intensity profiles of the codeword comprised
the method of extracting the bar-space patterns after of four bars and four spaces
binarizing the barcode image, when we experiment
with the test images of variable resolution and error
correction levels. In order to improve the
performance further, it is needed to extract bar-space
patterns more accurately from the barcode image,
which might be defocused or taken under badly
illuminating conditions.
(a)
(b )
REFERENCES
AIM USA, 1994. Uniform Symbology Specification
PDF417.
(c )
Improving Performance of the Decoder 237
Eugene Joseph and Theo Pavlidis, 1991. Waveform J. R. Parker, 1991. Gray level thresholding in badly
Recognition with Application to Barcodes, Symbol illuminated images, IEEE Trans. on PAMI, vol. 13,
Technologies Inc. 116 Wilbur Place, Bohemia, NY. No. 8.
R. C. Gonzalez, R.E.Woods, 1993. The book, Digital T. Pavlidis, J. Swartz, Y. P. Wang, 1992. Information
Image Processing, Addison Wesley. encoding with two-dimensional barcodes, IEEE
Hee Il Hahn, Joung Goo Joung, 2002. Implementation of Computer.
Algorithm to Decode Two-Dimensional Barcode PDF-
417, 6th International Conference on Signal
Processing ICSP’02.
CONTEXT IN ROBOTIC VISION
Control for real-time adaptation
Paolo Lombardi
Istituto Trentino di Cultura ITC-irst, via Sommarive 18, Trento, Italy
(formerly with Dip. Informatica e Sistemistica, Università di Pavia)
Email:lombardi@itc.it
Virginio Cantoni
Dip. Informatica e Sistemistica, Università di Pavia, via Ferrata 1, Pavia, Italy
Email:virginio.cantoni@unipv.it
Bertrand Zavidovique
Institut d’Electronique Fondamentale, Université de Paris Sud-11, bât. 220, Campus d’Orsay, Orsay, France
Email: zavido@ief.u-psud.fr
Keywords: computer vision, contextual adaptation, context definition, Bayesian opportunistic switching.
Abstract: Nowadays, the computer vision community conducts an effort to produce canny systems able to tackle
unconstrained environments. However, the information contained in images is so massive that fast and
reliable knowledge extraction is impossible without restricting the range of expected meaningful signals.
Inserting a priori knowledge on the operative “context” and adding expectations on object appearances are
recognized today as a feasible solution to the problem. This paper attempts to define “context” in robotic
vision by introducing a summarizing formalization of previous contributions by multiple authors. Starting
from this formalization, we analyze one possible solution to introduce context-dependency in vision: an
opportunistic switching strategy that selects the best fitted scenario among a set of pre-compiled
configurations. We provide a theoretical framework for “context switching” named Context Commutation,
grounded on Bayesian theory. Finally, we describe a sample application of the above ideas to improve video
surveillance systems based on background subtraction methods.
239
J. Braz et al. (eds.), Informatics in Control, Automation and Robotics I, 239–246.
© 2006 Springer. Printed in the Netherlands.
240 P. Lombardi, V. Cantoni and B. Zavidovique
part is all parameters, behaviors, and relations Here, we call “entity” (Crowley, 2002) any object,
between components, which can be controlled. By agent, relation, or global scene configuration that is
means of these parts, the system may acquire known, and thus recognizable, by the perceptive
dependence from the outer world and situation, with system. The set of all entity descriptions {m} is the
the purpose of better interacting with other agents total scene-interpretation capability of the system,
and objects. In this view, context is what imposes namely the set of all available a priori models of
changes to the variable part of a system. When object classes that the system can give semantics to
mapped into the system through its variable parts, raw data with. Minsky frames and state vectors
context becomes a particular configuration of containing geometrical information are examples of
internal parameters. descriptors. Moreover, the image itself can be
thought of as an object, thus {m} includes a
description of global scene properties.
Pm is the prior expectations on the presence of entity
3 AN OPERATIVE DEFINITION m in the scene. We distinguish Pm from m because
OF CONTEXT object descriptions are inherently attached to an
entity, while its probability of occurrence depends
Inspired by the partial definitions from the previous on causes external to objects. Evolution functions
references, we propose the following formalization V{m} indicate the set of evolution dynamics of an
(see (Lombardi, 2003) for details). entity state parameters, e.g. object motion models.
The rationale is that in perceptive systems, elements Definition D.3: An operator set is a triplet Z = ({z},
that can be parameterized and thus controlled are H{z}, C{z}), where:
prior models of external objects, models of system x {z} is the operator knowledge describing
components, and the relations among them. In short, their mechanisms;
D includes all prior assumptions on the strategy x H{z} are the operative assumptions of
for inter-class separation and intra-class operators;
characterization. Essentially, it stands for point 13 in x C{z} is the operation cost paid by system
the above list. Hereafter, we further specify the performance to run operators.
definitions of M and Z. Operator knowledge z contains all parameters,
extracted features, tractable elaboration noise, and
other relevant features of a given visual operator.
3.1 Model Set M The set {z} spans all visual modules in a system and
their relative connections and dependencies.
The model set M contains all a priori knowledge of Operators constitute a grammar that allows matching
the system regarding the outer scene, object/agent data and semantics (model set M). Set {z} includes
appearances, and relations among objects, agents logical operators, relation operators (e.g. detectors of
and events (essentially, points 1-6). We explicitly couples), and events detectors.
list three groups of knowledge inside M. Operative assumptions Hz is the set of hypotheses
Definition D.2: A model set is a triplet M = ({m}, for the correct working of a visual module z. Implicit
P{m}, V{m}), where: assumptions are present in almost every vision
x {m} is the entity knowledge describing their operator (Horswill, 1995). A misuse of z in
appearance; situations where Hz do not hold true may cause
x P{m} is the prior expectation of occurrence abrupt performance degradation.Parameter Cz is a
in the scenario; metrics depending on average performance ratings
x V{m} is the evolution functions describing (e.g. computational time, delay, etc) useful to
the dynamics. optimize system resources.
Entity knowledge m indicates the set of features
and/or attributes that characterize an object type.
242 P. Lombardi, V. Cantoni and B. Zavidovique
3.3 Contextual Changes modalities; ii) a system can develop new perceptive
modalities. The latter solution would involve on-line
The explicit formulation of D.1 allows for a deeper learning and trial-and-error strategies. Although
understanding of contextual adaptability problems some works have been presented – e.g. genetic
and of “context changes”. programming of visual operators (Ebner, 1999) –,
this approach is likely beyond the implementation
Definition D.4: A context change is a change in any level at present.
component of a context Q, and we write it with ¨Q = The first solution may be implemented either by
(¨{m}|| ¨P{m} || ¨V{m} || ¨{z} || ¨H{z} || ¨C{z} || ¨D), using “parallelism” or by “opportunistic switching”
where || is a logical or. to a valid configuration. “Parallelism” consists in
Each component of ¨Q generates a class of introducing redundancy and data fusion by means of
adaptability problems analyzed in the literature alternative algorithms, so that failures of one
under an application-specific definition of “context procedure be balanced by others working correctly.
change”. Here follow some examples: However, parallelism is today often simulated on
a) ¨{m} may occur when i) the camera standard processors, with the inevitable effect of
dramatically changes its point of view, ii) a dramatically increasing the computational load at the
perceptive system enters a completely different expense of real time. This feature conflicts with the
environment of which it lacks some object requirements of machine vision for robotics.
knowledge, iii) object description criteria “Opportunistic switching” consists in evaluating the
become inappropriate. applicability of a visual module or in pointing out a
b) ¨P{m} means that the frequency of an entity change in the environmental context, to commuting
class occurrence has changed, e.g. i) a camera the system configuration accordingly. Opposite to
enters a new geographical environment, ii) parallelism and data fusion, this swapping strategy
stochastic processes of object occurrence are conciliates robustness and real time. Here we further
non-stationary in time. develop the latter option (4.1), we describe a
c) ¨V{m} may occur when agents change Bayesian implementation of it (4.2), and finally we
trajectory so that hybrid tracking is needed – exemplify an application to contextual video
see (Tissainayagam, 2003), (Dessoude, 1993). surveillance (4.3).
d) ¨{z}may consist in i) inappropriate modeling
of operator mechanisms, ii) inappropriate self-
assessment measures, etc. 4.1 Opportunistic Switching
e) ¨H{z} indicates a failure of assumptions
underlying {z}. For instance, a skin color Opportunistic switching among a set of optimized
detector whose color model is inappropriate to configurations may ensure acceptable performance
lighting conditions – see (Kruppa, 2001). over a finite range N of pre-identified situations (i.e.
f) ¨C{z} turns into a resource management “contexts”).
problem. Dynamic programming, task Definition D.6: Designing a system for context-
planning, parametric control are examples of dependent opportunistic switching consists in
methods to find the best resource reallocation building and efficiently controlling a mapping ȗ
between a set of contexts Q and a set of sub-systems
or sequencing.
S, i.e. (1). The switching is triggered by context
g) ¨D may occur when i) assumptions for
changes D.4.
separation of object classes become
inappropriate, ii) critical observed feature ȗ : Q(t) ĺ S(t) (1)
become unavailable, iii).
Definition D.5: The problem of insuring reliable Building the map is an application-dependent
system processing in presence of a context change is engineering task: for each typical situation, the
called an adaptability problem. perceptive system must be engineered to deliver
acceptable results. Control is performed by detecting
the current context Q(t), or equivalently by detecting
4 BAYESIAN CONTEXT context changes ¨Q. A context-adaptable system
must be endowed with context-receptive processing,
SWITCHING i.e. routines capable of classifying N different.
context states {q1, q2,... qN}. Essentially, such
Two are the solutions to cope with context changes: routines detect “context features”, and context
i) a system has available alternative perceptive recognition can be thought of as an object
Context in Robotic Vision 243
s2
s1 e22
e12
e11 q2
q1 e21
e23
e31
q3
Daemons
į1 į2 į3
s3
Figure 1: An oriented graph may easily accommodate all the elements of an opportunistic switching structure as defined in
Section 3: context/sub-system pairs in nodes, and events in arcs. Daemons trigger global state change.
recognition task. The design of such routines Definition D.8: Context Commutation represents
appears to be an application-dependent design issue context evolution by means of a discrete, first-order
HMM with the following components (Figure 1):
Definition D.7: Let us name daemon an algorithm or 1. A set of states Q = {q1, q2, ...qN }. Each state qi
sensor į exclusively dedicated to estimating context corresponds to a context and gets an associated
states q. optimized system configuration si. For every i, si
is such that the perceptive system works
Opportunistic switching has two advantageous satisfactorily in qi = {Mi, Zi, Di} i.e. Mi, Zi, Di are
features: i) flexibility and real-time, because multiple the appropriate models, operators and decision
configurations run one at a time, and ii) software policies in the i-th situation.
reuse, because an increased flexibility can be 2. An observation feature space ĭ composed of
achieved by integrating current software with ad-hoc daemon outputs ij. If there are K daemons, ij is a
configurations for uncovered contexts. Assumptions K-dimensional vector.
for its use are: i) there exists a rigid (static) mapping 3. A transition matrix E, where elements Eij
from problems to solutions, ii) reliable context correspond to the a priori probability of
detection. transition from qi to qj, i.e. (2).
§ 0.6 0.4 ·
E ¨¨ ¸¸
© 0.7 0.3¹
s(2)
Stable 0 1
lighting
q1 q2
Unstable
s(1) lighting
0 1
Figure 3: The simple CC system for “light switch” problems has two states and one daemon. The picture shows the
transition matrix E used in the experiments (top left), and a representation of daemon models (next to the si boxes).
6. The current context qȞ is estimated by the and they recover from “light switch” just after 1
Maximum A Posteriori on Ȍ(t) (5), (6). frame (Figure 2).
A context-adaptable system based on
Ȍ(t) = (P(q1), P(q2), …P(qN)) (5) opportunistic switching would feature two system
states: i) using BS when appropriate, ii) using FD
Ȟ = argmaxi [Ȍ i(t)] (6) otherwise. In the general case, BS delivers a more
informing motion map than FD. However, when
4.3 A Practical Implementation lighting conditions are unstable, the system swaps to
FD – which recovers more quickly.
Here, we design a CC system as shown in Table 1
As a final illustration, we demonstrate an application
and Figure 3. The two contexts, corresponding to
of Context Commutation to tackle the “light switch”
“stable” and “unstable” global lighting, cope with a
problem affecting background subtraction (BS) for context change ¨Hbs which corresponds to a failure
motion detection in automatic video surveillance. In of a basic operative assumption founding BS’s
indoor environments, when artificial lights are correct working – i.e. stable lighting –. The daemon
turned on or off, the reference background model į1 apt to detecting ¨Hbs is modeled with two
used in BS looses validity in one frame-time. truncated Gaussians of the kind shown in Figure 3,
Modern time-adaptive background systems with parameters tuned by training. Daemon į1
(Stauffer, 1999) usually take around 10y100 frames counts the pixels na and nb showing a luminance
to recover. An alternative solution involves the use change that breaks thresholds șį1 and -șį1,
of a second algorithm that degrades less its respectively: na+nb represents all pixels showing
performance in case of abruptly changing lighting substantial luminance change. The output (7) is then
conditions. For instance, frame differencing (FD) a measure of the luminance unbalance over the last
algorithms deliver motion information like BS does, two images. In stable lighting conditions ij1 would
Context in Robotic Vision 245
1
Probability
100
ent
0,5 50
Improvem
0
200 400 600 800 1000 1200
0
0 100 200 300 400 500 -50
Frame Frame Number
Figures 4, 5: Probability that the current context state be q2 as estimated by į1 in a test sequence (left). Improvement in the
estimation error provided by context switching (CC) with respect to BS alone (right).
Figure 5: Frames no. 322, 332, 702, and 932 from a test sequence: original images (first row), motion detection by BS and
FD managed opportunistically by CC (second row).
246 P. Lombardi, V. Cantoni and B. Zavidovique
Alexandre Muzy, Eric Innocenti, Antoine Aïello, Jean-François Santucci, Paul-Antoine Santoni
University of Corsica
SPE – UMR CNRS 6134
B.P. 52, Campus Grossetti, 20250 Corti. FRANCE.
Email: a.muzy@univ-corse.fr
Keywords: Systems modeling, Discrete event systems, Multi-formalism, Fire spread, cellular automata.
Abstract: Studying complex propagation phenomena is usually performed through cellular simulation models.
Usually cellular models are specific cellular automata developed by non-computer specialists. We attempt
to present here a mathematical specification of a new kind of CA. The latter allows to soundly specify
cellular models using a discrete time base, avoiding basic CA limitations (infinite lattice, neighborhood and
rules uniformity of the cells, closure of the system to external events, static structure, etc.). Object-oriented
techniques and discrete event simulation are used to achieve this goal. The approach is validated through a
fire spreading application.
closure of the system to external events, discrete The DSCA definition is validated against a fire
state of the cells, etc.). Scientists often need to spreading application. Recent forest fires in Europe
modify CA’s structure for simulation purposes (Portugal, France and Corsica) and in the United
(Worsch, 1999). States (California) unfortunately pinpoint the
We extend here basic CA capabilities by using necessity of increasing research efforts in this
object-oriented techniques and discrete event domain. Fires are economical, ecological and human
simulation (Hill, 1996). A mathematical catastrophes. Especially as we know that present
specification of the approach is defined using the rising of wild land surfaces and climate warming
Dynamic Structure Discrete Time System will increase forest fires.
Specification (DSDTSS) formalism (Barros, 1997). Modeling such a huge and complex phenomenon
obviously leads to simulation performance
This formalism allows dynamically changing the
overloadings and design problems.
structure of discrete time systems during the
Simulation model reusability has to face to the
simulation. These new CA are called the Dynamic complicated aspects of both model implementations
Structure Cellular Automata (DSCA). and model modifications. Despite a large number of
DSCA have been introduced in (Barros and cells, simulation has to respect real time deadlines to
Mendes, 1997) as a formal approach allowing to predict actual fire propagations. Hence, this kind of
dynamically change network structures of simulation application provides a powerful
asynchronous CA. Using an asynchronous time validation to our work.
base, cells were dynamically instantiated or This study is organized as follows. First some
destroyed during a fire spread simulation. formalisms background is provided. Then two
The scope here is to extend basic CA capabilities sections present the DSCA modeling and simulation
using a discrete time base. If previous DSCA were principles. After, simulation results of a fire
dedicated to discrete event cellular system spreading application are provided. Finally, we
specification, we extend here the DSCA definition to conclude and make some prospects.
discrete time cellular system specification.
Table 1 sums up the advantages of the DSCA in
relation to basic CA. In DSCA, each cell can contain 2 BACKGROUND
different behaviors, neighborhoods and state
variables. Rules and neighborhoods of the cells can A formalism is a mathematical description of a
dynamically change during the simulation. Each cell system allowing to guide a modeler in the
can receive external events. During the simulation, specification task. The more a formalism fits to a
the computing of state changes is limited to active. system class, the more simple and accurate it will be.
Finally, a global transition function allows the Efficiently modeling complex systems often
specification of the DSCA global behaviors. implies the need to define subsystems using different
Table 1: DSCA extensions formalisms. Connections between the different
formalisms can then be achieved through a multi-
Basic CA DSCA formalism to perform the whole system
Time discrete Discrete specification.
Space discrete Discrete In this study, subsystems are specified using
State discrete Continuous DEVS, DTSS (Discrete Time System Specification)
Closure to
- + and DSDTSS formalisms. Connections between the
external events different models are achieved using a Multi-
Different formalism Network (MFN). A structure description
variables per - +
of each model is provided hereafter.
cell
A DEVS atomic model is a structure:
Rules
- +
uniformity* DEVS = (X, Y, Q, q0, įint, įext, Ȝ, ta)
Neighborhood
- +
uniformity* where X is the input events set, Q is the set of state,
Activity q0 is the initial state, Y is the output events set, įint:
- +
tracking*
Global function - +
Q Æ Q is the internal transition function, įext: Q×X
*at simulation time
Æ Q is the external transition function, O : Q Æ Y
the output function, ta is the time advance function.
Dynamic Structure Cellular Automata in a Fire Spreading Application 249
MFN
Root
Generator DSDTN
DSCA
(0,0)
Cell Coordinator
states states
data data
DTSS-interface
(m,n)
SimG
…
AN Simulator
modelling simulation
For efficiency reasons, the simulation engine we mesh size considered, t is the real time, tig the real
developed has been implemented in C++ and ignition time (the time the cell is ignited) and VQ,0 is
dynamic allocation has been suppressed for some the initial combustible mass.
classes. Indeed, for significant numbers of object Figure 5 depicts a simplified temperature curve
instantiation/deletion dynamic allocation is of a cell in the domain. We consider that above a
inefficient and we have designed a specialized static threshold temperature Tig, the combustion occurs and
allocation (Stroustrup, 2000). A pre-dimensioning below a temperature Tf , the combustion is finished.
via large static arrays can be easily achieved thanks The end of the real curve is purposely neglected
to current modern computer memory capabilities. to save simulation time. Four states corresponding to
The state of the executive model is a matrix of the behavior of each cell behavior are defined from
cellular objects. References on active cells are stored these assumptions. The four states are: ‘unburned’,
in a vector container. A start-pointer and an end- ‘heating’, ‘onFire’ and ‘burned’.
pointer are delimiting the current calculation domain T (Kelvin)
6 FIRE SPREADING
APPLICATION
The simulation engine we use has been proved to
achieve real-time simulation (Muzy et al., 2003).
Moreover, we use a mathematical fire spread model
already validated and presented in (Balbi et al.,
1998). In this model, a Partial Differential Equation
(PDE) represents the temperature of each cell. A CA
is obtained after discretizing the PDE. Using the
finite difference method leads to the following Figure 6: 3D Visualization of fire spreading.
algebraic equation:
D ( t t ig )
During a fire spreading, flying brands ignite new
Ti ,kj1 a (Ti k 1, j Ti k 1, j ) b(Ti ,kj 1 Ti ,kj 1 ) V v , 0 e dTi ,kj (1) part of lands away from the fire. This is an important
cause of fire spreading. However, tracking activity
where Tij is the grid node temperature. The of flying brands is difficult. Firstly, because flying
coefficients a, b, c and d depend on the time step and brands occur whenever during the simulation time.
Dynamic Structure Cellular Automata in a Fire Spreading Application 253
!endSimulationTime
ignition
or
!inactivity Internal input
Calculating
igniting flame front t t 't
position
new cells'
temperature
calculating
activity
cells'
tracking
temperature
non
testing
testing
T >= Tt T <= Tf
Ti , j Ta
Ti,kj1 a(Tik1, j Tik1, j ) b(Ti,kj 1 Ti,kj 1 ) dTi,kj
add remove
neighbors cell
Tik, j1 a(Tik1, j Tik1, j ) b(Tik, j 1 Tik, j 1) dTik, j VX0.eD(t tig)
100
C++ implementation of the 3D visualization tool
90
using OpenGL.
80
70
REFERENCES
60
Y(cells)
50
Balbi, J. H., P. A. Santoni, and J. L. Dupuy, 1998.
40 Dynamic modelling of fire spread across a fuel bed.
30 Int. J. Wildland Fire, p. 275-284.
20
Barros, F. J., 1997. Modelling Formalisms for Dynamic
Structure Systems. ACM Transactions on Modelling
10
and Computer Simulation, v. 7, p. 501-515.
25 50 75 100 Barros, F. J., and M. T. Mendes, 1997. Forest fire
X(cells)
modelling and simulation in the DELTA environment.
Figure 9: Activity tracking. Simulation Practice and Theory, v. 5, p. 185-197.
Hill, D. R. C., 1996. Object-oriented analysis and
7 CONCLUSION simulation, Addison-Wisley Longman, UK, 291 p.
Jen, E., 1990. A periodicity in one-dimensional cellular
Considering the previous discrete event DSCA automata. Physica, v. 45, p. 3-18.
(Barros and Mendes, 1997), new well-designed and Mesarovic, M. D., and Y. Takahara, 1975. General
Systems Theory: A mathematical foundation,
complementary discrete time DSCA have been
Academic Press. New York.
defined here. These two methodologies allow to
Muzy, A., E. Innocenti, F. Barros, A. Aïello, and J. F.
faithfully guide modelers for modeling and
Santucci, 2003. Efficient simulation of large-scale
simulating discrete event and discrete time cellular dynamic structure cell spaces. Summer Computer
simulation models. Simulation Conference, p. 378-383.
DSCA allow to simulate a large range of Muzy, A., G. Wainer, E. Innocenti, A. Aiello, and J. F.
complicated cellular models. Complex phenomena Santucci, 2002. Comparing simulation methods for
can be simulated thanks to basic CA simplicity. We fire spreading across a fuel bed. AIS 2002 - Simulation
hope that even more complex phenomena will be and planning in high autonomy systems conference, p.
able to be simulated thanks to DSCA. To be well 219-224.
understood and widely applied, DSCA definition has Nutaro, J., B. P. Zeigler, R. Jammalamadaka, and S.
to be as clear and simple as possible. Clearness and Akrekar, 2003. Discrete event solution of gaz
simplification of DSCA specification will remain dynamics winthin the DEVS framework: exploiting
our objective. spatiotemporal heterogeneity. Intrnational conference
Another objective will be to improve DSCA for computational science.
specification using new experiments. To achieve this Simeoni, A., P. A. Santoni, M. Larini, and J. H. Balbi,
goal, complexity of fire spread remains an infinite 2003. Reduction of a multiphase formulation to
challenge for DSCA simulation. We plan now to include a simplified flow in a semi-physical
extend the DSCA specification to the simulation of model of fire spread across a fuel bed.
implicit-time models. International Journal of Thermal Sciences, v. 42, p.
Another important validation of our approach 95–105.
concerns network structure changes. Here again, a Stroustrup, B., 2000. The C++ Programming Language,
1029 p.
fire spread model taking into account wind effects
Wainer, G., and N. Giambiasi, 2001. Application of the
(Simeoni et al., 2003) will allow us to validate
Cell-DEVS paradigm for cell spaces modeling and
DSCA network structure changes. This model
simulation. Simulation, v. 76, p. 22-39.
actually needs to dynamically change the Wolfram, S., 1994. Cellular automata and complexity:
neighborhood of burning cells according to the fire Collected papers, Addison-Wesly.
front shape. Worsch, T., 1999. Simulation of cellular automata. Future
Generation Computer Systems, v. 16, p. 157-170.
Zeigler, B. P., H. Praehofer, and T. G. Kim, 2000. Theory
ACKNOWLEDGEMENTS of modelling and simulation, Academic Press.
Abstract: In this paper we propose a new speaker verification system where the new training and classification
algorithms for vector quantization and Gaussian mixture models are introduced. The vector quantizer is
used to model sub-word speech components. The code books are created for both training and test
utterances. We propose new approaches to normalize distortion of the training and test code books. The test
code book quantized over the training code book. The normalization technique includes assigning the equal
distortion for training and test code books, distortion normalization and cluster weights. Also the LBG and
K-means algorithms usually employed for vector quantization are implemented to train Gaussian mixture
models. And finally, we use the information provided by two different models to increase verification
performance. The performance of the proposed system has been tested on the Speaker Recognition
database, which consists of telephone speech from 8 participants. The additional experiments has been
performed on the subset of the NIST 1996 Speaker Recognition database which include.
255
J. Braz et al. (eds.), Informatics in Control, Automation and Robotics I, 255–261.
© 2006 Springer. Printed in the Netherlands.
256 V. Rakush and R.K. Sadykhov
2 BASIC IDEA OF THE threshold, then test and training utterances belong to
VQ-VERIFICATION the same person. When the recognition is applied to
arbitrary speech then duration of the reference and
test phrases has a huge difference. The reference
The sub-word units, created during signal
phrase should contain as much as possible linguistic
transformation from scalar to vector representation
material from the speaker. The test phrase should be
can be used as structural elements of the speaker
as small as possible but enough to provide acceptable
voice model. Let x [ x1 , x 2 ,..., x N ]T - N- verification performance. The reference code book
dimensional vector, coordinates of which should have more code vectors, and the test code
x k , ^1 d k d N ` are real random values and book should have variable number of vectors K ,
depending on duration and linguistic content of the
represent temporal speech spectrum. It can be
test phrase. Based on the idea that every cluster
displayed into N-dimensional vector y . The set models sub-word component we assume that
Y y i , ^1 d i d M ` is the code book, where M - reference codebook presents model of all possible
pronunciations for given speaker. We will quantize
the code book size and ^y i `- the set of code vectors. test codebook over reference codebook using
The N-dimensional space of vectors x is divided on expression (2) and will expect that distortion for right
speaker will be minimal. Unfortunately, the distortion
M areas ci ,1 d i d M to create the code book. The
for the shortest test phrase can be smaller. Also the
vector y i corresponds to each area ci . If xi lays in linguistic content of the phrase can influence on the
distortion value. The distortion will be smaller for
ci , then xi is quantized to a value of code vector phrase with less sub-word components. To avoid
yi . It is evident, that we get the error of phrase duration and content impact we propose the
quantization. The deviation x from y can be
determined by a measure of closeness d ( x , y )
1
d ( x, y) ( x y) T ( x y)
N
(1)
1 K
¦ ( xi y i ) 2 ,
N i1
where N – dimension of the parameters vector.
The basic idea of the VQ based verification system is
to build two codebooks using the reference and test
phrases. Definitely, reference and test phrases will be
similar in the linguistic sense and will be modeling
the features of the speaker voice. We assume that
codebook clusters are modeling the sub-word units of
speech so the test and reference codebooks should
have approximately similar clusters for the two
phrases pronounced by same speaker. The
Figure 1: Normalization using predefined distortion value.
verification decision can be made comparing two
codebooks using following expression
normalization techniques. First approach Fig. 1
described in (Rakush V.V., Sadykhov R.H., 1999) is
1 M K
Dcompare
D final (3)
Dnorm
The Fig.2 shows algorithm for normalization using
distortion of the test phrase code book.
The third and last approach is to use number of where O - defines a Gaussian mixture density, x -
vectors distributed in codebook clusters as a weight N -dimensional feature vector, bi x , i 1,..., M -
coefficients for normalization. The empirical probability distribution functions for model
theoretical assumption for that type of normalization components, and p i , i 1,..., M - components
can be defined as follows. If one cluster has more
vectors then another one then it should have greater weights. Every component is a D -dimensional
weight. Therefore test vectors that fall into it should Gaussian probability distribution function
be more meaningful and more significant for
1 1 c ½ (5)
verification. This approach is not a pure bi x exp® x P i G i1 x Pi ¾
normalization but can increase performance of the 2S D/2
Gi
1/ 2
¯ 2 ¿
system because it uses more information from the
code book then previous ones. The Figure 3 shows where P i - mean vectors, G i - covariance matrixes.
this normalization method. The VQ algorithm is The mixture weights values are constrained by the
used to calculate code book vectors. It is modified to equality
produce cluster weights which will be stored along
with cluster’s center vector and will be used to M
weighted distance during testing phase. ¦ i 1
pi 1 (6)
initialized also. The number of components of the speakers with 50 utterances for each speaker. The
GMM is the same for all speaker voices stored in the speech was recorded on telephone channel with
system. Those are serious disadvantages of the EM sampling rate 8 kHz. The duration of the test and
algorithm that can fixed by applying vector train utterances was approximately equal 10 sec. The
quantization technique to GMM models training. second database is the SWITCHBOARD speaker
The initialization step is based on the vector recognition corpus created by the National Institute
quantization algorithm and uses codebook to of Technology in 1996. This database represents data
initialize parameters of the GMM. There is another in the Microsoft WAV files compressed using
algorithm useful for initializing GMM. Initially that P law . The subset of the development including 20
algorithm was developed for vector quantization and males and 20 females
had name LBG algorithm. We will introduce new The preliminary step used linear prediction
implementation of that algorithm for Gaussian coding and cepstral analysis to build vectors of
mixture models. spectral features. Analysis used 30 ms Hamming
The initial GMM model has only one component. window with 10 ms shift to weight original speech
The component, which gives maximum probability is signal. There were used vectors with 24 cepstral
split into two parts and new model parameters are coefficients. Also as recommended in
estimated. (Homayounpour, M.M., Challet, G., 1995) first
Step 1. Initialization derivative and second derivative of the cepstral
Component weight p1 =1. The mean vector is the coefficients have been used along with cepstr. The
1 N resulting feature vector had size N=72 parameters.
mean of all feature vectors P1 ¦ xi .
N i1
Covariance matrix is a diagonal matrix of variances
calculated from the training set of feature vectors.
Step 2. Splitting component
Select the mixture component which has
maximum probability. Increment the mean vector
parameters on small value 'P will give two mean
vectors.
P2 P 1 'P (7)
Step 3. Optimization
Using EM algorithm estimate new GMM model.
The EM algorithm can use fixed number of iterations
or threshold condition. Figure 4: The structure of the speaker verification system.
Step 3. Iteration
Steps 2 and 3 can be performed until some The GMM models had maximum 32 components.
threshold will be reached. The code book for GMM initialization and for
verification had 32 and 256 clusters correspondingly.
Both LBG and K -means initialization algorithms The system is working in two modes: training and
showed good performance acceptable for ASV testing mode. In training mode parameter vectors
systems. The system built on combination of the from both models are used to build the code book and
LBG and EM algorithms are shown on Figure 1. GMM model for every speaker. In the test mode
those models are used to verify speaker identity.
Normalization and data fusion module uses following
4 EXPERIMENTAL RESULTS expression to combine results from both models.
n
0.1
0.01
0.001
0.01 0.1 1
False Rejected Rate
Figure 5: The DET curve of the ASV system performance.
i th model, and n is a number of models (two discussing the normalization approaches to the
models in our case). vector quantization based speaker verification. The
The GMM and code book models weights have experimental results for the first approach with equal
distortion for reference and test codebooks has been
values D 1 0,545 and D 2 0,455 . Experimental
described in (Rakush V.V., Sadykhov R.H., 1999).
results shown almost identical performance for VQ In this paper we provide experimental result
and GMM algorithms. The data fusion of both comparing second and third normalization
algorithms improved overall performance of the approaches on figure 6.
system. The DET curve for LBG initialization and Additional experiment using NIST 1996 Speaker
EM algorithm is shown on Figure 5. Verification database SWITCHBOARD shown
In the second section of this paper we were results printed on the figure 7.
0.1
0.01
0.001
0.01 0.1 1
False Rejected Rate
Figure 6: The DET curve for weight normalization.
260 V. Rakush and R.K. Sadykhov
0.1
0.01
0.001 0.01 0.1 1
False Acce p ted Rate
Figure 7: The weight normalization results tested on the SWITCHBOARD’96 corpus.
for speaker verification, In Proceedings of 15th verification, In Acoustics, Speech, and Signal
International Conference on Pattern Recognition. Processing, IEEE International Conference,
Chun-Nan Hsu, Hau-Chang Yu, Bo-Han Yang, 2003. ICASSP’98.
Speaker verification without background speaker Farrell, K.R., Ramachandran, R.P., Sharman, M.,
models, In Acoustics, Speech, and Signal Mammone, R.J., 1997. Sub-word speaker
Processing, IEEE International Conference, verification using data fusion methods. In Neural
ICASSP’03. Networks for Signal Processing, Proceedings of the
IEEE Workshop.
Homayounpour, M.M., Challet, G., 1995. Neural net
approach to speaker verification: comparison with Sadykhov, R. Kh., Rakush, V.V., 2003, Training
second order statistics measures, In Acoustics, Gaussian models with vector quantization for
Speech, and Signal Processing, IEEE International speaker verification, In Proceedings of the 3rd
conference, ICASSP-95. International Conference on Neural Networks and
Artificial Intelligence.
Singh, G., Panda, A., Bhattacharyga, S., Srikanthan, T.,
2003. Vector quantization techniques for GMM Rakush V.V., Sadykhov R.H., 1999, Speaker
based speaker verification, In Acoustics, Speech, and Identification System on Arbitrary Speech In
Signal Processing, IEEE International Conference, Pattern Recognition and Information Processing.
ICASSP’03. Proc. Of 5th International Conference.
Farrell, K. R., Ramachandran, R.P., Mammone, R.J., The NIST year 2002 speaker recognition evaluation
1998. An analysis of data fusion methods for speaker plan, 2002, http://www.nist.gov/speech/tests/spk/2002/doc.
MOMENT-LINEAR STOCHASTIC SYSTEMS
Sandip Roy
Washington State University, Pullman, WA
sroy@eecs.wsu.edu
George C. Verghese
Massachusetts Institute of Technology, Cambridge, MA
verghese@mit.edu
Bernard C. Lesieutre
Lawrence Berkeley National Laboratory, Berkeley, CA
BCLesieutre@lbl.gov
Keywords: jump-linear systems, linear state estimation and control, stochastic network models.
Abstract: We introduce a class of quasi-linear models for stochastic dynamics, called moment-linear stochastic systems
(MLSS). We formulate MLSS and analyze their dynamics, as well as discussing common stochastic models
that can be represented as MLSS. Further studies, including development of optimal estimators and controllers,
are summarized. We discuss the reformulation of a common stochastic hybrid system—the Markovian jump-
linear system (MJLS)—as an MLSS, and show that the MLSS formulation can be used to develop some
new analyses for MJLS. Finally, we briefly discuss the use of MLSS in modeling certain stochastic network
dynamics. Our studies suggest that MLSS hold promise in providing a framework for modeling interesting
stochastic dynamics in a tractable manner.
263
J. Braz et al. (eds.), Informatics in Control, Automation and Robotics I, 263–271.
© 2006 Springer. Printed in the Netherlands.
264 S. Roy, G.C. Verghese and B.C. Lesieutre
class of stochastic automata of particular interest to the current state is specially constrained at each time-
us are Hybrid Bayesian Networks (e.g., (Heskes and step. These conditional distributions are constrained
Zoeter, 2003)). These are graphical models (i.e., mod- so that successive moments and cross-moments of
els in which stochastic interactions are specified using state variables at each time-step can be found as lin-
edges on a graph) with hybrid (i.e., mixed continuous- ear functions of equal and lower moments and cross-
state and discrete-state) nodal variables. Dynamic moments of state variables at the previous time-step,
analysis, inference (estimation), and parameter learn- and hence can be found recursively.
ing have been considered for such networks, but com- Formally, consider a discrete-time Markov process
putationally feasible methods are approximate. with an m-component real state vector. The state (i.e.,
We observe that stochastic systems models with state vector) of the process at time k is denoted by
certain linear or quasi-linear structures (e.g., linear s[k]. We write {s[k]} to represent the state sequence
systems driven by additive white Gaussian noise, s[0], s[1], . . . and si [k] to denote the ith element of
MJLS) are often widely tractable: statistics of tran- the state vector at time k. We stress that we do not
sient dynamics can be analyzed, and LMMSE esti- in general enforce any structure on the state variables,
mators and optimal quadratic controllers can be con- other than that they be real; the state vector may be
structed. Several stochastic network models with continuous-valued, discrete-valued, or hybrid.
quasi-linear interaction structures have also been For this Markov process, we consider the con-
proposed—examples include the voter model or inva- ditional expectation E(s[k + 1]⊗r | s[k]), for r =
sion process (Durrett, 1981), and our influence model 1, 2, . . ., where the notation s[k + 1]⊗r refers to the
(Asavathiratham, 2000). For these network models, Kronecker product of the vector s[k + 1] with it-
the quasi-linear structure permits partial characteriza- self r times and is termed the rth-order state vec-
tion of state occupancy probabilities using low-order tor at time k. This expectation vector contains all
recursions. In this article, we view these various lin- rth moments and cross-moments of the state variables
ear and quasi-linear models as examples of moment- s1 [k + 1], . . . , sn [k + 1] given s[k], and so we call the
linear models—i.e., models in which successive mo- vector the conditional rth (vector) moment for s[k+1]
ments of the state at particular times can be inferred given s[k]. We say that the process {s[k]} is rth-
from equal and lower moments at previous times us- moment linear at time k if the conditional rth moment
ing linear recursions. This common representation for s[k + 1] given s[k] can be written as follows:
for quasi-linear system and network dynamics moti-
vates our formulation of MLSS, which are similarly r
tractable to the examples listed above. The MLSS E(s[k + 1]⊗r | s[k]) = Hr,0 [k] + Hr,i [k]s[k]⊗i ,
formulation is further useful, in that it suggests some i=1
new analyses for particular examples and elucidates (1)
some other types of stochastic interactions that can be
tractably modeled. for some set of matrices Hr,0 [k], . . . , Hr,r [k].
The remainder of the article is organized as fol-
lows: in Section 2, we describe the formulation and
basic analysis—namely, the recursive computation of The Markov process {s[k]} is called a moment-
state statistics—of MLSS. We also list common mod- linear stochastic system (MLSS) of degree r" if it is
els, and types of stochastic interactions, that can be rth-moment linear for all r ≤ r", and for all times
captured using MLSS. Section 3 contains a summary k. If a Markov model is moment linear for all r and
of further results on MLSS. In Section 4, we refor- k, we simply call the model an MLSS. We call the
mulate the MJLS as an MLSS, and apply the MLSS constraint (1) the rth-moment linearity condition at
analyses to this model. We also list other common hy- time k, and call the matrices Hr,0 [k], . . . , Hr,r [k] the
brid models that can be modeled as MLSS. Section 5 rth-moment recursion matrices at time k. These re-
summarizes our studies on using MLSS to model net- cursion matrices feature prominently in our analysis
work dynamics. In this context, a discrete-time flow of the temporal evolution of MLSS.
network model is developed in some detail. MLSS are amenable to analysis, in that we can find
statistics of the state s[k] (i.e., moments and cross-
moments of state variables) using linear recursions.
2 MLSS: FORMULATION AND In particular, for an MLSS of degree r", E(s[k + 1]⊗r )
BASIC ANALYSIS (called the rth moment of s[k + 1]) can be found in
terms of the first r moments of s[k] for any r ≤ r". To
An MLSS is a discrete-time Markov model in which find these rth moments, we use the law of iterated ex-
the conditional distribution for the next state given pectations and then invoke the rth-moment linearity
Moment-Linear Stochastic Systems 265
Interactions and Examples Captured by MLSS E(z[k] | s[k]) = C1,1 s[k] + C1,0 (5)
MLSS provide a convenient framework for represent- for some C1,1 and C1,0 , and the second moment for
ing several models that are prevalent in the literature. z[k] given s[k] can be written as an affine function of
These MLSS reformulations are valuable in that they s[k] and s[k]⊗2 :
expose similarity in the moment structure of several
types of stochastic interactions, and in that they per- E(z[k]⊗2 | s[k]) = C2,2 s[k]⊗2 +C2,1 s[k]+C2,0 (6)
mit new analyses (e.g., development of linear state es-
for some C2,2 , C2,1 , and C2,0 .
timators, or characterization of higher moments) in
We have restricted observations to a form for which
the context of these examples. Common models that
analytical expressions for LMMSE estimators can be
can be represented as MLSS are listed:
found, yet relevant stochastic interactions that are not
• A linear system driven by independent, identically purely linear can be captured. Observation gener-
distributed noise samples with known statistics is ation from the state in MLSS admits the same va-
an MLSS. riety of stochastic interactions—e.g., linear interac-
• A finite-state Markov chain can be formulated as tions, finite-state Markovian transitions, certain state-
an MLSS, by defining the MLSS state to be a 0–1 parameterized stochastic updates—as captured by the
indicator vector of the state of the Markov chain. MLSS state update. This generality allows us to
model, e.g., Hidden Markov Model observations (Ra-
• An MJLS is a hybrid model that can be reformu- biner, 1986), random selection among multiple lin-
lated as an MLSS. This reformulation of an MJLS ear observations, and observations of a Poisson arrival
is described in Section 4. process with mean modulated by the state.
• A Markov-modulated Poisson process (MMPP) is The inputs in our model are structured in such a
a stochastic model that has commonly been used way that the next state is first- and second-moment
266 S. Roy, G.C. Verghese and B.C. Lesieutre
linear with respect to both the current state and the Because the moments satisfy linear recursions,
current input. Specifically, a system is a 2nd-degree conditions for convergence can straightforwardly be
MLSS with state sequence {s[k]} and input {u[k]} expressed in terms of the modes of the moment recur-
if the conditional distribution for the next state is in- sion matrices. However, we note that redundancy in
dependent of the past history of the system, given the moment vectors, which is inherent to the MLSS
the current state and input, and if there exist matri- formulation, complicates development of good con-
ces H1,1 , D1,1 , H1,0 , H2,2 , G2,2 , D2,2 , H2,1 , D2,1 , vergence conditions because it allows introduction of
and H2,0 such that spurious unstable modes that do not actually alter the
moments. We therefore develop reduced forms of the
E(s[k + 1] | s[k], u[k]) = H1,1 s[k] + D1,1 u[k] + H1,0
moment recursions to construct the necessary and suf-
and ficient conditions for moment convergence. Details
are in (Roy, 2003).
E(s[k + 1]⊗2 | s[k], u[k])
= H2,2 s[k]⊗2 + G2,2 (s[k] ⊗ u[k]) + D2,2 u[k]⊗2
+H2,1 s[k] + D2,1 u[k] + H2,0 . (7) Estimation We have developed a recursive al-
gorithm for linear minimum mean square error
That is, a Markov process is a 2nd-degree MLSS with (LMMSE) filtering of MLSS. Because tractability of
input u[k] if the first and second moments and cross- estimation and control is a primary goal in our formu-
moments of the next state, given the current state and lation of MLSS, it is worthwhile for us to present our
input, are first- and second-degree polynomials, re- estimator, and to connect it to related literature.
spectively, of current state and input variables. Our LMMSE filter for an MLSS is a generalization
We have restricted MLSS inputs to a form for of the discrete-time Kalman filter (see, e.g., (Catlin,
which analytical expressions for optimal quadratic 1989)), in which the state update and observation
controllers can be found, yet several relevant types processes are constrained to be moment-linear rather
of input interactions can nevertherless be represented. than purely linear. Equivalently, we can view our fil-
The dependence of the state on the input has the same ter as applying to a linear system in which certain
generality as the state update. quasi-linear state-dependence of state and observation
noise is permitted. From this viewpoint, our filter
is related to the LMMSE filter introduced in (Zehn-
3 FURTHER RESULTS wirth, 1988), which allows for state-dependent ob-
servation variance. Also of interest to us are linear
In the following paragraphs, we summarize four re- estimation techniques for arrival processes whose un-
sults on MLSS that are elaborated further in (Roy, derlying rate processes are themselves random, and/or
2003). arrival-dependent (e.g., (Snyder, 1972),(Segall et al.,
1975)). Segall and Kailath describe a broad class of
arrival processes of this type, for which a martingale
Cross Moments Cross-moments of state variables
formulation facilitates nonlinear recursive estimation
across multiple time-steps can be calculated, by re-
(Segall et al., 1975). We also can capture some ar-
cursively rewriting cross-moments across time-steps
rival processes with stochastic rates (e.g., MMPPs),
as linear functions of moments and cross-moments at
and hence develop recursive state estimators for these
single times. Our expressions for cross-moments are
processes. The arrival processes that are MLSS are a
similar in flavor to the Kronecker product-based ex-
subset of those in (Segall et al., 1975), but for which
pressions for higher-order statistics of linear systems
linear filtering is possible, and hence exact finite-
given by, e.g., (Mendel, 1975; Swami and Mendel,
dimensional estimators can be constructed.
1990), but apply to MLSS.
The derivation of our LMMSE filter for MLSS,
which closely follows the derivation of the discrete-
Asymptotics We develop necessary and sufficient time Kalman filter, can be found in (Roy, 2003).
conditions for convergence (approach to a steady- Here, we only present the results of our analysis.
state value) of MLSS moments1 in (Roy, 2003). Con- We use the following notation: we define " sk|k as
ditions for moment convergence are useful because the LMMSE estimate for s[k] given z[0], . . . , z[k],
they can help to characterize asymptotic dynamics:
they can in some instances be used to prove conver- and define Σk|k = E (s[k] − " sk|k )
sk|k )(s[k] − "
gence of the state itself, or to prove distributional con- as the error covariance of this estimate. Also, we
vergence, for example. define " sk+1|k as the LMMSE estimate for s[k +
1
Our study of moment convergence is limited to the state 1] given z[0], . . . , z[k], and let define Σk+1|k =
update of an MLSS; input-output stability has not yet been E (s[k + 1] − " sk+1|k )(s[k + 1] − " sk|k ) as the er-
considered. ror covariance of this estimate.
Moment-Linear Stochastic Systems 267
As with the Kalman filter, the estimates are found where {q[k]} is a 0–1 indicator vector sequence rep-
recursively, in two steps. First, a next-state update is resentation for an underlying Markov chain with fi-
used to determine " sk+1|k and Σk|k in terms of " sk|k , nite state-space. We denote the transition matrix for
Σk|k , and the a priori statistics of s[k]. The next-state the underlying Markov chain by Θ = [θij ]. We de-
update for our filter is note the number of components of x[k] as n, and the
number of statuses in the underlying Markov chain as
"
sk+1|k = H1,1"
sk|k + H1,0 (8) m.
Σk+1|k For convenience, we rewrite (11) in an extended
form as
= H1,1 Σk|k H1,1 + Mk (E(s[k], E(s[k]⊗2 )) (9)
x̃[k + 1] = Ã(q[k])x̃[k], (12)
In (9), Mk (E(s[k], E(s[k]⊗2 )) is the (a priori) expec- x[k]
tation for the conditional variance of z[k] given s[k]; where x̃[k] = and Ã(q[k]) =
1
an explicit expression is given in (Roy, 2003).
A(q[k]) b(q[k])
Second, a measurement update is used to determine .
0 1
"
sk|k and Σk|k in terms of z[k], "sk|k−1 , Σk|k−1 , and the To reformulate the jump-linear system as an MLSS,
a priori statistics of s[k]. The measurement update for we define a state vector that captures both the con-
our filter is tinuous state and underlying Markov dynamics of the
"
sk|k = "
sk|k−1 + Σk|k−1 C1,1
(C1,1 Σk|k−1 C1,1 jump-linear system. In particular, we define the state
vector as s[k] = q[k] ⊗ x̃[k], and consider the first
+Nk (E(s[k], E(s[k]⊗2 )))−1 (z[k] −C1,1"sk|k−1 C1,0 ) conditional vector moment E(s[k + 1] | s[k]). Since
− Σk|k = Σk|k−1 s[k] uniquely specifies x[k] and q[k], we can deter-
− Σk|k−1 C1,1
mine this first conditional vector moment as follows:
(C1,1 Σk|k−1 C1,1
E(s[k + 1] | s[k]) = E(s[k + 1] | q[k], x[k])(13)
+ Nk E(s[k]), E(s[k]⊗2 ) )−1 C1,1 Σk|k−1 . (10)
= E(q[k + 1] ⊗ x̃[k + 1] | x[k], q[k])
In (10), Nk E(s[k]), E(s[k]⊗2 ) is the a priori ex- = E(q[k + 1] | q[k]) ⊗ Ã(q[k])x̃[k]
pectation for the conditional variation of s[k+1] given
s[k]; an explicit expression is given in (Roy, 2003). = Θ q[k] ⊗ Ã(q[k])x̃[k]
With a little bit of algebra, we can rewrite Equation
Control Considering the duality between linear es- 13 as
timation and quadratic control, it is not surprising that
optimal dynamic quadratic control can be achieved E(s[k + 1] | s[k]) =
θ Ã(q[k] = e(1)) ...
(14)
θm1 Ã(q[k] = e(m))
11
for MLSS, given full state information. In (Roy, . .. .
. . s[k],
2003), we use a dynamic programming formulation . . .
for the quadratic control problem to find a closed- θ1m Ã(q[k] = e(1)) ... θmm Ã(q[k] = e(n))
form recursion for the optimal control. The optimal
control at each time is linear with respect to the cur- where e(i) is an indicator vector with the ith entry
rent state, in analogy to the optimal quadratic control equal to 1.
for a linear system. The reader is referred to (Roy, Equation (14) shows that the first-moment lin-
2003) for presentation and discussion of the optimal earity condition holds for {s[k]}. To justify that
controller, as well as a description of relevant litera- higher-moment linearity conditions hold, let’s con-
ture. sider entries of the rth-conditional moment vec-
tor E(s[k + 1]⊗r | s[k]) = E((q[k + 1] ⊗ x̃[k +
1])⊗r | x[k], q[k]). Because q[k] is an indicator, the
non-zero entries of the rth-conditional moment
#n vector
4 EXAMPLE: MJLS can all be written in the form E(qi [k +1] i=1 xi [k +
n
1]αi | x[k], q[k]), where each αi ≥ 0, and i=1 αi =
We describe the reformulation of MJLS as MLSS, r" ≤
#nr. Given that q[k] = e(i), 1 ≤ i ≤ m,
and then present some analyses of MJLS using the E( i=1 xi [k+1]αi | x[k], q[k]) is an r"th degree poly-
MLSS formulation. For simplicity, we only detail nomial of x1 [k], . . . , xn [k], say pi [k]. Using that
the reformulation of a Markovian jump-linear state- q[k] m E(qi [k +
#nis an indicator vector, we can rewrite
update equation here; reformulation of the entire 1] i=1 xi [k + 1]αi | x[k], q[k]) as i=1 qi [k]pi [k].
input-output dynamics is a straightforward extension. Hence, we see that each entry in the rth-conditional
Let’s consider the update equation moment vector is linear with respect to the entries in
s[k]⊗r = (q[k + 1] ⊗ x̃[k + 1])⊗r , and so the state
x[k + 1] = A(q[k])x[k] + bk (q[k]), (11) vector is rth-moment linear. Some bookkeeping is
268 S. Roy, G.C. Verghese and B.C. Lesieutre
The MLSS reformulation can be used to develop Continuous State and Observations
10
LMMSE estimators for MJLS. LMMSE estimation of State x[k]
Observation y[k]
the continuous-valued state of an MJLS from noisy 8
the joint probabilities of the statuses of groups of r Costa, O. L. V. (1994). Linear minimum mean square er-
sites, and hence the configurations of small groups ror estimation for discrete-time markovian jump lin-
of sites can be characterized using low-order re- ear systems. IEEE Transactions on Automatic Con-
cursions. The MLSS formulation for the influence trol, 39:1685–1689.
model can also be used to develop good state esti- Durrett, R. (1981). An introduction to infinite particle sys-
mators for the model, and to prove certain results tems. Stochastic Processes and their Applications,
on the convergence of the model. 11:109–150.
• MLSS can be used to represent single-server Fang, Y. and Loparo, K. A. (2002). Stabilization of
continuous-time jump linear systems. IEEE Transac-
queueing networks with linear queue length-
tions on Automatic Control, 47:1590–1603.
dependent arrival and service rates, operating under
heavy-traffic conditions. The MLSS formulation Fang, Y., Loparo, K. A., and Feng, X. (1991). Modeling is-
allows us to find statistics and cross-statistics of the sues for the control systems with communication de-
lays. Ford Motor Co., SCP Research Report.
queue lengths. Of particular interest is the possi-
bility for using the MLSS formulation to develop Heskes, T. and Zoeter, O. (2003). Generalized belief propa-
queue-length estimators for these state-dependent gation for approximate inference in hybrid bayesian
models and, indirectly, for Jackson networks (see, networks. Proceedings of the Ninth International
Workshop on Artificial Intelligence and Statistics.
e.g., (Kelly, 1979)).
Kelly, F. P. (1979). Reversibility and Stochastic Networks.
• In (Roy et al., 2004), we have developed an MLSS John Wiley and Sons, New York.
model for aircraft counts in regions of the U.S.
Loparo, K. A., Buchner, M. R., and Vasuveda, K. (1991).
airspace, and have used the MLSS formulation to
Leak detection in an experimental heat exchanger
compute statistics of aircraft counts in regions. In process: a multiple model approach. IEEE Transa-
the context of this MLSS model, we have also de- tions on Automatic Control, 36.
veloped techniques for parameter estimation from
Mazor, E., Averbuch, A., Bar-Shalom, Y., and Dayan, J.
data. (1998). Interacting multiple model methods in target
tracking: a survey. IEEE Transactions on aerospace
and electronic systems, 34(1):103–123.
REFERENCES Mendel, J. M. (1975). Tutorial on higher-order statistics
(spectra) in signal processing and system theory: the-
Asavathiratham, C. (2000). The Influence Model: A oretical results and some applications. Proceedings of
Tractable Representation for the Dynamics of Net- the IEEE, 3:278–305.
worked Markov Chains, Ph.D. Thesis. EECS Depart- Meyn, S. and Tweedie, R. (1994). Markov
ment, Massachusetts Institute of Technology. Chains and Stochastic Stability.
Asavathiratham, C., Roy, S., Lesieutre, B. C., and Verghese, http://black.csl.uiuc.edu/ meyn/pages/TOC.html.
G. C. (2001). The influence model. IEEE Control Nagarajan, R., Kurose, J. F., and Towsley, D. (1991). Ap-
Systems Magazine. proximation techniques for computing packet loss in
Baiocchi, A., Melazzi, N. B., Listani, M., Roveri, A., and finite-buffered voice multiplexers. IEEE Journal on
Winkler, R. (1991). Loss performance analysis of Selected Areas of Communications, 9:368–377.
an ATM multiplexer loaded with high-speed on off Rabiner, L. R. (1986). A tutorial on hidden markov models
sources. IEEE Journal on Selected Areas of Commu- and selected applications in speech recognition. Pro-
nications, 9:388–393. ceedings of the IEEE, 77(2):257–285.
Basu, S., Choudhury, T., Clarkson, B., and Pentland, A. Rothman, D. and Zaleski, S. (1997). Lattice-Gas Cellular
(2001). Learning human interactions with the influ- Automata: Simple Models of Complex Hydrodynam-
ence model. MIT Media Lab Vision and Modeling ics. Cambridge University Press, New York.
TR#539.
Roy, S. (2003). Moment-Linear Stochastic Systems and
Bose, A. (2003). Power system stability: new opportuni- their Applications. EECS Department, Massachusetts
ties for control. Stability and Control of Dynamical Institute of Technology.
Systems with Applications. Roy, S., Verghese, G. C., and Lesieutre, B. C. (2004).
Catlin, D. E. (1989). Estimation, Control, and the Discrete Moment-linear stochastic systems and networks. Sub-
Kalman Filter. Springer-Verlag, New York. mitted to the Hybrid Systems Computation and Con-
Ching, W. K. (1997). Markov-modulated Poisson processes trol conference.
for multi-location inventory problems. International Segall, A., Davis, M. H., and Kailath, T. (1975). Nonlinear
Journal of Production Economics, 52:217–233. filtering with counting observations. IEEE Transac-
Chizeck, N. J. and Ji, Y. (1988). Optimal quadratic con- tions on Information Theory, IT-21(2).
trol of jump linear systems with Gaussian noise in Snyder, D. L. (1972). Filtering and detection of doubly sto-
discrete-time. Proceedings of the 27th IEEE Confer- chastic poisson processes. IEEE Transactions on In-
ence on Decision and Control, pages 1989–1999. formation Theory, IT-18:91–102.
Moment-Linear Stochastic Systems 271
Swami, A. and Mendel, J. M. (1990). Time and lag re- Zehnwirth, B. (1988). A generalization of the Kalman fil-
cursive computation of cumulants from a state space ter for models with state-dependent observation vari-
model. IEEE Transactions on Automatic Control, ance. Journal of the American Statistical Association,
35:4–17. 83(401):164–167.
Sworder, D. D., Boyd, J. E., and Elliot, R. J. (2000). Modal
estimation in hybrid systems. Journal of Mathemati-
cal Analysis and Applications, 245:225–247.
ACTIVE ACOUSTIC NOISE CONTROL IN DUCTS
Keywords: Active noise control, feedforward control, filtered-reference LMS, modified filtered-reference
LMS, filtered-u, frequency domain filtered-reference LMS.
Abstract: In this paper existing classical and advanced techniques of active acoustic noise cancellation (ANC) in ducts
are collected and compared. The laboratory plant used in experience showed a linear behaviour and so the
advanced techniques were not used. Due to delay on the plant, the feedback classical techniques could not
be applied. The best results were obtained with the modified filtered-reference LMS (MFX-LMS) and
filtered-u techniques. A very important conclusion is that the quadratic normalisation is needed to maintain
the algorithms always stable. In this paper 18dB of attenuation of white noise and 35 dB of attenuation of
tonal noise were achieved. Thus, ANC can be applied in a real situation resulting in important noise
attenuations.
273
J. Braz et al. (eds.), Informatics in Control, Automation and Robotics I, 273–280.
© 2006 Springer. Printed in the Netherlands.
274 F. Morais and J.M. S á da Costa
to nonlinear plants, although they can be applied to estimation of the natural feedback path of the system
linear systems with good performance. However, Gf(z), i.e., reproduces the influence of the secondary
they are also more complex and demand more source to the reference sensor. When Ƣf(z) = Gf(z),
computational power than the classic ones. For that the two feedback loops cancel each other and the
reason advanced techniques are not preferred instead signal that feeds the controller is equal to x(n). In this
of classic ones when linear plants are concerned. situation the control is purely feedforward. In the
Both classic and advanced techniques can be situation in which the estimate of Gf(z) is not perfect,
divided according to the type of control: feedforward a residue appears from the cancellation of two loops.
or feedback. In the feedforward control information If Ƣf(z) is a good estimate of the path Gf(z), the
is collected in advance about the disturbance and so residue has a small value and will not affect the
the controller can act in anticipation; while the performance of the control. If the estimate of Gf(z) is
feedback control has no information in advance poor, this can influence the performance of the
about the disturbance and thus the controller reacts to control, that may become unstable. In this situation it
the disturbance. The feedback control is useful when might be necessary to use feedback control
the acoustic noise is created by several different techniques to improve the performance or to stabilize
sources, or by distributed sources, or when it is not the control (Elliot, 2001).
practical or possible to get information in advance Assuming that the two feedback loops cancel
concerning all the noise sources. However, this is not each other completely and that the plants are linear
the case of ducts because the noise source is well and time invariant (LTI), so that the filter W(z) and
defined and acoustic waves are plane and travel in a the discrete transfer function Gs(z) can be
single direction. interchanged, the error signal e(n) comes
In this paper existing feedforward techniques for
ANC in ducts are compared to assess the e( n ) d (n) w T r ( n) d ( n ) r ( n )T w , (1)
performance of these techniques in a real situation. where w is a vector with the coefficients of the filter
In ducts it is possible to have only plane acoustic and r(n) the vector with the last samples of the
waves, rending ANC much simpler since some filtered reference signal r(n) given by:
acoustic effects are not to be found, as for instance
I 1
the diffraction of acoustic waves. In this work the
range of frequencies to be deal with ANC is limited
r ( n) ¦ g x(n i ) ,
i 0
i
(2)
to the interval [200 Hz; 1000 Hz] since ANC is not
effective for frequencies above 1000 Hz and the where the gi are the I coefficients of the discrete
actual set-up used does not allow to go below 200 transfer function Gs(z), assuming that has a FIR
Hz. structure.
Digital Controller d(n)
x(n) + s(n) + u(n) + e(n) 2.1 Filtered-reference LMS (FX-LMS)
W(z) Gs(z)
+ - + Algorithm
f(n)
Gf (z)
This algorithm is based on the steepest descent
Gf (z) algorithm, which is mostly used for adapting FIR
Figure 2: Block diagram of feedforward control. controllers (Elliot, 2001). The expression for
adapting the coefficients of controller W(z) of fig. 2 is
given by:
2 FEEDFORWARD CONTROL w (n 1) w (n) P
wJ (3)
ww
The general block diagram of the feedforward
where J is a quadratic index of performance, equal to
control of acoustic plane waves in a duct is found in
the error signal squared e2(n), and ·/w is the
fig. 2. The signal x(n) is the reference signal
gradient:
measured by the reference microphone, d(n) is the
primary noise signal passed through the primary wJ (4)
path, e(n) is the error signal given by the error 2 E > r ( n )e( n ) @
ww
microphone, and Gs(z) is the secondary path between
the secondary source and the error sensor. It is For this algorithm a simpler version than the one
assumed that the controller is digitally implemented given by eq. (4) is used, since the expected value of
and made up by a direct filter W(z) and a feedback the product is not reckoned, but only the current
filter Ƣf(z). The feedback filter consists of an value of the gradient. Thus,
Active Acoustic Noise Control in Ducts 275
should be regarded as a disadvantage. The In this case, the adaptation is carried only after N
arrangement shown in fig. 4 allows overcoming this time samples. The use of the average of the product
limitation. In this scheme, the estimated filtered r(n)e(n) during N instants can be considered as a
reference signal, rˆ( n ) , in the adaptation path of the more precise estimate of the gradient than the use of
controller is common to the adaptive filter and to the the product r(n)e(n) for each time sample. In practice
adaptation, and has no time shift in relation to the adaptation with eq. (12) has a convergence rate very
modified error, e’m(n). similar to the FX-LMS algorithm, since though the
adaptation for eq. (12) has a lower frequency, the
Controller +
value of the update of the coefficients is larger
x(n) u(n) e(n)
w(n) Gs (z)
+
(Elliot, 2001). The summation in eq. (12) can be
Adaptive + thought of as an estimate of the crossed correlation
Gs (z)
filter -
d(n) between the filtered reference r(n) and the error
r(n) +
Gs (z) w(n) +
signal e(n). The estimate must be reckoned from i =
x e'm(n) 0 up to I-1, where I is the number of coefficients of
the adaptive filter. For long filters the reckoning of
Figure 4: Block diagram for MFX-LMS algorithm.
the estimate can be inefficient in the time domain,
requiring a large computational effort. For large
For this algorithm the adaptation is given by: values of I it is more efficient to calculate the cross
w ( n 1) w (n) D rˆ (n)em (n) (10) correlation in the frequency domain. If discrete
Fourier transform (DFT) with 2N points for the
where em(n) is the modified error, given by: signals e(n) and r(n) are considered, an estimate of
I 1 J 1
the cross spectral density can be calculated through:
em ( n) dˆ (n) ¦¦ wi (n) gˆ j x (n i j ). (11) Sˆre ( k ) R* (k ) E (k ) (13)
i 0 j 0
The modified error can be seen as a prediction of the where k is the index of discrete frequency and *
error for the case where the coefficients of the means the complex conjugate. Some care must be
controller do not change at each instant. The MFX- taken to prevent the effect of circular convolution.
LMS algorithm usually presents convergence rates Thus, before reckoning the DFT of the error signal,
larger than those of the FX-LMS algorithm (Elliot, e(n), with 2N points, in the block with 2N points of
2001). This is because the adaptive filter and the the error signal the first N points must be zero. This
plant estimate were interchanged and thus the delay will eliminate the non-causal part of the cross
between the exit of the controller and the error signal correlation (Elliot, 2001). The expression that gives
was eliminated. For this reason it is no longer the adaptation of the coefficients is:
necessary to consider the delay in the restriction of
w (m 1) w (m) D IFFT ^ Rm* (k ) Em (k )` (14)
the convergence coefficient, and larger steps may be
n N 1
D (12)
w (n N ) w ( n)
N
¦
l n
r (l )e(l )
Active Acoustic Noise Control in Ducts 277
d(n)
Gf (z)
x(n) + e(n)
W(z) Gs(z) d(n)
+ + +
s(n) u(n) + e(n)
x(n)+ +
Gs(z)
+
Get bi (n)
Concatenate first N
x x
two blocs points
aj (n)
H(z)
t(n)
FFT IFFT G'(z)
r(n)
X(k) G'(z)
^ D
G(k) 0 e Figure 7: Block diagram for filtered-u algorithm.
R(k) RH(k) E(k) Insert Zero
Conjugate FFT
Block The use of different convergence coefficients may be
shown in practice to allow for higher convergence
Figure 5: Block diagram for FX-LMS Freq algorithm. rates and the use of leakage factors slightly under 1
allows for a greater robustness of the algorithm
2.6 Filtered-u Algorithm (Elliot, 2001). The plants modified response, G'(z), is
equal to Gs(z). For that purpose, the coefficients of
Up to now Finite Impulse Response (FIR) filters the controller H(z) are assumed to be very slowly
have been considered to build the controllers. adapted in comparison to the dynamics of the system
However, Infinite Impulse Response (IIR) filters can of the system Gs(z). The same had already been
be used as well. In this case, the equivalent to fig.2 assumed for the adaptation of the FIR controller, but
for IIR controllers is shown in fig. 6. for the adaptation of the IIR controller this is even
more necessary since the controller is recursive. One
d(n) of the interesting characteristics of the filtered-u
u(n) + e(n)
x(n) + s(n) B(z)
+ t(n) Gs(z)
+ algorithm is that it presents a self-stabilising
+ behaviour that is also to be found in RLMS
1-A(z) algorithms (Elliot, 2001). During the adaptation of
H(z) the controller, if a pole leaves the unit-radius circle,
Gf (z) the natural evolution of filtered-u algorithm brings it
back inside. Although some researchers have
Figure 6: Block diagram for IIR controller. addressed this behaviour, still it was not possible to
discover the mechanism that results in this self-
Compared with the block diagram of fig. 2 for the stabilising property (Elliot, 2001). The self-
FIR controllers, we can notice that this does not stabilising behaviour is found in many practical
possess a specific feedback to cancel the natural applications, and that is why the filtered-u algorithm
feedback path of the system. In this case the is the most used in active cancellation of noise
recursive characteristic of IIR controllers is assumed applications (Elliot, 2001).
to deal with the feedback path problem. However,
practice shows that if this estimation is included
numerical stability is guaranteed and the
performance is improved. 3 EXPERIMENTAL SET-UP
The filtered-u algorithm uses IIR filter as
controller. It is based on the recursive LMS (RLMS) The experimental set-up used is shown in Fig. 8. A
algorithm (see Elliot (2001) or Haykin (2002)). Fig. PVC pipe with 0.125 m of diameter and 3 m of
7 shows the block diagram of the filtered-u length was used for simulating the cylindrical duct.
algorithm. The adaptation of the coefficients aj and bi Given the diameter of the duct, the cut-on frequency,
is given by: which is the frequency above which waves may no
a(n 1) J 1a(n) D1e(n)t (n) (15) longer be considered plane, is 1360 Hz. To simulate
(16) the acoustic noise to cancel a conventional
b( n 1) J 2b(n) D 2 e(n)r (n)
loudspeaker was placed in one of the ends of the
where D1, D2 are the convergence coefficients, t(n) duct. At 1.25 m away from this end two loudspeakers
and r(n) are respectively the filtered output and the are placed to act as source of acoustics waves for
filtered reference, and J1 and J2 are the forgetting noise cancellation. For the detection of acoustic noise
factors. a microphone, placed 0.08 m away from the primary
noise source, is used. The error microphone is placed
at the opposite end of the primary noise source.
278 F. Morais and J.M. S á da Costa
15 0
Without normal. FX-LMS
-2 Mod FX-LMS
10 Quadratic norm Filtered-U
Euclidean norm -4 FX-LMS Freq
5
-6
Attenuation (dB)
Attenuation (dB)
0 -8
-5 -10
-12
-10
-14
-15
-16
-20 -18
-25 -20
0 50 100 150 200 250 300
0 50 100 150 200 Time (s)
Time (s)
Figure 10: Evolution of attenuation for white noise.
Figure 9: Evolution of attenuation for the FX-LMS
algorithm.
Table 2: Execution time of each iteration for the white
noise case.
As can be observed the normalization of the
FX-
Algorithm MFX- Filtered FX-LMS
filtered reference signal allows obtaining higher LMS LMS -u Freq
attenuations. The quadratic norm is the only one that
ensures the stability of the algorithms when the Average time (ms) 0.044 0.067 0.081 0.027
spectral power changes. If this were not the case Maximum time (ms) 0.047 0.081 0.089 0.065
different adaptation steps would have to be used to
keep the algorithms stable. adaptation steps of FX-LMS and FX-LMS Freq
For the comparison of the algorithms two types algorithms had to be reduced so that they would
of disturbances had been considered: white noise and remain stable. Steps used were P = 0,03 for the FX-
pure tones. The frequency range of the white noise is LMS and P = 0,06 for the FX-LMS Freq.
[200 Hz; 1000 Hz], for the reason explained before. 0
Tones under 200 Hz have also not been used. FX-LMS
MFX-LMS
Parameters in the algorithms were chosen based -5
Filtered-u
upon other experiences that had shown the influence -10
FX-LMS Freq
-15
values are:
-20
x FX-LMS: w = 200, P = 0.10;
x MFX-LMS: w = 400, P = 0.1; -25
Attenuation (dB)
-8
An important question is the robustness to the
-10
degradation of the model of the acoustic feedback
-12
path Gf(z), since when this model becomes poor the
simplification assumed on point 2.1 (that the model -14
Oliver Oberschelp
Mechatronic Laboratory Paderborn, University of Paderborn
Pohlweg 98, D-33098 Paderborn, Germany
Oliver.Oberschelp@mlap.de
Keywords: Mechatronic, Self-optimization, Control, Hybrid Systems, Components, Reconfiguration, Unified Modelling
Language (UML), Real-Time
Abstract: Complex technical systems, such as mechatronic systems, can exploit the computational power available to-
day to achieve an automatic improvement of the technical system performance at run-time by means of self-
optimization. To realize this vision appropriate means for the design of such systems are required. To support
self-optimization it is not enough just to permit to alter some free parameters of the controllers. Furthermore,
support for the modular reconfiguration of the internal structures of the controllers is required. Thereby it
makes sense to find a representation for reconfigurable systems which includes classical, non-reconfigurable
block diagrams. We therefore propose hybrid components and a related hybrid Statechart extension for the
Unified Modeling Language (UML); it is to support the design of self-optimizing mechatronic systems by al-
lowing specification of the necessary flexible reconfiguration of the system as well as of its hybrid subsystems
in a modular manner.
Our suggestion is to integrate methods used in me- ables automatic implementation, but support for the
chanical engineering and software engineering to sup- modular reconfiguration is not given.
port the design of mechatronic systems with self- In (Conrad et al., 1998) guiding principles for the
optimization. We therefore combine component di- design of hybrid systems are sketched. It describes
agrams and state machines as proposed in the forth- how to apply techniques that are used in automo-
coming UML 2.0 (UML, 2003) with block diagrams tive engineering, like the combination of statecharts,
(Föllinger et al., 1994) usually employed by control blockdiagrams and commercial tools. Following this
engineers. The proposed component-based approach approach hybrid systems need to be decoupled into
thus allows a decoupling of the domains: A control discrete and continuous systems in the early design
engineer can develop the continuous controllers as phases. Therefore a seamless support and a common
well as their reconfiguration and switching in form of model are not provided.
hybrid components. A software engineer on the other Within the Fresco project the description language
hand can integrate these components in his design of Masaccio (Henzinger, 2000) which permits hierar-
the real-time coordination. As this paper focusses the chical, parallelized, and serially composed discrete
modeling aspect we set simulation aside. Simulation and continuous components has been developed. A
results can be found in (Liu-Henke et al., 2000). Masaccio model can be mapped to a Giotto (Hen-
In Section 2 we will examine related work. Section zinger et al., 2003) model, that contains sufficient in-
3 discusses problems resulting from reconfiguration formation about tasks, frequencies, etc. to provide an
by means of an application example. In Section 4, implementaion. The project provides a seamless sup-
our approach to hybrid modeling with an extension of port for modeling, verification and implementation,
UML components and Statecharts will be described. but our needs for advanced modeling techniques that
Thereafter we describe our model’s runtime platform support dynamic reconfiguration are not addressed.
in Section 5 and sum up in Section 6 with a final con-
clusion and an outlook on future work.
3 MODELING
RECONFIGURATION
2 RELATED WORK
We will use the switching between three controller
A couple of modeling languages have been proposed structures as a running example to outline the result-
to support the design of hybrid systems (Alur et al., ing modeling problems. The concrete example is an
1995; Lamport, 1993; Wieting, 1996). Most of these active vehicle suspension system with its controller
approaches provide models, like linear hybrid au- which stems from the Neue Bahntechnik Paderborn3
tomata (Alur et al., 1995), that enable the use of ef- research project. The project has been initiated and
ficient formal analysis methods, but lack of methods worked upon by several departments of the Univer-
for structured, modular design, that is indispensable sity of Paderborn and the Heinz Nixdorf Institute. In
in a practical application (Müller and Rake, 1999). the project, a modular rail system will be developed;
To overcome this limitation, hybrid automata have it is to combine modern chassis technology with the
been extended to hybrid Statecharts in (Kesten and advantages of the Transrapid4 and the use of existing
Pnueli, 1992). Hybrid Statecharts reduce the visual rail tracks. The interaction between information tech-
complexity of a hybrid automaton through the use of nology and sensor/actuator technology paves the way
high-level constructs like hierarchy and parallelism, for an entirely new type of mechatronic rail system.
but for more complex systems further concepts for The vehicles designed apply the linear drive technol-
modularization are required. ogy used in the Transrapid, but travel on existing rail
The hybrid extensions HyROOM (Stauner et al., tracks. The use of existing rail tracks will eliminate an
2001), HyCharts (Grosu et al., 1998; Stauner, 2001) essential barrier to the proliferation of new railbound
and Hybrid Sequence Charts (Grosu et al., 1999) of transport systems (Lückel et al., 1999).
ROOM/UML-RT integrate domain specific model- Figure 1 shows a schema of the physical model of
ing techniques. The software’s architecture is spec- the active vehicle suspension system. The suspen-
ified similar to ROOM/UML-RT and the behavior sion system of railway vehicles is based on air springs
is specified by statecharts whose states are asso- which can be damped actively by a displacement of
ciated with systems of ordinary differential equa- their bases. The active spring-based displacement is
tions and differential constraints (HyCharts) or Mat- effected by hydraulic cylinders. Three vertical hy-
lab/Simulink block diagrams (HyROOM). HyROOM draulic cylinders, arranged on a plane, move the bases
models can be mapped to HyCharts (Stauner et al.,
3
2001). Through adding tolerances to the continuous http://www-nbp.upb.de/en
4
behavior this interesting specification technique en- http://www.transrapid.de/en
Hybrid UML Components for the Design of Complex Self-Optimizing Mechatronic Systems 283
air springs
tools. Block diagrams consist generally of function
A B C
blocks, specifying function resp. behavior and hier-
hydr. actuators
archy blocks grouping function and hierarchy blocks.
This allows a structured draft and reduces the over-
all complexity of a block diagram. Between single
blocks exists connections or couplings, which can
have the shape of directed or non-directed links. With
Figure 1: Scheme of the suspension/tilt module.
directed links data is exchanged whereas non-directed
ones often describe functional relations or physical
links, such as a link between mass and spring in multi-
of the air springs via an intermediate frame, the sus- body system representation. While parameter opti-
pension frame. This arrangement allows a damping of mization can be described using simply an additional
forces in lateral and vertical directions. In addition, it connection for the parameter, the static structure of
is also possible to regulate the level of the coach and block diagrams does not permit to model structural
add active tilting of the coach body. Three additional modifications (Isermann et al., 1992).
hydraulic cylinders allow a simulation of vertical and We can, however, use special switches or fading
lateral rail excitation (Hestermeyer et al., 2002). The blocks to describe the required behavior. The con-
vital task for the control system is to control the dy- troller in our example has two normal modes: Ref-
namical behavior of the coach body. In our example, erence and absolute. The controller reference uses a
we will focus only on the vertical dynamic behavior of given trajectory that describes the motion of the coach
the coach body. The overall controller structure com- body zref = f (x) and the absolute velocity of the
prises different feedback controllers, e.g., for control- coach body żabs (derived from z̈abs ). The zref tra-
ling the hydraulic cylinder position and the dynamics jectory is given for each single track section. A track
of the car body. section’s registry communicates this reference trajec-
tory to the vehicle. In case a reference trajectory is
Y ref. Z ref. reference overall
Yairsp
Z airsp, L
a ref. not available, another controller which requires only
Z airsp, R the absolute velocity of the coach body żabs for the
Y
damping of the coach-body motion has to be used.
X Z, A F lat. XZ, A, ref.
Z
DT .
Y XZ, B, ref.
Besides the regular modes another controller
XZ, B F lift
tuning
XZ, C
decoupling
a
DT .
Z forces M tilt
coupling
XZ, C, ref.
named robust is required for an emergency; it must be
DT .
.. a able to operate even if neither the reference trajectory
}
switching the change can take place between two FadeRobAbs Legend:
z̈abs special input
computation steps. To start the new controller up, it <Rob
Abs> d1low ≤ t0 ≤ d1up
is often necessary to initialize its states on the basis Absolute
common input
t0 ≤ d1up
of the states of the old controller. In our example, the z̈abs common output
zAbsFailure t0 = 0 <Abs>
switching from the normal block to the failure block zAbsOK
zAbsFailure
zRefOK
(see Figure 3) can be processed atomically because Robust
zAbsFailure
d2low ≤ t0 ≤ d2up t0 = 0
the robust controller actually has no state. Different FadeRefAbs zRefFailure FadeAbsRef
zref zref
theoretical works deal with the verification of stabil- <Rob>
z̈abs <Ref z̈abs <Abs
ity in systems with any desired switching processes Abs>
d3low ≤ t0 ≤ d3up
Ref>
zAbsOK
(Lygeros et al., 2003). In the simple case of a switch zAbsFailure t0 = 0 t0 ≤ d2up t0 ≤ d3up
zRefFailure
to a robust controller, stability can be maintained with FadeRobRef
zref t0 = 0 Reference
zref
the help of condition monitoring (Deppe and Ober- z̈abs <Rob
Ref>
zAbsFailure
z̈abs
<Ref> zRefOK
schelp, 2000). d4low ≤ t0 ≤ d4up
t0 ≤ d4up
If, however, the operating points of the controllers zAbsFailure
notion for hybrid components in Section 4.3, and the zAbsOK Absolute
ff ade4 z̈abs
modular reconfiguration in Section 4.4. The exact for- d4
zAbsFailure <Abs>
malization is presented in (Giese et al., 2004). Robust
d2
4.1 Hybrid UML Model <Rob>
zRefFailure
ff ade2
zRefOK
ff ade3
In Figure 5c the overall structural view of our exam-
ple is presented by means of a UML component di- zAbsOK ff ade1
d3
Default Proceed
4.3 Hybrid Components
storage : Storage
/ shuttle.sendInfo(
Vector zRef) One serious limitation of today’s approaches for hy-
brid systems is due to the fact that the continuous part
Figure 5: Monitor and its environment (incl. behavior). of each location has to have the same set of required
input and provided output variables (continuous in-
The embedded components communicate continu- terface). To foster the reconfiguration we propose to
ous signals through so called continuous ports, de- describe the different externally relevant continuous
picted by framed triangles whose orientation indicates interfaces as well as the transition between them us-
the direction of the signal flow, and discrete events ing hybrid interface Statecharts.
through discrete, non-filled ports. d4
zAbsOK
[Absolute]
d2
A look at the hybrid automaton from Figure 4 re-
zRefFailure
veals that the explicit fading locations considerably zRefOK
increase the number of visible locations of the au-
tomaton and make it unnecessarily difficult to under- zAbsOK
d3
stand. [Reference]
zref
Therefore we propose an extension of UML State- d1 z̈abs
sitions, are present. that the topology of hierarchical block diagrams could
Interface Statecharts can be employed to ab- be seen as a tree. With the leafs of this tree repre-
stract from realization details of a component. A senting the behavior whereas the inner nodes describe
component in our approach can thus be described the structure of the system. This distinction between
as a UML component – with ports with distinct structure (hierarchy) and function (block) can be used
quasi-continuous and discrete signals and events– by for the required modular reconfigurable systems. In
• a hybrid interface Statechart which is a correct our context, a reconfiguration can be understood as a
abstraction of the component behavior (cf. (Giese change in the structure resp. substructure of a block
et al., 2004)) which determines what signals are diagram. It alters the topology of the system; func-
used in what state, tions are added and/or interlinked anew. Thus to real-
• the dependency relation between the output ize modular reconfiguration we only have to provide
and input signals of a component per state of a solution to alter the hierarchical elements (cf. Fig.
the interface Statechart in order to ensure only 8). In this manner the required coordination of aggre-
acyclic dependencies between the components, and gated components can be described using a modular
• the behavior of the component usually described Hybrid statechart which alter the configurations of its
by a single Hybrid Statechart and its embedded hybrid subcomponents (see Figure 9).
subcomponents (see Section 4.4).
In our example, the BC component is described by
its hybrid interface Statechart presented in Figure 7, when(nextSegment) when(nextSegment)
data(Vector zRef)? /
data(Vector zRef)? /
the additionally required information on which de- db
pendencies between output and input variables exist AllAvailable AbsAvailable
controllers. sensor.failure
dc
sensor.ok
sensor.ok
basic block basic block Figure 9: Monitor behavior with modular reconfiguration
of the subcomponent BC .
basic block
hierarchy
hierarchy Figure 9 specifies the behavior of the control mon-
itor software. The upper AND-state consists of four
locations indicating which of the two signals z̈abs and
basic block zref are available. Some transitions can fire imme-
interchange,
reconfiguration diately, others are associated with a deadline interval
hierarchy d = [dlow , dup ] specifying how much time a transi-
A
tion may take minimal and maximal. These transi-
tions are thicker and marked with an arrow and the
B
intervals (da , . . . , dd ). The lower branch of the mod-
ular Hybrid statechart communicates with the track
Figure 8: Reconfigurable block diagram. section registry (Figure 5c), frequently requests the
zref function, and puts it in the storage.
To overcome this limitation, we propose to assign In the Hybrid Statechart, every discrete state has
the required configuration of embedded subcompo- been associated with a configuration of the subcom-
nents (not only quasi-continuous blocks) to each state ponents (BC, Sensor, Storage). In the design of these
of a Hybrid Statechart by means of UML instance di- associations, only the interface description of the em-
agrams. This idea is motivated by the observation bedded component BC (see Figure 7) is relevant and
Hybrid UML Components for the Design of Complex Self-Optimizing Mechatronic Systems 287
the inner structure can be neglected. Therefore, as to continuous conditions in the hybrid statecharts to a
shown in Figure 9, we can assign to each location of detection within the desired time slot (cf. (Henzinger
the upper AND-state of the statechart the BC compo- et al., 2003; Stauner, 2002)).
nent in the appropriate state. E.g., the BC component
instance in state Reference has been (via a visual em-
bedding) assigned to the location AllAvailable of the
monitor where zref as well as z̈abs are available. The
6 CONCLUSION AND FUTURE
required structure is specified by instances of the Sen- WORK
sor and the Storage component and the communica-
tion links. Complex mechatronic systems with self-optimization
The Hybrid Statechart of Figure 9 defines a map- are hybrid systems which reconfigure themselves at
ping of states to required configurations of the sub- run-time. As outlined in the paper, their modeling
components. The required synchronization between can hardly be done by the approaches currently avail-
the components is accomplished through explicit rais- able. Therefore, we propose an extension of UML
ing of the discrete signals defined in Figure 7. components and Statecharts towards reconfigurable
hybrid systems which supports the modular hierarchi-
cal modeling of reconfigurable systems with hybrid
components and hybrid Statecharts.
5 RUN-TIME ARCHITECTURE The presented approach permits that the needed
discrete coordination can be designed by a software
In order to reach interoperability for mechatronic sys- engineer with extended Statecharts. In parallel, a con-
tems, which are only alterable within certain limits, trol engineer can construct the advanced controller
one can use appropriate middleware solutions like component which offers the technical feasible recon-
IPANEMA (Honekamp, 1998), which allows abstrac- figuration steps. These two views can then be inte-
tion from hardware details. IPANEMA is a plat- grated using only the component interface of the con-
form concept for distributed real-time execution and troller component.
simulation to support rapid prototyping. It allows It is planned to support the presented concepts by
a modular-hierarchical organization of tasks or pro- both the CAE tool CAMeL (Richert, 1996) and the
cesses on distributed hardware. CASE tool Fujaba (Giese et al., 2003). With both
In order to make interoperability possible also for tools, the result of every design activity will be a hy-
hybrid components, which contain the kinds of alter- brid component. Each of these hybrid components it-
ation capability described above, the support of alter- self can integrate hybrid components. The integration
ation capability by the middleware must be consider- only requires the information given by the component
ably extended. First it is necessary to generate the interface. Additional automatic and modular code
models in accordance to their modular-hierarchical generation for the hybrid models and run-time sup-
structure. This is the basis for a reconfiguration. port for the reconfiguration will thus result in support
In each discrete location of the system the equa- for the modular and component-based development of
tions, that implement the currently active controllers, self-optimizing mechatronic systems from the model
have to be employed to compute the correct continu- level down to the final code.
ous behavior. Thus in every location of this kind only
the relevant equations have to be evaluated. To reach
this aim, the architecture provides means for every REFERENCES
component to adjust the set of active equation blocks
in such a way that the required reconfiguration of the (2003). U L 2.0 Superstructure Specification. Object Man-
component system is efficiently managed. agement Group. Document ptc/03-08-02.
In the modular execution framework outlined, the Alur, R., Courcoubetis, C., Halbwachs, N., Henzinger, T.,
required execution order results from the local eval- Ho, P.-H., Nicollin, X., Olivero, A., Sifakis, J., and
uation dependencies within each component as well Yovine, S. (1995). The algorithmic analysis of hybrid
as from their interconnection. It must thus be deter- systems. Theoretical Computer Science, 138(3-34).
mined at deployment-time or run-time. Alur, R., Dang, T., Esposito, J., Fierro, R., Hur, Y., Ivan-
The continuous nonlinear differential equations are cic, F., Kumar, V., Lee, I., Mishra, P., Pappas, G., and
solved by applying suitable numeric solvers. Com- Sokolsky, O. (2001). Hierarchical Hybrid Modeling of
Embedded Systems. In irst Workshop on mbedded
putation is time-discrete. Incrementation depends on Software.
the solver and the dynamics of the continuous system. Bender, K., Broy, M., Peter, I., Pretschner, A., and Stauner,
A time-accurate detection of a continuous condition T. (2002). Model based development of hybrid sys-
is not possible if the controller is coupled with a real tems. In odelling, nalysis, and Design of Hybrid
technical system. Thus, we restrict the urgent reaction
288 S. Burmester, H. Giese and O. Oberschelp
Systems, volume 279 of Lecture Notes on Control and Kesten, Y. and Pnueli, A. (1992). Timed and hybrid
Information Sciences, pages 37–52. Springer Verlag. statecharts and their textual representation. In Proc.
Conrad, M., Weber, M., and Mueller, O. (1998). Towards ormal Techniques in eal-Time and ault-Tolerant
a methodology for the design of hybrid systems in Systems, 2nd International Symposium, LNCS 571.
automotive electronics. In Proc. of the International Springer-Verlag.
Symposium on utomotive Technology and utoma- Kühl, M., Reichmann, C., Prötel, I., and Müller-Glaser,
tion (IS T ’98). K. D. (2002). From object-oriented modeling to
Deppe, M. and Oberschelp, O. (2000). Real-Time Sup- code generation for rapid prototyping of embedded
port For Online Controller Supervision And Optimi- electronic systems. In Proc. of the 13th I In-
sation. In Proc. of DIP S 2000. Workshop on Dis- ternational Workshop on apid System Prototyping
tributed and Parallel mbedded Systems, echatron- (SP’02), Darmstadt, Germany.
ics Laboratory Paderborn, University of Paderborn. Lamport, L. (1993). Hybrid systems in tla+. Springer.
Föllinger, O., Dörscheid, F., and Klittich, M. (1994). Lückel, J., Grotstollen, H., Jäker, K.-P., Henke, M., and
egelungstechnik - inführung in die ethoden und Liu, X. (1999). Mechatronic design of a modular rail-
ihre nwendung. Hüthig. way carriage. In Proc. of the 1999 I / S Inter-
Giese, H., Burmester, S., Schäfer, W., and Oberschelp, national Conference on dvanced Intelligent echa-
O. (2004). Modular Design and Verification of tronics ( I 99), Atlanta, GA, USA.
Component-Based Mechatronic Systems with Online- Li, P. Y. and Horowitz, R. (1997). Self-optimizing control.
Reconfiguration. In Proc. of 12th C SIGSO T In Proc. of the 36th I Conference on Decision and
oundations of Software ngineering 2004 ( S Control (CDC), pages 1228–1233, San Diego, USA.
2004), Newport Beach, US . ACM. (accepted). Liu-Henke, X., Lückel, J., and Jäker, K.-P. (2000). De-
Giese, H., Tichy, M., Burmester, S., Schäfer, W., and Flake, velopment of an Active Suspension/Tilt System for
S. (2003). Towards the Compositional Verification of a Mechatronic Railway Carriage. In Proc. of the 1st
Real-Time UML Designs. In Proc. of the uropean I C-Conference on echatronics Systems (echa-
Software ngineering Conference ( S C), Helsinki, tronics 2000), Darmstadt, Germany.
inland. Copyright 2003 by ACM, Inc. Lygeros, J., Johansson, K. H., Simic´, S. N., Zhang, J., and
Grosu, R., Krueger, I., and Stauner, T. (1999). Hybrid se- Sastry, S. S. (2003). Dynamical Properties of Hy-
quence charts. Technical Report TUM-I9914, Techni- brid Automata. In I T NS CTIONS ON UTO-
cal University Munich, Munich. TIC CONT OL, VOL. 48, NO. 1, J NU Y 2003,
Grosu, R., Stauner, T., and Broy, M. (1998). A modular volume 48.
visual model for hybrid systems. In Proc. of ormal Müller, C. and Rake, H. (1999). Automatische Synthese von
Techniques in eal-Time and ault-Tolerant Systems Steuerungskorrekturen. In KONDISK-Kolloquium
( T T T’98), LNCS 1486. Springer-Verlag. Berlin.
Richert, J. (1996). Integration of mechatronic design tools
Henzinger, T. A. (2000). Masaccio: A Formal Model for with camel, exemplified by vehicle convoy control de-,
Embedded Components. In Proceedings of the irst sign. In Proc. of the I International Symposium
I IP International Conference on Theoretical Com- on Computer ided Control System Design, Dearborn,
puter Science (TCS), Lecture Notes in Computer Sci- Michigan, USA.
ence 1872, Springer-Verlag, 2000, pp. 549-563. Stauner, T. (2001). Systematic Development of Hybrid Sys-
Henzinger, T. A., Ho, P.-H., and Wong-Toi, H. (1995). tems. PhD thesis, Technical University Munich.
HyTech: The Next Generation. In Proc. of the 16th Stauner, T. (2002). Discrete-time refinement of hybrid
I eal-Time Symposium. IEEE Computer Press. automata. In Tomlin, C. and Greenstreet, M., edi-
Henzinger, T. A., Kirsch, C. M., Sanvido, M. A., and Pree, tors, Proceedings of the 5th International Workshop
W. (2003). From Control Models to Real-Time Code on Hybrid Systems: Computation and Control (HSCC
Using Giotto. In I Control Systems agazine 2002), volume 2289 of Lecture Notes in Computer
23(1):50-64, 2003. Science, page 407ff, Stanford, CA, USA.
Hestermeyer, T., Schlautmann, P., and Ettingshausen, Stauner, T., Pretschner, A., and Péter, I. (2001). Ap-
C. (2002). Active suspension system for railway proaching a Discrete-Continuous UML: Tool Support
vehicles-system design and kinematics. In Proc. of and Formalization. In Proc. U L’2001 workshop on
the 2nd I C - Confecence on mechatronic systems, Practical U L-Based igorous Development eth-
Berkeley, California, USA. ods – Countering or Integrating the eXtremists, pages
Honekamp, U. (1998). IP N - Verteilte chtzeit- 242–257, Toronto, Canada.
Informationsverarbeitung in mechatronischen Syste- Wieting, R. (1996). Hybrid high-level nets. In Proceedings
men. PhD thesis, Universität Paderborn, Düsseldorf. of the 1996 Winter Simulation Conference, pages 848–
Isermann, R., Lachmann, K.-H., and Matko, D. (1992). 855, Coronado, CA, USA.
daptive Control Systems. Prentice Hall, Herford-
shire.
AUTHOR INDEX