Sie sind auf Seite 1von 6

2004 IEEE lntemational Conference on Systems, Man and Cybernetics

Survey on the Performance Analysis of Networked

Control Systems*
Yu Jianyong Yu Shimin Wang Haiqing
Institute of Intelligent Information System National Laboratoty of Industrial Control
Zhejiang University of Technology technology
Hangzhou, 310032, China Zhejiang University
yuiyona( vsm@ziut, Hangzhou, 3 10027, China

Abstract: The insertion of the communication nehvork in analyze an NCS from the discrete-time point of view. For
thefeedback coiitrol loop makes the analysis and design of discrete-time models, most researchers assume that
a nehvorked control system more complex, and induces the network is synchronized and the sampling rates of
some issues that degrade the control system's performance sensors, controllers, and actuators are the same. Some work
orid even couse system instubility. This poper focuses on adopted continuous-time models of NCSs, such as
moin ospecfs around perfoimance analJ.sis of NCSs: [2,4,5,6]. Current research shows that analyzing methods
nehvork-induced delays, somplirig period, jitter, data used for an NCS include stochastic Lyapunov function,
pocket dropout, nehvork scheduling and stability. These augmented state space, jump linear systems, and limited
issues must be considered in the design of an NCS. communication.
Therefore. this work summurizes many reseorch results, Without loss of generality, a closed-loop block
ond remarks some related handling opprooches and diagram of an NCS is shown in Fig1 . Where, the controller
techniques. The main purpose of the survey is to present node and the actuator node are event-driven while the
new research state of NCSs and point out some fields of sensor node is clock-driven.
fLfure researches.

Key words: network-induced delays, jitter, packet dropout,

network scheduling, stability . I ..~.
.. . ... "" - .,. . . ... ... I I

.... "" ,,. I d

:. . .

1. Introduction
Feedback control systems wherein the control loops
are closed through a real-time network are called networked
control systems (NCSs) [1,2,3]. NCSs can deal with all the
continuous, discrete and hybrid control asynchronous
processes, and support various topologies, including bus, I I
star and tree, which are more flat and stable than the Figure 1: The closed-loop block diagram of an NCS
structure used in hierarchical control system. As an
alternative to traditional point-to-point communication, the The remainder of this paper is organized as follows:
common-bus network architecture of NCSs offer more Sections 2-7 analyze six fundamental issues that influence
efficient reconfiguration, better resource utilization, and performance of an NCS respectively: network-induced
also reduce installation and maintenance cost. However, the delays, sampling period, jitter, data packet dropout,
change introduces different forms of time delays network scheduling and stahility. Many research results are
uncertainty between sensors, actuators, and controllers. It is given and related handling approaches are also remarked.
well known in control systems that time delays can degrade The conclusion and future work are presented in Section 8.
a system's performance and even cause system instahility.
Because of the variability of network-induced time
delays, NCSs may be time-varying systems, making
analysis and design more challenging. It is natural to
~~ ~~~

* This work was supported by the National Nature Science Foundation of P. R China (No.20206028).
* 0-7803-85667/04/$20.00 0 2004 IEEE.

2. Network-Induced Delays beyond a critical point, sampling frequency begins to
In an NCS, various delays with variable length occur adversely affect NCSs performance, because of network
due to sharing a common network medium, which are loading when the number of messages are close to the
called network-induced delays [7]. network saturation limit, message delivery time delays
Tow classes of time delays are included in an NCS: ( I ) increase and in some cases become unbounded [U].
Optimizing the performance of an NCS can be achieved by
the delay from a sensor to a corresponding controller, T,, ; balancing the increasing network sampling frequency with
(2) the delay from a controller to a corresponding actuator, the resulting network performance degradation.
T, . Network-induced delays may vary widely according While a shorter sampling period is preferable in most
control systems, for some purposes it can be lengthened up
to the transmission time of messages and the overhead ,time. to a certain bound within which stability of the system is
The transmission time through the media is largely guaranteed in spite of the performance degradation. This
dependent on the network protocols, especially data link certain bound is called a maximum allowable delay hound
layer protocols of networks and message length, whereas (MADB) [7,13,14]. A basic sampling period consists of
the overhead time is largely dependent on the network sampling delay, transmission time of periodic data,
scheduling method. transmission time of sporadic data, and transmission time of
In order to analyze control systems with network messages. The largest sampling period in an NCS depends
delays in a loop, [SO91 used three models of the network on the largest MADB. [I51 presented a sampling period
delays: ( I ) Constant delay; (2) Random delays which are determination algorithm.
independent between T, and T, ;(3) Random delay, with In an NCS, a sampling period should be long enough
probability distributions govemed by an underlying to guarantee real-time transmission of sporadic data and
Markov chain. Model (1) is the simplest model for all periodic data, and minimum network utilization for a
transfers in the communication network and may be a good periodic data. However, the sampling period should be
model even if the network has varying delays. One way to short in order to be within the MADB to guarantee the
achieve constant delays is by introduction of timed buffers stability of the given system. Sometimes the sampling
after each transfer. By making these buffers longer than the period may exceed the MADB because of network-induced
worst case delay time the transfer time can be seen as being delays. Therefore, it is important to decrease the sampling
constant. This method to make the communication delays period by minimizing network-induced delays.
constant was proposed in [IO]. A drawback with this Due to the interaction of the network and control
method is that the delay time often is longer than neces:rary, requirements, the selection of the best sampling period is a
which can lead to decreased performance as shown in compromise. Smaller sampling periods guarantee a better
[8,9,11]. Network delays are usually random because of control quality, but result in high frequency communication
several sources, for instance, waiting for the network to and may degrade the network quality. The degradation of
become idle; a retransmission of urgent data is needed network quality could further worsen the control quality
when transmission errors occur; nodes waiting far a due to longer time delays when the network traffic is nearly
random time to avoid a collision at the next try when some saturated [12,16]. In general when the number of messages
networks collisions occur, and so on. As the activities in the on the network increases, system nodes experience longer
system usually are not synchronized with each other,, the delays for sending and receiving information [17]. The
above listed delays will be random. Model (2) assume!; the selection of the hest sampling period is presented in
transfer delay is independent of the previous delay and. has [7,12,16,18].
different probability distributions for Ts, and Tco.To
model network queues and varying network loads, Model 4. Jitter
(3) needs to have a memory. One way to model dependance Jitter is defined by IEEE as time-related, abrupt,
between samples is by letting the distribution of the spurious (false) variations in the duration of any specified
network delays be govemed by the state of an underlying related interval, and arises due to clock drift, branching in
Markov chain. The transitions between different network the code, scheduling, communication, and use of certain
load states in the communication network are modeled with computer hardware structure, e.g. cache memory. From the
a Markov chain. The model is closely related to the models view of control, jitter is categorized as: control period jitter,
used in jump systems, but its each state postulates different delay jitter and sampling jitter. From the view of
probability distributions for T, and Tu. scheduling, jitter is categorized as: input jitter, output jitter,
queuing jitter and deadline jitter. [I91 considered six
different jitters, and reduced to three cases: sampling jitter,
3. Sampling Period sampling-actuation delays, and both combined. All kinds of
jitter should be as small as possible to improve control
The performance of an NCS is highly dependent on
the network sampling time. Increased network sampling
It is noted that vacant sampling and sample rejection
time can improve the performance of the system. Howe:ver,
are harmful to all computer systems, not only control

systems. Jitter degrades performance and causes instability Network packet drops occasionally happen in NCSs
even if for the case when vacant sampling or sample when there are node failures or message collisions.
rejection does not occur. The jitter distorts a signal in a Although most network protocols are equipped with
control system. The degradation depends very much on the transmission-retry mechanisms, they can only retransmit for
dynamics of the process and on the type of jitter. The only a limited time. After this time has expired, the packets are
way to get rid of delay jitter is to use a buffer, trading delay dropped. Furthermore, for real-time feedback control data
for jitter. Stability in case of jitter has been treated by [20] such as sensor measurements and calculated control signals,
and others. A stochastic model for the jitter is usually it may be advantageous to discard the old, no-transmitted
assigned for the analysis and design of controllers, e.g. a message and transmit a new packet if it becomes available.
rectangular distribution around a mean value, or a Markov In this way, the controller always receives fresh data for
chain. control calculation. Normally, feedback-controlled plants
The jitter compensation approach in a real-time system can tolerate a certain amount of data loss, but it is valuable
needs to be investigated with respect to its implementation to determine whether the system is stable when only
cost (computational overhead and memory requirements) transmitting the packets at a certain rate and to compute
and the availability of the necessary information to acceptable lower bounds on the packet transmission rate.
recalculate the controller parameters when it is needed In [1,15], an NCS with dropouts is modeled as
(information availability). With respect to the asynchronous switched system. The approach replaces the
implementation cost, at each control task instance true-switched system with an "averaged system" and then
execution, the controller parameters must be updated provides some sufficient stability conditions on the system.
according to the actual jitters. Two strategies may be Because only average dropout rates are considered, the
applied runtime or ofline calculations. If the controller achieved results may be very conservative. Another
parameter adjustment is performed by online extra important contribution is found in (31. In this work, the
calculations according to actual jitters, the introduced dropouts are modeled by a Markov chain with two states
computational overhead will depend on the control design and are treated as vacant sampling. This work proposes two
method and controller design strategy that is being used. If approaches for handling data dropouts: using past control
the computational overhead is not negligible, the controller signals or estimating the lost data and computing new
parameter adjustment can be performed online by accessing control signals. The stability of an optimal LQ controller
oMine pre-calculated lookup tables. These tables will under the two approaches is analyzed. This work,
contain the necessary parameters to allow the control unfortunately, does not provide a rigorous analysis of the
computation to compensate for sampling jitter and the dropout model and only demonstrates the results through
sampling-actuation delays that may appear at runtime. examples. [25] extends the method proposed in [26] to
Some recent research has focused on the jitter problem dropout processes governed by Markov chains, and
itself using specific scheduling-based solutions [21, 22,231. assumes that the feedback measurements are randomly
However, even after modifying the scheduling algorithm, in dropped with a distribution selected from an underlying
these approaches, jitter is not completely eliminated. [19] Markov chain. The main result of [25] is an equation that
proposed to accept the jitter that the scheduling algorithm is expresses the power in the networked control system's
bound to introduce and to compensate for it at runtime in output signal as a function of the Markov chain's
the controller design so as to minimize the system probability transition matrix.
degradation that would otherwise occur. Network saturation occurs when the network traffic
In [24], control delay jitter is investigated by increases beyond a point when not all messages can be
simulation of a servo. A static delay-compensating delivered to their destinations in time. Messages may
controller is designed to compensate for random delays, experience long delays due to queuing in buffers, or may be
which are close to the expected mean value. [3] also treats lost due to collisions. Network saturation can be retarded
control period jitter, timeout and vacant sampling. [19] by better utilizing network bandwidth. For a given
proposed a new approach for real-time scheduling of sampling frequency, implementing estimation methods in
control systems by compensating for sampling jitter and an NCS would reduce network traffic increasing the
sampling-actuation delays through the adjustment of effective bandwidth of the system. By defining dead bands
controller parameters. on broadcasting nodes [27], the amount of traffic can be
5. Data Packet Dropout
The network can be viewed as a web of unreliable data 6. Network Scheduling
transmission paths. Some packets not only suffer from In feedback control systems, it is necessary to find the
transmission delay but also may be lost during transmission maximum allowable delay bound (MADB) for stability of
for the worse case. Thus, how such packet dropouts affect NCSs [7,13], and then to find an appropriate network
the performance of an NCS is an issue that must be scheduling method that limits the network-induced delay to
considered. less than the MADB. A network scheduling method is
required to reduce a basic sampling time within the MADB,

while guaranteeing real-time transmission of sporadic and exponential distribution. The stochastic Lyapunov function
periodic data, and to minimize network utilization for non- method holds much promise for determining almost-sure
real time message. The network in an NCS should h;andle stability and control system performance. The approach in
network scheduling algorithms differing in some [3 I ] provided guarantees by employing transmission
characteristics from processor scheduling algorithms, such deadlines. For the fust time, [31] proposed a novel
as the rate monotone scheduling algorithms and. the protocol, try-once-discard (TOD) protocol, which employs
deadline monotone scheduling algorithms. These processor- dynamic scheduling, allocating network resource based on
scheduling algorithms have limitations when applied to the need. In TOD, the node with the greatest weighted error
NCSs, because a retransmission of periodic data with old from the last reported value will win the competition for the
values suspended by other urgent data transmissions is network resource. Such a method is vulnerable to noise.
meaningless. While the purpose of conventional scheduling The augmented state space method and jump linear
methods focused on whether all types of data can be control system method are two significant methods
transmitted within a given bandwidth or sampling period, proposed in the literatme for analyzing and designing an
the presented methods focus on that of the conventional NCS. The former one reduced the problem to a finite
methods using MADB as well as setting of transmission dimensional discrete-time control by augmenting the
order of data. By setting the transmission order of data, the system model to include past values of plant input and
smaller sampling period can he obtained than one from the output (is,, delayed variables) as additional states [5,33]. A
conventional algorithm. necessary and sufficient condition for system stability was
A scheduling algorithm that can allocate the established only for the special case of periodic delays. This
bandwidth of a network and determine sensor data technique is very useful for developing control laws to
sampling periods was presented by [28]. In [ZS], the control improve the performance of an NCS [34,35,36] except that
system had only single input and single output (SISO), only it fails to give a general stability condition for random
periodic data were considered, and the MADB was not delay. In [37], distributed linear feedback control systems
obtained analytically. A network scheduling method with random communication delays were modeled as a
considering three'types of data based on a multi-input and jump linear control systems, in which random variation of
multi-output (MIMO) system was proposed by [29]. system delays corresponds to randomly varying structure of
However, the estimation of MADB using the Ricatti the state-space representation. Necessary and sufficient
equation is too conservative, which means the estimated conditions were found for zero-state mean-square
MADB is too small, but the network scheduling method exponential stability of the considered class of systems.
discussed in [29] is somewhat heuristic. In [1,2,30,31,32], This method requires that the transition probability matrix
calculation methods of MADB for stability analysis of an is known a priori. Furthermore, both methods were limited
NCS were also presented. to the one packet transmission problem.
However, these results about calculation of MADIB are An NCS with data packet dropout can he modeled as
conservative to be of practical use and still need to be an asynchronous dynamical system (ADS) with rate
improved. Further research is needed with regard to an constraints on events. The stability of this type of system is
estimation of a less conservative MADB for stability of the studied in [15,38]. In [1,15], stability of an NCS was also
NCSs and systematic scheduling methods for three types of characterized using a hybrid system stability analysis
data are demanded for NCSs. [7] proposed a new method to technique and modeled an NCS with packet dropout and
obtain the MADB guaranteeing stability in terms of linear multiple-packet transmission (which may occur due to the
matrix inequalities (LMI) based on [13,14]. This method limitation of the control network) as an asynchronous
gave a much less conservative delay bound than the dynamical system. Stability regions and stability of an NCS
existing methods. It allocates the bandwidth of a network to have been proposed using a hybrid system technique in [I].
a node, determines the sensor data sampling periods of each The influence of sampling period to the stability of an NCS
loop using the obtained MADB, guarantees real-time has been presented in [Z].
transmission of sporadic data and periodic data within the
sampling periods, and minimizes the network utilization for
message. The proposed approach differs from the popular 8. Conclusions and Future Work
queuing analysis because there is no queue for time-critical The improvement of NCSs performance can he
periodic data. divided into two areas. First, to further guarantee the
determinism of transmission time and reduce the end-to-cod
time delays, device-processing times should be minimized
7. Stability of NCSs and network protocols can be improved. Second, advanced
The stability is a basic problem in the design of an optimal or robust controller design can overcome the
NCS. uncertainty in an NCS and achieve the best control
The occurrence of trammission events on the nekvork performance.
is unknown and often modeled as a random process, e.g., As the nodes distributed independently, the multi-rate
Poisson process, and the resulting interval between each sampling is natural for NCSs, hut it always brings about
access to the network are independent and have an some problems: e.g., the constraint of network bandwidth

requests better signal quality; redundant signals cause [8] Nilson, J., Bermhardsson, B. and Wittermark,
delay, vacant sampling. It is common to adopt the event- Schtochastic Analysis of control of real time systems with
triggered sampling to deal with the constraint of network random time delays, Aufomafica, 34, (I), pp.57-64. B.
bandwidth and the negative impact of redundant signals on 1998.
the performance of system. [9] Nilson,J., Real time control systems with delays, 1998
While using Markov chains to model an NCS, in fact, Ph.D dissertation, Dept. of Automatic control, Lund
the states of Markov chains are usually unknown. The key Institute of Technology, Lund, Sweden.
issue is how to identify the number of the states of Markov [IO] LUCK, R. and A. RAY . An observer-based
chains and their transient probability using HMM (Hidden compensator for distributed delays. Aufomafica, 265, pp:
Markov Model) [39] while designing and analyzing an 903-908. 1990.
NCS. [l 11 Nilson, J. Analysis and Design of Real-Time Systems
There are several interesting problem still to be solved with Random ,Delays. Lic Tech thesis TFRT-3215,
for future work: D e p m e n t of Automatic Control, Lund Institute of
(1). The error bounds of the scheduler for NCSs will Technology, Lund, Sweden. 1996
be interesting topics. The analysis of worst-case error [I21 F.-L. Lian. Analysis, Design, Modeling, and Control
bound of the scheduler is a design guideline of scheduling of Networked Control Systems. Ph.D thesis, University of
method in NCSs. Michigan, May 2001.
[13) D.S.Kln, Y.S.Lee, W.H.Kwon, H.S.Park, Maximum
(2). Though several papers discuss about a stability Allowable Delay Bounds in Networked Control Systems,
analysis of NCSs with packet dropout [15,32,40], more hiferiiafional Journal of Control Engineering Practice,
problem formulations and scheduling analysis of packet 2003.
dropping in NCSs will be interesting topics. [I41 D.S.Kim, Y.S.Lee and W.H.Kwon Scheduling
(3). The Ethernet technology allows field device like Analysis of Networked Control system, IFAC Corferertce
sensors, actuators, and controllers to be interconnected at on New Technology on Computer Control, pp. 77-82,
low cost using less wiring and requiring less maintenance November, 2001
than point-to-point interconnections. However, [I51 W. Zhang. Stability analysis of networked control
nondeterministic property of Ethernet protocol is a major systems. PhD Thesis, Case Westem Reserve University,
problem when Ethernet is applied in control network. 2001.
Consequently, using switched Ethemet by subdividing the [I61 Feng-Li Lian; Moyne, J.; Tilbury, Network design
network architecture is another way to overcoming these consideration for distributed control systems . IEEE
problems. Transacfion on Confrol Sysfem Technology. 10, (2), pp:
297-307. March 2002
[I71 B. Englert, L. Rudolph, and A. Shvartsman.
References: Developing and refining an adaptive tokenpassing strategy.
[I] W. Zhang, M.S. Branicky, and S.M. Philips, Stability of 21sf Intemafiorial Conference on Distributed Computing
networked control systems, IEEE Control Systems Sptenw, 2001, April 2001.
Magazine, 21(1): 84-99, February 2001. [I81 Feng-Li Lian, James Moyne, Dawn Tilbury, Time
[2] G.C. Walsh, H. Ye, and L. Bushnell, Stability analysis Delay Modeling and Sample Time Selection For
of networked control systems, in Proceedings of the Networked Control Systems, Proceedings of ASME-DSC,
American Control Confireme, pp. 2876-2880, San Diego, New York, November 11-16,2001.
June 1999. [19] Pau Marti, Gerhard Fohler, Krithi Ramamritham and
[3] J. Nilsson, Real-Time Control Systems with Delays, Josep M. Fuertes, Jitter Compensation for Real-Time
Ph.D. dissertation, Department of Automatic Control, Lund Control Systems, 22nd IEEE Real-Time Sysfems
Institute of Technology, Lund, Sweden, 1998. Symposium, London, UK, December, 2001
[4] G.C. Walsh, 0. Beldiman and L.G. Bushnell. [20] K. Hirai, Y. Satoh, Stability of a System with
Asymptotic behavior of networked control systems. In Variable Time Delay, Trans. Aufomatic Control, AC-25,
Proceediugs of fhe Coiference on Control Applicafions, p552-554, 1980.
ppl448-I 453, Aug. 1999. [21] P. Albedos, A. Crespo, I. Ripoll, M. Vallks and P.
[5] Yoram, H. and Asok, R. Integrated Communication and Balbastre RT control scheduling to reduce control
Control Systems: Part I - Analysis, Journal of Dynamic performance degrading. 39th IEEE Conference on
Sysfems, Memurenierif, and Control, 110, Dec., pp.367- Decision and Control. Sydney (Australia), December 12-
373.1988 15, 2000.
[6] Y.H.Kim, W.H.Kwon, and H.S.Park. Stability and a [22] S. Baruah, G . Buttazzo, S. Gorinsky and G. Lipari,
scheduling method for networked-based control systems. In Scheduling Periodic Tasks Systems to Minimize Output
IECONProceediiigs, volume 2, pp934-939, Aug.1996. Jitter Proc. Infemational Conference on Real-Time
[7] Dong-Sung Kim. A Scheduling Method for Networked Computing Sjsfems and Applications, IEEE Computer
Control Systems in Fieldbus Environments. Ph.D Society Press. pp 62-69, Hang Kong, December 1999.
Dissertation, Seoul National University, Feburary 2003

[23] A. Cervin Improved Scheduling of Control Tasks [39] H.Y.Kim, C.M.Lee and H.S.Park, Optimal Period and
in Proceedings of the 11th Euromicro Conference on Priority Assignment using Task and Message-based
Real-Time Systems, York, England, June 1999. Scheduing in Distributed Control Systems, Jomal of
[24] N. Andreff, Robustness to jitter in real-time Control, Automation and System Engineering, 8, (6),
systems, ISSN 0280-5316, ISRN LUTFDD TFRT--5507-- pp.506-513. 2002
SE, June 1994.pp.3015-3020.2002 [40] Rabello, A., Bhaya, A., Stability of asynchronous
[25] Q. Ling and M.D. Lemmon, Soft real-time scheduling dynamical systems with rate constraints and applications,
of networked control systems with dropouts governed by a Proceedings of the American Control Conference, 2,
Markov chain, American Confrol Conference, June 2003. pp.1284-1289,2002
[26] Q. Ling and M.D. Lemmon, Robust Performance of
Sol3 Real-time Control Systems with Data Dropouts,
IEEE Conference on Decision and Control, 2002, Las
[27] Otanez,P.G., Mope, J.R. and Tilbury, D.M., 2002,
Using deadbands to reduce communication in networked
control systems, Proceedings of the American Control
Conference, 4, pp.3015-3020.
[28] Hang, S.H. Scheduling Algorithm of Data Sampling
Times in the Integrated Communication and Control
Systems, IEEE Transaction on Control System Teclmo/ogy,
3, (2), pp.225-231. Jun 1995
[29] Park, H.S., Kim, Y.H., Kim, D.S and Kwon, W.H. A
Scheduling Method for Network Based Control Systems,
IEEE Transaction on Control System Technologv, 10, (3),
pp.318-330. May 2002
[30] Branicky, M.S., Phillips, S.R. and Wei Zhang, 2000,
Stability of networked control systems: explicit analysis of
delay, Proceedings of the Americon Control Coiference, 4,
[31] Walsh, G.C., Hang Ye. and Bushnell, L.G. , 2002,
Stability analysis of networked control systems, IEEE
Transactions on Control Systems Technology, 10, (3),
1321 Walsh, G.C. and Hang Ye. 2001. Scheduling of
networked control systems, IEEE Control Systems
Magazine, 21, (l), pp.57-65.
[33] A. Ray and Y. Halevi, Integrated communication and
control systems: PartG-Design considerations, in ASME
Journal of Dynamic Systems, Meosurement and Control,
110: 374-381, December 1988.
[34] L.W. Liou and A. Ray, A stochastic regulator for
integrated communication and control systems: Part I-
Formulation .of control law, ASME J Dynamic J>st.,
Meosurernent, Contr., vol. 113, pp. 6 0 4 6 1 1, Dec. 1991.
[35] A. Ray, Output feedback control under randomly
varying distributed delays, J. Guidonce, Contr., Qvitamics,
vol. 17, no. 4, pp. 701-711, July-Aug. 1994.
[36] A. Ray, L. W. Liou, and J. H. Shen, State estimation
using randomly delayed measurements, ASME J. Dynamic
Syst., Measurement, Coitfr.,vol.115, pp. 19-26, Mar. 1!)93.
[37] R Krtolica and U. Ozgiiner et al., Wability of linear
feedback systems with random communication delays in
Proc. Amer. Contr. C o d , Boston, MA, June 1991.
[38] A. Hassibi, S.P. Boyd, and J.P. How, Contrcl of
asynchronous dynamical systems with rate constraintr on
events, in Proc. IEEE Conj Decision and Control,
Phoenix, AZ,Dec. 1999, pp. 1345-1351.