Shock and Vibration in Transportation EngineeringView this Special Issue
Research Article | Open Access
Wei-Li Qin, Wen-Jin Zhang, Chen Lu, "A Method for Aileron Actuator Fault Diagnosis Based on PCA and PGC-SVM", Shock and Vibration, vol. 2016, Article ID 4807250, 12 pages, 2016. https://doi.org/10.1155/2016/4807250
A Method for Aileron Actuator Fault Diagnosis Based on PCA and PGC-SVM
Aileron actuators are pivotal components for aircraft flight control system. Thus, the fault diagnosis of aileron actuators is vital in the enhancement of the reliability and fault tolerant capability. This paper presents an aileron actuator fault diagnosis approach combining principal component analysis (PCA), grid search (GS), 10-fold cross validation (CV), and one-versus-one support vector machine (SVM). This method is referred to as PGC-SVM and utilizes the direct drive valve input, force motor current, and displacement feedback signal to realize fault detection and location. First, several common faults of aileron actuators, which include force motor coil break, sensor coil break, cylinder leakage, and amplifier gain reduction, are extracted from the fault quadrantal diagram; the corresponding fault mechanisms are analyzed. Second, the data feature extraction is performed with dimension reduction using PCA. Finally, the GS and CV algorithms are employed to train a one-versus-one SVM for fault classification, thus obtaining the optimal model parameters and assuring the generalization of the trained SVM, respectively. To verify the effectiveness of the proposed approach, four types of faults are introduced into the simulation model established by AMESim and Simulink. The results demonstrate its desirable diagnostic performance which outperforms that of the traditional SVM by comparison.
The aileron actuator, which is used to control the aircraft’s rolling movement, is a pivotal component for the flight control system of aircraft . The faults of aileron actuator, which include force motor coil break, sensor coil break, actuator cylinder leakage, and amplifier gain reduction, may cause a series of consequences from control system performance degradation to irretrievable economic loss and personal casualties. Therefore, it is utmost important to research on the fault detection of aileron actuators.
Many fault diagnosis approaches have been used and proposed for classification of system health monitoring data, such as decision tree induction, Bayesian-based classification, neural networks, genetic algorithms, and fuzzy set classifiers . Zhao and Su  proposed a novel fault diagnosis method for power transformer insulation based on a decision tree. Ozev et al.  presented a parametric fault diagnosis approach for analog/RF circuits based on a Bayesian framework. Zang and Imregun  performed structural damage detection via artificial neural networks. He et al.  used immune genetic algorithm to build a mathematical model for fault diagnosis of a modern power system. Altunok et al.  presented a damage pattern recognition approach based on fuzzy set theory. However, most of these methods are computationally expensive and their classification accuracy is highly depending on the sample size. Besides, with these methods, some faults such as hydraulic pump fault and external leakage fault can hardly be diagnosed.
Model-based fault detection and diagnosis (FDD) scheme is another important way for FDD of aileron actuators. Henry et al.  built an aileron servo-loop model and presented an -based solution fitted with the structure of AIRBUS in-service monitoring systems. Vanek et al.  founded a reliable linear parameter-varying (LPV) model of the aircraft and performed two inherently different fault detection and isolation designs for aileron and elevator. Gheorghe et al.  presented a simple model-based approach for fault detection in both runaway case and jamming case and yielded a more than good performance under real flight test. Goupil and Marcos  built a generic aircraft model and representative fault scenarios and threw light upon both traditional and advanced model-based FDD approaches. Efimov et al.  presented a hybrid observer solution associated with the in-service A380 decision-making rules to solve oscillatory failure case in aircraft system.
Support vector machines (SVMs) which were originally introduced by Vapnik have been successful for solving classification and function estimation problems. Characterized by convex optimization problems (typically quadratic programming), SVM models are capable of obtaining global minimum, avoiding the trap of local minimum brought by the greedy algorithm in other methods. And the ultimate decision function of SVM is determined by, instead of the whole sample, a few support vectors so that computational complexity is reduced and the curse of dimensionality is shunned. Besides, SVM has the advantage of dealing with nonlinear systems while aileron actuator happens to be a typical nonlinear system. SVM is a classical binary classifier and in order to solve multiclassification problem, which is common in fault diagnosis since there are generally more than two failure modes, many SVM algorithms are proposed to construct the multiclassification classifiers. The algorithms adopted in actual application can be divided into two types : () the first type is one-time solution method; () combining many binary SVM subclassifiers to achieve multiclassification SVM, the second type includes one-versus-rest, one-versus-one, DDAGSVM, and binary-tree SVM. The research related shows that one-versus-one SVM can be more suitable to actual application because of its comparatively fast training speed and good classification accuracy [13–16].
This paper adopts multiclassification algorithm of one-versus-one SVM to design the classifier for the aileron actuator fault diagnosis. In addition, the paper uses grid search to optimize two important parameters and of one-versus-one SVM and Principle Component Analysis (PCA) to reduce dimension. In traditional SVM, the following procedures are usually used: () transform data to the format of SVM package; () randomly try a few kernels and parameters; () test the model. Due to the poor parameter selection and original data complexity, the classification accuracy is relatively unsatisfactory and the training speed is sometimes intolerable. However, the biggest problem is that there will be unclassifiable regions in traditional SVM. The one-versus-one SVM manages to avoid this problem and, with the help of PCA and grid search, the data complexity and parameter selection problems are solved. Hence, compared to the traditional SVM, the method proposed, through case study, yields a higher classification accuracy and a faster training speed while external leakage fault can be effectively diagnosed by the method. Generally, the most important thing to do in aeronautical engineering is to perform an early fault detection to switch as soon as possible on a redundant actuator. Once properly trained on ground using historical data, the proposed algorithm can achieve fault classification as fast as 0.1~1 s each time. With the development Flight Control Computer (FCC), its constraints such as low computational load and restricted symbol library will not be a problem for relatively complex algorithms in the future. On that basis, high fault classification accuracy will be a bonus since corresponding maintenance preparation can be done before the landing of the aircraft and thus efficiency is improved.
The remainder of the paper is organized as follows. In Section 2, a joint simulation model of aileron actuator based on AMESim and Simulink is set up. In Section 3, the faults of aileron actuator are analyzed and injected into the model. In Section 4, a detailed description of the proposed method is presented. In Section 5, the effectiveness of the proposed approach is demonstrated and the results of experimental are presented and discussed. Finally, the conclusion of the research will be given.
2. Setup of Aileron Actuator
The aileron actuator consists of a hydraulic pump, an electrohydraulic servo valve, a cylinder, a PID controller, two electronic amplifiers, and two displacement sensors. The control loop includes two position feedbacks—direct drive valve displacement and actuator cylinder displacement, as is shown in Figure 1. In this figure, the signals used for fault detection are marked with red ball.
The simulation model of the aileron actuator is established with MATLAB Simulink and AMESim . Simulink, developed by MathWorks, is the visual simulation environment in MATLAB. Thanks to its convenient graphic model modules such as linear/nonlinear modules, continuous/discrete modules, and advanced control toolboxes, it is quite fit for control loop modeling. However, it could not handle hydraulic modeling lacking corresponding modules. AMESim, developed by Imagine, is a hydraulic/mechanical system modeling, simulation, and analysis software. With abundant parameterized hydraulic modules, the hydraulic part of the aileron actuator can be easily founded. However, there are relatively few control modules in AMESim. With the combination of Simulink and AMESim, the advantages of these two can be fully utilized and thereby a relatively good model of aileron actuator is promising. The control part of the aileron actuator established in Simulink environment is shown in Figure 2; the mechanical part of the aileron actuator is shown in Figure 3. The mechanical part of the aileron actuator established in AMESim is converted to a Simulink -Function, and the -Function can be imported to Simulink. The physical parameters of the key components are described in Tables 1–9.
One leakage/viscous friction module, which is utilized for cylinder internal leakage fault injection , and two piston modules constitute the simulation model of the hydraulic cylinder of the aileron actuator.
In this paper, the aileron actuator works at normal temperature, 40°C, which is shown, as a part of elementary hydraulic properties, in Table 1. And the kinematic viscosity will decrease when temperature increases.
Under normal condition, the pressure of the pump as shown in Table 2 is 210 bar.
Under normal condition, the pressure drops and the flow rate at maximum valve opening as shown in Table 3 is 20 bar and 150 L/min.
Under normal condition, the clearance diameter as shown in Table 4 is set to mm. And it will be increased in order to inject the internal leakage fault.
The chamber length at zero displacement, the rod diameter, and the piston diameter as shown in Table 5 are 150 mm, 30 mm, and 90 mm.
The gain for signal output as shown in Table 6 is set to be 1.
The mass and displacement module, whose parameters are shown in Table 7, is adopted to confine the hydraulic cylinder’s movement scope.
The spring damper, whose parameters are shown in Table 8, is adopted for simulation of the damp of aerodynamic loads.
In Table 9, list the parameters of flow control valve.
3. Fault Analysis and Injection
According to statistical maintenance data, main faults of an aileron actuator include amplifier fault, sensor fault, leakage fault, external leakage fault, pump fault, and valve fault, which are listed in Table 10.
Failure mode, effects, and criticality analysis (FMECA) is a bottom-up, inductive analytical method for fault analysis. According to the FMECAs of hydraulic system made by Li et al.  and Balaban et al. , these faults can be roughly divided into four quadrants depending on their criticality and frequency. As shown in Figure 4, the first-quadrant faults are high-frequency and high-criticality so that normally they have to be considered in design phase. The second-quadrant faults, currently dealing with visual inspection, are high-frequency but low-criticality. The third-quadrant faults are low-frequency and low-criticality and thus are dismissed taking cost into consideration. The fourth-quadrant faults, which need constant monitoring, are low-frequency but high-criticality.
To demonstrate the approach presented in this paper, four faults including electronic faults and mechanical faults were introduced into the simulation model and listed in Table 11.
The faults listed in Tables 10 and 11 were introduced into the simulation model by changing several specific parameters of the fault component, and these components were marked with red box in Figures 2 and 3. The details of fault injection were listed in Table 12. The parameter of force motor fault is set to 0, indicating force motor coil break; the parameter of sensor fault is set to 0, indicating sensor coil break; the parameter of leakage fault is set to 5 instead of the default normal value , indicating 5.56% leakage since the diameter of the valve is 90 mm; the parameter of amplifier fault is set to 15 instead of the default normal value 50, indicating 70% signal transmitting loss. All the faults were introduced into the simulation model in advance of stimulation.
The proposed method in the paper consists of two major parts, the model training using historical data and the real-time diagnosis using real-time data. In model training part, three steps are conducted. Firstly, historical data which include DDV input, force motor current, DDV displacement, and actuator cylinder displacement are corrupted by white noise with signal-noise ratio to be 20 dB in MATLAB. Then, the corrupted data are truncated into a number of data segments according to the data period. And the mean, root mean square (RMS), peak-to-peak value (ppV), and kurtosis of these data segments are calculated and normalized, respectively. Hence 16-dimensional primitive inputs, shown in Table 13, are obtained. It is worth mentioning that the dimensions of the primitive inputs are not specially chosen since the key fault information will be automatically extracted by PCA. The flow chart of first step is shown in Figure 5. Secondly, PCA is utilized to conduct dimension reduction and noise reduction and thus the reduced inputs for the SVM model are got. Thirdly, the reduced inputs are input to the SVM model for parameter optimization using grid search. Once the optimal parameters for the SVM model are searched, the trained model is prepared for the real-time diagnosis. In Real-time diagnosis, real-time data are acquired by sensors deployed on the air craft. The same data preprocess as in model training part is conducted and the classification result is returned by the trained SVM model. Fault report would be generated for the pilot or ground control station if the classification results meet a certain fault criterion. The flow chart of the method is shown in Figure 6.
Invented by Karl Pearson, PCA adopts orthogonal mapping to map a set of possibly correlated variables to principal components that are linearly uncorrelated. The greatest variance lies on the first principal component, the second greatest variance on the second principal component, and so on.
Here is a data matrix, , whose rows are different repetition of the experiment and whose columns are different parameters: , . The scores of new vector of principal components , , where is ordinal number of the row, are given through a mathematical transformation defined by -dimensional vectors of weights , , where is the ordinal number of the principal component. The equation is shown as below:where is the th component of , and thus the maximum possible variance from is inherited by with each vector of weight constrained as a unit vector.
The first component of a data vector can then be given as a score in the transformed coordinates, where has to satisfyand the th component can be found by subtracting the first principal components from :and then finding the weight vector which extracts the maximum variance from this new data matrixthe th component of a data vector can then be given as a score in the transformed coordinates.
The full principal component decomposition of can therefore be given aswhere is a -by- matrix whose columns are the eigenvectors of .
4.2. Grid Search and CV
Grid search executes exhaustive searching through an artificially selected parameter set of certain learning algorithms. A typical soft-margin SVM classifier equipped with an RBF kernel has two parameters that need to be tuned: a regularization constant and a kernel hyper parameter . The goal of grid search is to identify good pair () so that the classifier can accurately predict unknown data. Exponentially growing sequences of and (e.g., , are recommended by Hsu et al. .
In contrast with other optimization algorithms such as genetic algorithm and particle swarm algorithm, the grid search is straightforward but seems naive. However, there are two motivations why I prefer the simple grid-search approach. One is that, psychologically, we may not feel safe to use methods which avoid doing an exhaustive parameter search by approximations or heuristics. The other reason is that the computational time required to find good parameters by grid search is not much more than that by advanced methods since there are only two parameters in this case. Furthermore, the grid search can be easily parallelized because each () is independent. Many of advanced methods are iterative processes, for example, walking along a path, which can be hard to parallelize.
And the performance of the pair is assessed by cross validation on the training set. The training set is divided into equal-sized subsets in -fold cross validation. In proper sequence, each subset is used for test while other subsets are used for classifier training. Hence, prediction results are obtained and the percentage of data correctly classified is the final cross validation accuracy. Rodriguez et al.  conducted a sensitivity analysis for cross validation and found 10-fold cross validation is a practical method.
4.3. One-versus-One SVM
One-versus-one SVM is proposed by Knerr et al.  that transform the -classification problem into two-classification problem. One-versus-one SVM adopts the voting method to get, respectively, the number of votes that the sample belongs to each classification. In the end, belongs to the classification in which the number of votes is the largest. Hsu and Lin  compared one-versus-one SVM, one-versus-all SVM, and DAG-SVM and the results showed that one-versus-one SVM may be more suitable for practical use.
In order to construct the subclassifier for class and , take the sample of class and class from the original sample as the training sample for two-classification problem; the optimal problem is shown as follows:Corresponding decisive plane iswhere is the coefficient of the hyperplane between classes and , is the intercept of the hyperplane between classes and , is the map of the sample in the high-dimension space, is error penalty factor which reflects the valued degree of sample outliers and adjusts the proportion between the incredible range and empirical risk of SVM network model, and is the fitting error variable.
4.4. Alarm Criterion
With the continuous development of FCC, the limitation of FCC will be kept pushing. Once the computational limits were broken and complex algorithm could also achieve practically fast fault detection, then in order to reduce false alarm rate to the greatest extent, three-alarm criterion listed below can be attempted.
Criterion 1 (two consecutive classification results concur). If two consecutive classification results concur, then the classification results are validated and the corresponding fault can be reported.
Criterion 2 (two out of three consecutive classification results concur). If the first two consecutive classification results differ and yet two out of three consecutive classification results concur, then the classification results are validated and the corresponding fault denoted by the two same classification results can be reported.
Criterion 3 (none of three consecutive classification results concur). If three consecutive classification results all differ, then the diagnosis fails and the diagnosis-fail report will be submitted.
5. Fault Diagnosis and Result Analysis
In this simulation case, the amplitude of system input is 2 mm, the frequency of system input is 0.5 Hz, the sampling rate is 200 S/s, and the sampling time is 20 s. Accordingly, the features, which include mean, RMS, ppV, and kurtosis, are extracted every 200 points. The data obtained are considered as the historical data to train the model. Once trained, the model can be used to detect faults every 200 points (less than 1 s depending on the real-time sampling rate) in real-time diagnosis. The extracted features at different working conditions are listed in Figure 7, from which it is clear to see that different working conditions result in different feature amplitude so that fault classification using these features is positively tenable.
The results of PCA for the 16-dimensional primitive inputs are shown in Table 14 and Figure 8, from which it is clear to see that the first three principal components occupy up to 100% cumulative contribution rate and that the inputs dimension may even be reduced to just 1-dimension depending on the ultimate test rate of the trained model.
As shown in Table 15, using just the first principal component to train the model, the trained model’s cross validation rate is 76.73% and test rate is 76.75%, which implies overreduction and information loss. Using first five principal components to train the model, the trained model’s cross validation rate is increased up to 98.88% and test rate to 99.01%, close to 1, which is more than good so the reduced inputs can be determined as three-dimensional.
There are two parameters, penalty factor and kernel parameter , to be optimized in one-versus-one SVM using RBF kernel which is shown below:The exponentially growing sequences of parameter pairs () are adopted in grid search and the contour of parameter pairs is shown in Figure 9. The best pair (, ), whose cross validation accuracy was up to 98.87%, was obtained.
The final results, shown in Table 16, indicated that the PGC-SVM proposed in the paper outperformed traditional SVM in both time cost (Pentium(R) Dual-Core CPU T4500 @ 2.30 GHz) and classification accuracy.
This paper presents an aileron actuator fault diagnosis approach combining principal component analysis (PCA), grid search (GS), 10-fold cross validation (CV), and one-versus-one support vector machine (SVM). The classification accuracy is good enough for the diagnosis of the main faults of aileron actuators which include force motor coil break, sensor coil break, actuator cylinder leakage, and amplifier gain reduction. Compared to the traditional SVM, the PGC-SVM demands less time for both parameters optimization and model training. The performance of the proposed algorithm is fast enough for fault detection to switch as soon as possible on a redundant actuator. The high classification accuracy of actuator faults gives the algorithm a bonus that maintenance efficiency can be promoted since maintenance preparation can be done before the landing of aircraft. Hence, the algorithm presented in the paper shows a great potential once it passed the rigorous test of real FCC.
Obviously, the future work lies in the field validation of the proposed algorithm. And in practice, the field data are often severely corrupted by various data noise that may influence the performance of the algorithm so that noise immunity of the proposed algorithm should also be considered. Besides, the method still has some room for improvement—the computational resource consumption can be compressed further and detection delay can be minimized.
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
Wei-Li Qin and Chen Lu drafted the paper; Wei-Li Qin and Chen Lu acquired the data; Wei-Li Qin analyzed and interpreted the data; Wei-Li Qin and Chen Lu critically revised the paper; Chen Lu and Wen-Jin Zhang planned and supervised the research.
This research was supported by the National Natural Science Foundation of China (Grants nos. 61074083, 50705005, and 51105019) and by the Technology Foundation Program of National Defense (Grant no. Z132013B002).
- Y. Chinniah, R. Burton, S. Habibi, and E. Sampson, “Identification of the nonlinear friction characteristics in a hydraulic actuator using the extended Kalman filter,” Transactions of the Canadian Society for Mechanical Engineering, vol. 32, no. 2, pp. 121–136, 2008.
- I. Lopez and N. Sarigul-Klijn, “A review of uncertainty in flight vehicle structural damage monitoring, diagnosis and control: challenges and opportunities,” Progress in Aerospace Sciences, vol. 46, no. 7, pp. 247–273, 2010.
- F. Zhao and H. Su, “A decision tree approach for power transformer insulation fault diagnosis,” in Proceedings of the 7th World Congress on Intelligent Control and Automation (WCICA '08), pp. 6882–6886, IEEE, Chongqing, China, June 2008.
- S. Ozev, P. K. Nikolov, and F. Liu, “Parametric fault diagnosis for analog circuits using a bayesian framework,” in Proceedings of the 24th IEEE VLSI Test Symposium IEEE Computer Society, pp. 272–277, Berkeley, Calif, USA, May 2006.
- C. Zang and M. Imregun, “Structural damage detection using artificial neural networks and measured FRF data reduced via principal component projection,” Journal of Sound and Vibration, vol. 242, no. 5, pp. 813–827, 2001.
- L. He, K.-N. Jia, and Z.-Q. Fan, “The immune genetic algorithm in fault diagnosis of modern power system,” in Proceedings of the 2nd International Conference on Education Technology and Computer (ICETC '10), vol. 4, pp. V4-26–V4-29, IEEE, Shanghai, China, June 2010.
- E. Altunok, M. M. R. Taha, D. S. Epp, R. L. Mayes, and T. J. Baca, “Damage pattern recognition for structural health monitoring using fuzzy similarity prescription,” Computer-Aided Civil & Infrastructure Engineering, vol. 21, no. 8, pp. 549–560, 2006.
- D. Henry, J. Cieslak, A. Zolghadri, and D. Efimov, “A non-conservative solution for early and robust fault diagnosis in aircraft control surface servo-loops,” Control Engineering Practice, vol. 31, no. 1, pp. 183–199, 2014.
- B. Vanek, A. Edelmayer, Z. Szabó, and J. Bokor, “Bridging the gap between theory and practice in LPV fault detection for flight control actuators,” Control Engineering Practice, vol. 31, no. 1, pp. 171–182, 2014.
- A. Gheorghe, A. Zolghadri, J. Cieslak, P. Goupil, R. Dayre, and H. L. Berre, “Model-based approaches for fast and robust fault detection in an aircraft control surface servo loop from theory to flight tests,” IEEE Control Systems Magazine, vol. 33, pp. 20–84, 2013.
- P. Goupil and A. Marcos, “The European ADDSAFE project: industrial and academic efforts towards advanced fault diagnosis,” Control Engineering Practice, vol. 31, pp. 109–125, 2014.
- D. Efimov, J. Cieslak, A. Zolghadri, and D. Henry, “Actuator fault detection in aircraft systems: oscillatory failure case study,” Annual Reviews in Control, vol. 37, no. 1, pp. 180–190, 2013.
- T. Yaohua, G. Jinghuai, and B. Qianzong, “Novel selective support vector machine ensemble learning algorithm,” Journal of Xi'an Jiaotong University, vol. 42, no. 10, pp. 1221–1225, 2008.
- W. Jiang and S. Wu, “Multi-data fusion fault diagnosis method based on SVM and evidence theory,” Chinese Journal of Scientific Instrument, vol. 31, no. 8, pp. 1738–1743, 2010.
- X. Gu, S. Yang, and S. Qian, “On rotary machine's multi-class fault recognition based on SVM,” in Proceedings of the 26th Chinese Control Conference (CCC '07), pp. 460–463, IEEE, Hunan, China, July 2007.
- S.-L. Zhao and Y.-C. Zhang, “SVM classifier based fault diagnosis of the satellite attitude control system,” in Proceedings of the International Conference on Intelligent Computation Technology and Automation (ICICTA '08), pp. 907–911, Hunan, China, October 2008.
- Z. Zhao, M. Jia, F. Wang, and S. Wang, “Intermittent chaos and sliding window symbol sequence statistics-based early fault diagnosis for hydraulic pump on hydraulic tube tester,” Mechanical Systems and Signal Processing, vol. 23, no. 5, pp. 1573–1585, 2009.
- J. Yao, G. Yang, and D. Ma, “Internal leakage fault detection and tolerant control of single-rod hydraulic actuators,” Mathematical Problems in Engineering, vol. 2014, Article ID 345345, 14 pages, 2014.
- P. Li, Z.-H. Yuan, and F. Su, “Reliability analysis of electro-hydraulic actuator based on fuzzy FMECA,” Machine Tool & Hydraulics, vol. 7, pp. 178–182, 2013.
- E. Balaban, A. Saxena, P. Bansal, K. F. Goebel, P. Stoelting, and S. Curran, “A diagnostic approach for electro-mechanical actuators in aerospace systems,” in Proceedings of the IEEE Aerospace Conference, pp. 1–13, IEEE, Big Sky, Mont, USA, March 2009.
- C.-W. Hsu, C.-C. Chang, and C.-J. Lin, A Practical Guide to Support Vector Classification, Department of Computer Science & Information Engineering National Taiwan University, 2010.
- J. D. Rodriguez, A. Perez, and J. A. Lozano, “Sensitivity analysis of k-fold cross validation in prediction error estimation,” IEEE Transactions on Pattern Analysis & Machine Intelligence, vol. 32, no. 3, pp. 569–575, 2010.
- S. Knerr, L. Personnaz, and G. Dreyfus, “Single-layer learning revisited: a stepwise procedure for building and training a neural network,” in Neurocomputing, pp. 41–50, Springer, 1990.
- C.-W. Hsu and C.-J. Lin, “A comparison of methods for multiclass support vector machines,” IEEE Transactions on Neural Networks, vol. 13, no. 2, pp. 415–425, 2002.
Copyright © 2016 Wei-Li Qin 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.