- About this Journal ·
- Abstracting and Indexing ·
- Advance Access ·
- Aims and Scope ·
- Annual Issues ·
- Article Processing Charges ·
- Articles in Press ·
- Author Guidelines ·
- Bibliographic Information ·
- Citations to this Journal ·
- Contact Information ·
- Editorial Board ·
- Editorial Workflow ·
- Free eTOC Alerts ·
- Publication Ethics ·
- Reviewers Acknowledgment ·
- Submit a Manuscript ·
- Subscription Information ·
- Table of Contents

Mathematical Problems in Engineering

Volume 2012 (2012), Article ID 832836, 21 pages

http://dx.doi.org/10.1155/2012/832836

## Data-Driven Adaptive Observer for Fault Diagnosis

^{1}Research Institute of Intelligent Control and Systems, Harbin Institute of Technology, Harbin 150001, China^{2}Faculty of Engineering and Science, University of Agder, 4898 Grimstad, Norway

Received 25 June 2012; Accepted 12 August 2012

Academic Editor: Bo Shen

Copyright © 2012 Shen Yin et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

This paper presents an approach for data-driven design of fault diagnosis system. The proposed fault diagnosis scheme consists of an adaptive residual generator and a bank of isolation observers, whose parameters are directly identified from the process data without identification of complete process model. To deal with normal variations in the process, the parameters of residual generator are online updated by standard adaptive technique to achieve reliable fault detection performance. After a fault is successfully detected, the isolation scheme will be activated, in which each isolation observer serves as an indicator corresponding to occurrence of a particular type of fault in the process. The thresholds can be determined analytically or through estimating the probability density function of related variables. To illustrate the performance of proposed fault diagnosis approach, a laboratory-scale three-tank system is finally utilized. It shows that the proposed data-driven scheme is efficient to deal with applications, whose analytical process models are unavailable. Especially, for the large-scale plants, whose physical models are generally difficult to be established, the proposed approach may offer an effective alternative solution for process monitoring.

#### 1. Introduction

During the last two decades, diagnostic observers and parity space-based fault detection and isolation (FDI) schemes for linear time invariant (LTI) systems are intensively studied [1–6]. The core of the parity space FDI technique is, based on state space representation of the system, construction of residual generator by means of the so-called parity vector, which is the null space of the observability matrix. As pointed out in Ding [6], the design of an observer-based residual generator can be equivalently formulated as a similar problem.

Since the majority of observer and parity space-based FDI schemes involve rigorous development of process models based on the first principles, later identification techniques that extracts transfer function [7] or state space model become a necessary step prior to the design. For this purpose, subspace identification methods (SIM) that identify the complete state space matrices have been successfully implemented see Overschee and Moor [8], Favoreel et al. [9], and Qin [10]. Provided the process model is known *a priori*, observer and parity space-based FDI systems can be designed with a large number of applications [11–13]. The approaches of filtering and control for such complex systems have been well studied in the literature; see Shen et al. [14], Shen et al. [15], and Dong et al. [16], Dong et al. [17]. Recently, an alternative data-driven approach has been proposed that does not require the identification of complete set of process model but only the so-called primary form of the residual generator from the process data; see Ding et al. [18]. Based on it, the advanced observer-based FDI system can be designed in an efficient way [19–23]. Thanks to its simple forms and less requirements on the design and engineering efforts, the data-driven FDI approach becomes more efficient in many industry sectors, especially for large-scale industry applications [24]. Recent survey given by Ding et al. [22, 23] provided the reader with a comprehensive overview on the basic and advanced data-driven FDI schemes.

Our study is motivated by the aforementioned data-driven FDI approach, in that we also recognize the wide existence of systems with uncertain or normal variation parameters in practice, which have not been paid enough attention in research study. Extension of the data-driven FDI scheme to such processes will improve the safety and reliability of these applications and further reduce the complexity to perform FDI especially on the large-scale systems. For this purpose, a data-driven fault diagnosis approach was proposed in this paper, in which the issues of fault isolation and threshold setting were studied to complete the earlier work given by Ding et al. [19, 20]. The structure of the fault diagnosis scheme consists of an adaptive residual generator and a bank of isolation observers, whose parameters are directly updated from the plant data with standard adaptive technique to cope with normal variations in the process. The threshold for fault detection can be determined either analytically or by probability density function estimation technique. When a fault is detected, the fault isolation scheme is activated, in which each isolation observer indicates the occurrence of a particular type of fault in the process. Fault isolation is successfully achieved when all the isolation indices, except the one responsible for the fault, exceed the thresholds. For the realization of the isolation scheme, the standard projection algorithm is implemented [25, 26]. The sufficient condition of fault isolability is also analyzed in this work.

The rest of the paper is organized as follows. In Section 2, the mathematical preliminaries and problem formulation are presented. Section 3 addresses the theoretical core of the proposed fault diagnosis scheme, in which both fault detection and isolation issues will be analyzed in detail. In Section 4, the simulation of laboratory-scale three-tank system is used to illustrate the performance of the proposed scheme. The paper ends with concluding remarks in the last section.

#### 2. Preliminaries and Problem Formulation

##### 2.1. Preliminaries of Model-Based Residual Generator

Consider a discrete-time LTI system which is described by where , , and represent the vector of state variables and process input and output, respectively. , , and are system matrices with appropriate dimensions. Reformulate (2.1)-(2.2) into where , , , and and and are integers. On the assumption of known , , and , the design of a parity space-based residual generator consists in solving for the so-called parity vector . The design of an observer-based residual generator is achieved by solving the so-called Luenberger equations for (should be stable), , , , together with a transformation matrix . It follows then the construction of the parity space-based residual generator and the observer-based residual generation In the above equations, is called residual signal and the order of the parity space or the observer-based residual generator. The following lemma given by Ding [6] describes the one-to-one mapping between the parity vector and the solutions of Luenberger equations.

Lemma 2.1 (see Ding [6]). *Given any parity vector , with , and process model (2.1)-(2.2), then
**
solve the Luenberger equations (2.6). *

##### 2.2. Preliminaries of Data-Driven Residual Generator Design

It is assumed that system matrices , , and and system order are* unknown a priori*; Ding et al. [19, 20] proposed an approach for data-driven design of observer-based residual generator, which briefly consists of two algorithms, that is, (i)*Algorithm D2PS* (from data to parity subspace),(ii)*Algorithm PS2DO* (from parity vector to diagnostic observer (DO)).

*Algorithm 2.2. * D2PS (from data to parity subspace).

Step . Generate data sets and construct .

Step . Compute the SVD of

Step . Set .

Note that any row of matrix is a parity vector. For a system with multiple output (, may be significantly larger than . In order to reduce the online computation, an order reduction algorithm is given by Ding et al. [19, 20] to achieve a reduced order . For multiple output systems, may be significantly smaller than .

*Algorithm 2.3. **PS2DO (from parity vector to DO)*.

Step 1. Select and corresponding row and form them as

Step 2. Set , , , according to (2.11)-(2.12) and .

Step 3. Construct the DO according to (2.9)-(2.10).

##### 2.3. Problem Formulation

So far in our study, the data-driven fault detection scheme has been developed for LTI systems. However, The wide existence of systems with uncertain or normal variation parameters has not been considered enough in the literatures. In order to develop an efficient data-driven fault diagnosis scheme for such systems, it is necessary to(i)propose an efficient residual generator to deal with normal parameter variations in the process,(ii)determine proper threshold for fault detection purpose,(iii) develop related fault isolation strategy to complete the diagnosis task.

Without loss of generality, in the remaining part of this paper, the parameter variation rate is assumed bound in term of -norm. In addition, the persistent excitation condition for identification methods is assumed to be satisfied.

#### 3. Data-Driven Design of Fault Diagnosis Scheme

##### 3.1. Adaptive Residual Generator-Based Fault Detection Scheme

According to Lemma 2.1, the system (2.1)-(2.2) can be represented in following form: where , , is a design parameter vector to ensure that the eigenvalues of lie in the unit circle and with denotes a column-wise reordering of a matrix; that is, In the following study, set for the purpose of simplicity.

Note that in (3.1) the system matrices , , and are integrated into vector , and the input and output signals are included in . Any parameter variation in the original system can be reflected through the parameter variation rate defined as , which is bounded by where denotes -norm. Let us firstly consider the basic case, that is, a constant parameter ; the adaptive residual generator is stated in the following theorem.

Theorem 3.1. *Given the following adaptive residual generator which consists of three subsystems. **(i) Residual generator:
**(ii) Auxiliary filter
**(iii) Parameter estimator
**
it follows that the adaptive residual generator is stable and in the fault-free case the residual signal satisfies
**
Moreover, if the persistent excitation condition is satisfied; that is, there exist positive constants , and integer such that for all **
the adaptive residual generator is exponentially stable, and the parameter estimation converges to the true value with an exponential convergence rate:
*

*Proof. *The proof can be found in the earlier study by Ding et al. [19, 20].

Until now, the unknown parameter has been assumed constant. We would like to further consider the behavior of the adaptive residual generator (3.5)–(3.10) in case is a time-varying parameter and bounds by (3.4). To simplify the notations, define After a straightforward calculation, it follows that with , , , and . According to (3.18), the residual has a nonzero value since . Assume that persistent excitation condition (3.13) is satisfied, the properties of adaptive residual generator (3.5)–(3.10) can be generalized in the following theorem.

Theorem 3.2. *In case of and bounded by (3.4), the adaptive residual generator (3.5)–(3.10) ensures the following:** (i) the estimation error converges exponentially to the set
**
where is a positive scalar such that and denotes the initial time sample; **(ii) the residual signal converges exponentially to the set
**
where is a positive scalar such that ; **(iii) based on the assumption of the zero initial condition, that is, , the normalized residual signal satisfies
**
where . Furthermore, if the process corrupted by noise/disturbance, the residual signal can be formulated as
**
where represents the influence of noise/disturbance on the residual signal. It follows that
**
with . *

*Proof. * According to (3.17), for all , we have
where is the transition matrix of the linear time-varying system (3.17). Since (3.13) is satisfied, the system (3.17) is exponentially stable; and Astrom and Wittenmark [27]. Therefore, there exists a positive constant such that . Consequently, from (3.17), we have
Since , , and all the eigenvalues of are zero, it follows from (3.16) that
The bound of residual signal can be straightforwardly obtained
It is easier to prove that
Thus, set
the normalized residual becomes
Equations (3.22)-(3.23) can be easily proved, and thus they are omitted here.

According to Theorem 3.2, in case is a time-varying parameter and bounds by (3.4) the residual is bounded and the threshold can be set as the right-hand side presented by (3.23); that is, The fault detection logic is given by

*Remark 3.3. *It is of great interest to detect the faults that cause abnormal changes on physical parameters of the process. Although the identified parameter is physically meaningless, any abnormal physical parameters variations can influence and should be finally discovered by the residual signal. In practice, the bound of normal variation rate of given by (3.4) can be determined through the offline test data. The related threshold of residual signal is designed for the detection of abnormal parameter change, which is supposed to be faster than the normal parameter variation.

*Remark 3.4. *The order of residual generator could be significantly smaller than system order in multiple output systems : . An algorithm is proposed in Ding et al. [19, 20] for constructing the reduced order residual generator. Thus, if persistent excitation condition is satisfied, the estimation error converges exponentially to a set determined by . For industrial process, the excitation mainly comes from the variation of process variables and measurement noise.

*Remark 3.5. *Another efficient way to determine the threshold for residual signal is based on statistical methods. Without special assumption on process data, the so-called kernel density estimation (KDE) is widely used in practice for estimating the probability density function of residual signals. Based on a large number of offline test data, a proper threshold can be chosen under given confidence level. More detailed description on KDE can be found in Silverman [28] and Martin and Morris [29].

##### 3.2. Fault Isolation Scheme Design

In this subsection, the fault isolation scheme will be further introduced in the framework of adaptive residual generator.

Suppose that there exist classes of faults in the process including all potential abnormalities in sensors and actuators. Under the influence of class of fault, , the unknown parameter becomes , which is assumed to belong to a known compact and convex set . Note that, the set could be offline identified by using the faulty data within the framework of adaptive scheme (3.5)–(3.10).

The proposed fault isolation strategy can be developed by integrating the fault information, that is, . Based on it, fault isolation observers are constructed, in which the observer is only responsible for the set of fault. According to the fault detection scheme discussed in the last subsection, after a fault is detected at time , the fault isolation scheme is activated, such that the isolator is insensitive to the type of fault, but sensitive to other faults; see Zhang et al. [30]. In order to realize these requirements, the parameter projection method is utilized and the fault isolation observer has the following form: where the , denotes a projection operator that ensures lies in a known bounded convex subset . Details on the projection operator can be founded in Tao [26]. The following theorem states the properties of the isolation observer in case of the type of fault occurred.

Theorem 3.6. *Given the fault isolation observer in the form (3.33)–(3.36), suppose that there is a positive constant , such that for all , it follows that
**
In case of the type of fault occurs, one has the following:**(i) the fault isolation observer is stable and
**
where , , **(ii) based on the assumption of the zero initial condition, the normalized residual signal satisfies
**
where is a positive scalar such that with . *

*Proof. *According to the property of the projection operator, it follows that . From (3.38), we have
It is evident that for all ,
and consequently,
Now, define a new parameter
Using (3.42), we get
The right-hand side of (3.45) becomes
Note that, (3.35) can be reformulated as
where
For the normalized residual signal , it is known that
with
Combining (3.46), (3.47), and (3.49), we have
Equation (3.51) can be reformulated as
Since
according to (3.52), the result represented by (3.40) can be easily proved.

For the isolation observer, define the fault isolation index and the related threshold . Based on Theorem 3.6, we have the following corollary.

Corollary 3.7. *For the isolation observer, the fault isolation threshold can be determined by
**
Moreover, if the process corrupted by disturbance and/or noise, the normalized residual is
**
where represents the influence of noise/disturbance on the normalized residual signal. In this case, the threshold for fault isolation purpose is given by
**
with
*

*Proof. *The proof is straightforward based on Theorem 3.6 and omitted here.

The fault isolation logic can be described as the following:(i)for the isolation observer, if such that , then the occurrence of the type of fault is excluded; (ii) otherwise, if for , the type of fault is occurred.

The sufficient condition of fault isolability is given by the following theorem.

Theorem 3.8. *Based on the fault isolation observer (3.33)–(3.36), the type of fault, which detected at time , is isolable, if for the other fault isolation observers, such that the following inequality is satisfied
**
where
**
Furthermore, if , , it follows that
*

*Proof. *For the th fault isolation observer, we have
Straightforwardly, if for all , such that
the th type of fault is isolable and directly (3.60) is proofed. In the case of and , (3.62) is straightforward.

#### 4. Application to Three-Tank System

The three-tank system (TTS) considered in our study is a laboratory setup located in the laboratory of Institute for Automatic Control and Complex Systems, University of Duisburg-Essen. The sketch is shown in Figure 1, which has typical characteristics of tanks, pipelines, and pumps used in the chemical industry and thus often serves as benchmark process for many control and monitoring relevant studies.

The plant consists of three cylindrical tanks which are serially interconnected with each other by cylindrical pipes with the cross-section of . The outflowing water is collected in a reservoir, which supplies pumps 1 and 2. denotes the maximal height of tanks. The flow rates and water levels of tanks, represented by , , are measured throughout the process. By integrating a nonlinear controller, water levels and can be controlled. The detailed description of TTS can be found in Ding [6].

It is well known that the system matrices of TTS, which are achieved from linearization at different operation points, are different. In our experiment, the operation point of water level is periodically changed in order to simulate the normal parameter variations in the process. An experiment including the following steps has been performed.(i)Place TTS at the operating point , in which signal added to leads to normal parameter variations. (ii)Use the adaptive scheme (3.5)–(3.10) to identify through the data collected at the operating point , with reduced order and . Note that the system order can be determined by Algorithm D2PS, and based on it the reduced order is calculated according to the relationship with two system outputs; that is, . (iii)Construct two residual generators: (a) an adaptive residual generator (3.5)–(3.10) (b) a standard one without adaptive scheme. (iv)Both the residual generators run for (seconds). The threshold is determined according to (3.23) with the parameters , , , and , which are chosen according to the offline test data.

Figure 2 shows the residual signals with and without the adaptive scheme. It is clear that the standard process monitoring method is unsuitable to monitor TTS with normal parameters variations that is apparent by the numerous false alarms.

The faults occurred in TTS can be classified as process fault, sensor fault, and actuator fault, which are shown in Table 1. To verify the performance of the proposed fault diagnosis scheme, the following experiment is carried out. (i)Offline: apply adaptive scheme (3.5)–(3.10) to identify through the type of faulty data with and . (ii)Online: use adaptive residual generator (3.5)–(3.10) for fault detection purpose. If there exists time such that , the alarm is released. Simultaneously, the fault isolation observers (3.33)–(3.36) are activated, and the threshold is determined according to (3.58) with the parameters , , and .

The fault diagnosis results of faults 1, 4, and 9, which represent the process, actuator, and sensor fault, are mainly presented in the following study. All these faults occur at the th second. The sensor fault 9 has offset compared to the normal value and the actuator fault 4 represents offset to the desired value. Figures 3(a), 4(a), and 5(a) show the residual signal from adaptive residual generator for fault detection purpose. It can be seen that the faults are successfully detected at the 505 s, the 507 s, and the 501 s, respectively.

In the meanwhile, the fault isolation observers are activated, and the related fault isolation indices are shown in Figures 3(b)–3(j), 4(b)–4(j)__,__ and 5(b)–5(j) for faults 1, 4, 9, respectively. It is evident that the fault isolation indices from the isolation observer (Figure 3(b)), the isolation observer (Figure 4(e)), and the isolation observer (Figure 5(j)) are consistently maintained under respective thresholds which indicate occurrence of these faults. On the other hand, the other subfigures show the isolation indices associated to other isolation observers. It is obvious that all of them exceed the related thresholds, which indicate the absence of these faults in the process.

#### 5. Conclusion

In this paper, we have proposed an approach for data-driven design of fault diagnosis system, which consists of an adaptive residual generator and a bank of observers for fault detection and isolation purposes. Analytical results regarding the issues of adaptive observers, threshold calculation, and fault isolation strategy are discussed. The proposed design scheme is demonstrated on the simulation of laboratory-scale three-tank system, which shows satisfactory fault diagnosis performance.

#### References

- J. Gertler,
*Fault Detection and Diagnosis in Engineering Systems*, Marcel Dekker, New York, NY, USA, 1998. - J. Chen and R. Patton,
*Robust Model-Based Fault Diagnosis for Dynamic Systems*, Kluwer Academic, Norwell, Mass, USA, 1999. View at Publisher · View at Google Scholar · View at Zentralblatt MATH - R. Patton, P. Frank, and R. Clark,
*Issues of Fault Diagnosis for Dynamic Systems*, Springer, Berlin, Germany, 2000. - M. Blanke, M. Kinnaert, J. Lunze, M. Staroswiecki, and J. Schröder,
*Diagnosis and Fault-Tolerant Control*, Springer, Berlin, Germany, 2006. View at Zentralblatt MATH - R. Isermann,
*Fault Diagnosis Systems: An Introduction from Fault Detection to Fault Tolerance*, Springer, Berlin, Germany, 2006. - S. Ding,
*Model-Based Fault Diagnosis Techniques*, Springer, Berlin, Germany, 2008. View at Zentralblatt MATH - L. Ljung,
*System Identification: Theory for the User*, Prentice Hall, Englewood Cliffs, NJ, USA, 1987. - P. V. Overschee and B. D. Moor,
*Subspace Identification for Linear Systems*, Kluwer Academic, Dordrecht, The Netherlands, 1996. - W. Favoreel, B. De Moor, and P. Van Overschee, “Subspace state space system identification for industrial processes,”
*Journal of Process Control*, vol. 10, no. 2-3, pp. 149–155, 2000. View at Publisher · View at Google Scholar · View at Scopus - S. Qin, “An overview of subspace identification,”
*Computers and Chemical Engineering*, vol. 30, no. 10–12, pp. 1502–1513, 2006. View at Publisher · View at Google Scholar - I. Hwang, S. Kim, Y. Kim, and C. E. Seah, “A survey of fault detection, isolation, and reconfiguration methods,”
*IEEE Transactions on Control Systems Technology*, vol. 18, no. 3, pp. 636–653, 2010. View at Publisher · View at Google Scholar · View at Scopus - V. Venkatasubramanian, R. Rengaswamy, K. Yin, and S. Kavuri, “A review of process fault detection and diagnosis. Part I: Quantitative model-based methods,”
*Computers and Chemical Engineering*, vol. 27, pp. 293–311, 2003. - P. Zhang and S. Ding, “On fault detection in linear discrete-time, periodic, and sampled-data systems (survey),”
*Journal of Control Science and Engineering*, vol. 2008, Article ID 849546, 19 pages, 2008. - B. Shen, Z. Wang, H. Shu, and G. Wei, “Robust $H\infty $ finite-horizon filtering with randomly occurred nonlinearities and quantization effects,”
*Automatica*, vol. 46, no. 11, pp. 1743–1751, 2010. View at Publisher · View at Google Scholar - B. Shen, Z. Wang, and Y. S. Hung, “Distributed $H\infty $-consensus filtering in sensor networks with multiple missing measurements: the finite-horizon case,”
*Automatica*, vol. 46, no. 10, pp. 1682–1688, 2010. View at Publisher · View at Google Scholar - H. Dong, Z. Wang, D. W. C. Ho, and H. Gao, “Robust $H\infty $ filtering for Markovian jump systems with randomly occurring nonlinearities and sensor saturation: the finite-horizon case,”
*IEEE Transactions on Signal Processing*, vol. 59, no. 7, pp. 3048–3057, 2011. View at Publisher · View at Google Scholar - H. Dong, Z. Wang, J. Lam, and H. Gao, “Fuzzy-model-based robust fault detection with stochastic mixed time-delays and successive packet dropouts,”
*IEEE Transactions on Systems, Man, and Cybernetics*, vol. 42, no. 3, part B, pp. 365–376, 2012. - S. X. Ding, P. Zhang, B. Huang, and E. L. Ding, “Subspace method aided data-driven design of observer based fault detection systems,” in
*Proceedings of the 16th Triennial World Congress of International Federation of Automatic Control (IFAC '05)*, pp. 167–172, Prague, Czech Republic, July 2005. View at Scopus - S. Ding, S. Yin, P. Zhang, E. Ding, and A. Naik, “An approach to data-driven adaptive residual generator design and implementation,” in
*Proceedings of the 7th IFAC Symposium on Fault Detection and Supervision and Safety of Technical Processes*, Barcelona, Spain, 2009. - S. X. Ding, P. Zhang, A. Naik, E. L. Ding, and B. Huang, “Subspace method aided data-driven design of fault detection and isolation systems,”
*Journal of Process Control*, vol. 19, no. 9, pp. 1496–1510, 2009. View at Publisher · View at Google Scholar · View at Scopus - S. Yin, A. Naik, and S. Ding, “Data-driven design of fault diagnosis scheme for periodic systems,” in
*Proceedings of the 7th Workshop on Advanced Control and Diagnosis*, Zielona Gora, Poland, 2009. View at Publisher · View at Google Scholar - S. Ding, S. Yin, Y. Wang, Y. Wang, Y. Yang, and B. Ni, “Data-driven design of observers and its applications,” in
*Proceedings of the 18th IFAC World Congress*, Milano, Italy, 2011. - S. Ding, P. Zhang, E. Ding, P. Engel, and W. Gui, “A survey of the application of basic data-driven and model-based methods in process monitoring and fault diagnosis,” in
*Proceedings of the 18th IFAC World Congress*, Milano, Italy, 2011. - L. Chiang, E. Russell, and R. Braatz,
*Fault Detection and Diagnosis in Industrial Systems*, Springer, London, UK, 2001. View at Publisher · View at Google Scholar · View at Zentralblatt MATH - P. Ioannou and J. Sun,
*Robust Adaptive Control*, Prentice Hall, 1996. - G. Tao,
*Adaptive Control Design and Analysis*, Wiley-Interscience, Hoboken, NJ, USA, 2003. View at Publisher · View at Google Scholar - K. Astrom and B. Wittenmark,
*Adaptive Control*, Addison-Wesley, 1995. - B. W. Silverman,
*Density Estimation for Statistics and Data Analysis*, Chapman & Hall, London, UK, 1986. - E. Martin and A. Morris, “Non-parametric confidence bounds for process performance monitoring charts,”
*Journal of Process Control*, vol. 6, no. 6, pp. 349–358, 1996. View at Publisher · View at Google Scholar - X. Zhang, M. Polycarpou, and T. Parisini, “Design and analysis of fault isolation scheme for a class of uncertain nonlinear systems,”
*Annual Reviews in Control*, vol. 32, pp. 107–121, 2008. View at Publisher · View at Google Scholar