Sie sind auf Seite 1von 205

INTERNATIONAL JOURNAL OF SOFT COMPUTING APPLICATIONS (IJSCA) ISSN: 1453-2277

Issue 3 June, 2008

International Journal of Soft Computing Applications - Issue 3 (2008) INTERNATIONAL JOURNAL OF SOFT COMPUTING APPLICATIONS (IJSCA) http://www.eurojournals.com/IJSCA.htm Editor-In-Chief
Ibrahiem M. M. El Emary, Al Ahliyya Amman University, Amman, Jordan

Editorial Advisory Board


Erzsebet Merenyi, Rice University Eduard Babulak, American University of Cyprus Angelo Tartglia, Dipartimento Di Fisica Roger Cooley, University of Kent Abdel Badeeh Salem, Ain Shams University Rolando Carrasco, University of Newcastle Upon Tyne Kecheng Liu, University of Reading Piet Kommers, Twente University Musbah J. Aqel, Applied Science University Selvan Srivasan, PSG College of Technology

Aims and Scope


The International Journal of Soft Computing Applications is a quarterly, peer-reviewed international research journal that addresses both applied and theoretical issues. The scope of the journal encompasses research articles, original research reports, reviews, short communications and scientific commentaries in the field of applied and theoretical soft computing approaches. The journal welcomes original research in areas such as neural networks, fuzzy logic, evolutionary computation, pattern recognition, hybrid intelligent systems, software agents, image processing, computer networks, e-learning, e-commerce, e-medicine, symbolic machine learning, statistical models, image/audio/video compression and retrieval. The journal highly encourages new ideas, combining two or more areas such as Neural-Fuzzy, Neural-Expert, Neural-Genetic, Neural-Pattern Recognition, and Genetic-Fuzzy.

Editorial Policies
1) The journal realizes the meaning of fast publication to researchers, particularly to those working in competitive & dynamic fields. Hence, it offers an exceptionally fast publication schedule including prompt peer-review by the experts in the field and immediate publication upon acceptance. It is the major editorial policy to review the submitted articles as fast as possible and promptly include them in the forthcoming issues should they pass the evaluation process.

2) All research and reviews published in the journal have been fully peer-reviewed by two, and in some cases, three internal or external reviewers. Unless they are out of scope for the journal, or are of an unacceptably low standard of presentation, submitted articles will be sent to peer reviewers. They will generally be reviewed by two experts with the aim of reaching a first decision within a two-month period. Suggested reviewers will be considered alongside potential reviewers identified by their publication record or recommended by Editorial Board members. Reviewers are asked whether the manuscript is scientifically sound and coherent, how interesting it is and whether the quality of the writing is acceptable. Where possible, the final decision is made on the basis that the peer reviewers are in accordance with one another, or that at least there is no strong dissenting view. 3) In cases where there is strong disagreement either among peer reviewers or between the authors and peer reviewers, advice is sought from a member of the journal's Editorial Board. The journal allows a maximum of three revisions of any manuscripts. The ultimate responsibility for any decision lies with the Editor-in-Chief. Reviewers are also asked to indicate which articles they consider to be especially interesting or significant. These articles may be given greater prominence and greater external publicity. 4) Any manuscript submitted to the journals must not already have been published in another journal or be under consideration by any other journal. Manuscripts that are derived from papers presented at conferences can be submitted even if they have been published as part of the conference proceedings in a peer reviewed

International Journal of Soft Computing Applications - Issue 3 (2008)

journal. Authors are required to ensure that no material submitted as part of a manuscript infringes existing copyrights, or the rights of a third party. Contributing authors retain copyright to their work. 5) The journal makes all published original research immediately accessible through www.EuroJournals.com without subscription charges or registration barriers. Through its open access policy, the journal is committed permanently to maintaining this policy. This process is streamlined thanks to a user-friendly, web-based system for submission and for referees to view manuscripts and return their reviews. The journal does not have page charges, color figure charges or submission fees. However, there is an article-processing and publication fee payable only if the article is accepted for publication.

Submissions
Submitted papers must be in English and should not have been published elsewhere or being currently under consideration by any other journal. All papers are subjected to a blind peer review process. Manuscripts are invited from academicians, research students, and scientists for publication consideration. The journal welcomes submissions in all areas related to soft computing approaches with their applications. Each manuscript must include a 200 word abstract. Authors should list their contact information on a separate paper. The journal publishes both applied and conceptual research. Articles are accepted in MS-Word or pdf formats, there is no submission fee, publication fee for each accepted article is $150 USD. Articles for consideration are to be directed to the editor-in- chief through doctor_ebrahim@yahoo.com.

Ibrahiem M. M. El Emary Head of Computer Engineering Department, Faculty of Engineering Al Ahliyya Amman University Amman, Jordan Tel: +962 796100607, +962 65337538

International Journal of Soft Computing Applications - Issue 3 (2008) INTERNATIONAL JOURNAL OF SOFT COMPUTING APPLICATIONS (IJSCA) http://www.eurojournals.com/IJSCA.htm

Issue 3 June, 2008 Contents


Solving New Student Allocation Problem with Genetic Algorithms: A Hard Problem for Partition Based Approach Zainudin Zukhri and Khairuddin Omar The Real-Time and Predictive Decision Support System: An Industrial Case Study Eduard Babulak and Ming Wang A Component-Based Approach to Effort Estimation Simon Wu. Iok Kuan Ontologies Re-Engineering for Association Rules Discovery Kamal A. El-Dahshan and Eman K. El Sayed Design and Development of an Efficient Controller for a Servo Position Control System Using Hybrid Fuzzy-Genetic Algorithm: a Case Study Akhlesh Kumar and Yaduvir Singh Non-Linear Behaviour Compensation and Optimal Control of SCR Using Fuzzy Logic Controller Assisted by Genetic Algorithm: A Case Study Akhlesh Kumar and Yaduvir Singh Robotic Arm Movement Optimization and Trajectory Planning Using Genetic Algorithms Vijay Kumar Banga, Yaduvir Singh and Rajesh Kumar Fault Classification in Phase Locked Loops Using Back Propagation Neural Network J. Ramesh, P.T. Vanathi, K. Gunavathi, Thirunavukkarasu K.A and Sivasubramanian.M Extended Genetic Algorithm Based Grid Scheduler (EGAGS) K. Somasundaram and S. Radhakrishnan Software Quality Assessment Based on Fuzzy Logic Technique Harish Mittal, Pradeep Bhatia and Puneet Goswami A Comparison of Neural Network, Arima Model and Multiple Regression Analysis in Modeling Rice Yields Ruhaidah Samsudin, Puteh Saad and Ani Shabri Modeling and Evaluating of Emotional Processes Khalil Shihab and Haider Ramadhan 6-15 16-27 28-36 37-43

44-55

56-68 69-76 77-95

96-104 105-112

113-127 128-147

International Journal of Soft Computing Applications - Issue 3 (2008) 148-156 157-163

Uncertainty Analysis of the Measurement Analogue Electronic Converters During the Design Stage H. Mechergui and I. Stantchev Word-Command and Ultrasonic Sensors as an Electric Wheelchair Controller Mohamed Fezari, Nasr Eddine Debbache and Karim Hamza Comparing the Accuracy of Simulation Model with Local Area Network, Wide Area Network and Test-Bed for Remote Data Transfers Measurement Mohd Nazri Ismail and Abdullah Mohd Zin On Estimating a Cure Fraction in a Population-Based Cancer Survival Analysis Khalid A. Salah, Mohd Rizam Abu Bakar, Noor Akma Ibrahim and Kassim Haron

164-186 187-205

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.6-15 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

Solving New Student Allocation Problem with Genetic Algorithms: A Hard Problem for Partition Based Approach
Zainudin Zukhri Islamic University of Indonesia, Yogyakarta 55584, Indonesia E-mail: zainudin@fti.uii.ac.id Khairuddin Omar Universiti Kebangsaan Malaysia, 43600 UKM Bangi, Malaysia E-mail: ko@ftsm.ukm.my Abstract This paper inspired by successful application of Genetic Algorithms (GAs) for solving difficult optimization problems. We explore the applicability of GAs to the New Student Allocation Problem (NSAP), which allocates new students into some classes in which consist of similar students and the number of students in each class does not exceed its maximum capacity. This topic is essential, because it is very difficult to give good educational service for large number of students with high diversity of achievements or skills. It concerns on similar objects, hence NSAP is a clustering problem but there is no clustering method that clusters objects (students) with the number of objects in each cluster (class) which has been defined previously. As a matter of fact, ranking method that commonly used does not have an appropriate concept on students similarity. It is an unsolved problem. We propose two approaches based on the chromosomal representation: Partition Based Approach (PBA) and Centre Based Approach (CBA). Some computational experiments have been done to analyze the effects of the different chromosomal representations. Based on the comparison of the results, we find out that CBA is better than PBA, since it is easy for CBA to minimize the gap in each class. Keywords: Clustering, similar student, Genetic Algorithms, partition based, centre based

1. Introduction
The New Student Allocation Problem (NSAP) is one of clustering problems that allocates students into some classes with minimum intelligence gap in each class and the number of students in each class does not exceed its maximum capacity. This topic is essential, because it is very difficult to give good educational service for large number of students with high diversity of achievements [13] or skills [14]. With the students allocated into the groups, discriminating policies to these groups can be implemented easily [9]. It is difficult to measure students intelligence. University or school only have very limited time to know their real intelligence level and the educational process should be held at a short time after new student registration period. It is fairly acceptable if their intelligence measured by their admission test score but then they will usually be allocated into classes with sorting method: a group of new students who has similar ranking and assigns into the same class. Although this method has no

Solving New Student Allocation Problem with Genetic Algorithms: A Hard Problem for Partition Based Approach

appropriate concept of students similarity, many educational institutions still utilize it. For example, there is a case in California USA which applied this method. The case appeared after a research resulted on how similar students get different results in hundreds of school in this area [15]. Since students with same ranking assumed as similar, it is very reasonable that they get different results. Same total scores do not always show students similarity, because same total scores can be assembled from various score combinations. According to clustering method, among the various scores combination, the score combination with completely similar components shows high degree of students similarity. For example, if we apply only two subjects as grouping criteria, student A with 100 in Biology and 50 in Mathematics must be similar to the student B with Biology score is approximately 100 and Mathematics score is approximately 50. If one of those combinations puts in reverse, so that student A with 100 in Biology and 50 in Mathematics can be considered similar to student C with 50 in Biology and 100 in Mathematics, it definitely doesnt make sense, although their total score is the same. Student C should be separated in different class with student A or student B. If there is student D with 90 in Biology and 45 in Mathematics, then he/she can be grouped in a same class with student A or student B. It is acceptable since student D is more similar to student A or to student B rather than to student C. On the contrary, in traditional sorting method, student C is not only similar to student A or student B, but he/she is also exactly the same with student A and student B, because their total scores are the same. This is inappropriate concept of similarity. Hence, NSAP should be solved by clustering method with a right concept of objects similarity. There are loads of clustering methods which have been developed in various fields but none of them can be applied to solve NSAP due to classroom capacity. However there is no clustering method which predefines the number of each cluster. In NSAP, the number of objects (students) in each cluster (class) depends on the classroom size. It cannot pursue the result of clustering process. The clustering methods should be modified to solve NSAP. It is common in clustering area, because clustering is a subjective process. This subjectivity makes the process of clustering becomes difficult, because a single algorithm or approach is not adequate to solve another clustering problem [6]. Bhuyan et al. had applied GAs to solve general clustering problem [1]. They clustered several objects so that each cluster resulted in high dissimilarities with other clusters and in each cluster contained similar objects. They suggested chromosomal representations called order-based representation. Their idea about chromosomal representation is very good, but it is not enough to represent classroom capacity. However, it inspires us to modify their work as one of our proposed approach to solve NSAP. According to the general clustering problem, finding solution of NSAP is a hard process because of the large number of ways available. To cluster n objects into nc clusters, the number of ways is [8] nc 1 nc N (n, nc ) = (1) (1) i (nc i) n i nc ! i = 0 Let us consider this simple illustration. There are 15 new students that should be allocated to three classes with same capacity. They will be clustered based on two variables: Mathematics and Biology scores. Assume that the distribution of their scores in a Cartesian coordinate system is shown in Figure 1(a). Although the number of ways is equals to 210,766,920, the solution will be established easily by examining the distribution. The solutions are class A consists of students with index number 3, 5, 8, 13 and 15, class B consists of students with index number 4, 7, 9, 11 and 14, and class C consists of students with index number 1, 2, 6, 10 and 12.

Zainudin Zukhri and Khairuddin Omar


Figure 1: Illustration of allocating 15 students into three classes based on two scores (a) Distribution of Mathematics and Biology scores

100 90 80 70 Biology 60 50 40 30 20 10 0 0 13

3 5 15

A 8 Centre of A

4 11 7

9 14

Centre of B Centre of C 1 2 10 12 10 20 30 40 50 60 70 80 90 100 6 C

Mathematics
(b) Partition Based Solution Representation

(c) Centre Based Solution Representation

It is an easy problem to be solved in a small number of students, but in fact the number of students is too large and the number of criteria is more than two. Finding the solution by traditional methods needs unfeasible time or it will only be trapped in a local optima. It is very complicated, since the larger number of objects, the harder to find the optimal solution. Furthermore, it takes longer to reach a reasonable result. This is the reason why this problem labeled as NP-hard problem. We propose two approaches of chromosomal representation for solving NSAP with Genetic Algorithms (GAs). It inspired by a successful application of GAs for solving difficult optimization problems, included NP-hard problem. Using conventional methods to solve NP-Hard problem requires an exceptionally lot of time, but GAs can solve it in a feasible time [7]. GAs have been proved powerful for solving optimization problems in many current empirical works and theories. They particularly well suited to solve hard and multidimensional problems with numerous difficulties to find optima [16]. They search the solution based on the mechanism of natural selection and natural genetics [4].

Solving New Student Allocation Problem with Genetic Algorithms: A Hard Problem for Partition Based Approach

2. Methods used in the Experiments


GAs must be adapted to solve the problems, in particular, chromosomal representation and operators need to be designed carefully [10]. The adaptation is needed to make the chromosome represents the solution of the problem and then it can be manipulated by GAs operators. Based on the illustration in Figure 1, the solution of NSAP can be represented in two ways: partition based and centre based. Those representations give us an idea to design chromosomal representation. The first representation can be directly used as chromosomal representation. It is commonly used in many applications of GAs to solve combinatorial optimization and known as order-based representation (permutation code) [3]. But the second representation cannot be used directly, because it is rather complicated to design GAs operators which capable to manipulate it. In handling the problem, this representation should be coded as binary number. It is the second chromosomal representation. Based on the chromosomal representation, we propose two approaches for solving NSAP with GAs: Partition Based Approach (PBA) and Centre Based Approach (CBA). Both approaches consist of same steps: initial generation, evaluation, selection, crossover, mutation and stopping criterion (see [3] for details). However, there are different steps in detail related to the difference of chromosomal representation. The summary of both approaches presented in Table 1.
Table 1:
No 1 2 3 4 5 6

The summary of PBA and CBA


PBA CBA Generate chromosomes with permutation code Generate chromosomes with binary code Minimize the largest gap in each class Roulette Wheel Selection Order Based, Position Based Uniform Crossover Order Based, Position Based, Scramble Inverse gene randomly Number of generations

Step Initial generation Evaluation Selection Crossover Mutation Stopping criterion

There are three equal steps in detail namely evaluation, selection and stopping criterion. For evaluation and selection, we use the same objective and fitness function. For selection, we use the same selection method called Roulette Wheel Selection. For stopping criterion, we use number of generations. There are also another three different steps in detail, i.e. initial generation, crossover and mutation. In the first step, we use different chromosomal representation: PBA generates permutation code and CBA generates binary code. For the subsequent steps, we use small parts of familiar crossover and mutation methods [2, 3, 12]. For evaluation and selection, we should define an objective function. Since NSAP is minimization of the largest intelligence gap in each classroom, we can define it as minimization of distance between the furthest objects (students) in all clusters (classes). Assuming that each student g (g1, g2, .., gn) has m admission test scores (x1, x2, .., xm) and then they will be clustered based on their scores into nc classes where the capacity of the class is q (q1, q2, .., qnc ). If intelligence gap between student v and student w is defined as Euclidean distance as followed
d (v, w) =
k =1

(xk , v x k , w )2 ,

(2)

then the objective function is h( x) = min (max(d i ( g a , g b ) | i = 1..nc )), (3) where 1 a qi, 1 b qi, and ab. The objective function of NSAP is minimization, but we use Roulette Wheel Selection which makes optimization of GAs is only maximization. In order to minimize the objective function,

10

Zainudin Zukhri and Khairuddin Omar

increasing of objective function values must be mapped onto decreasing of fitness function values [11]. Therefore, the fitness function defined as: 1 . (4) f ( x) = h( x) + 1 2.1. Partition Based Approach (PBA) The chromosomal representation of PBA is order-based representation. It is commonly used in GAs application to solve some combinatorial problems [3], but we should define a special rule to make it represents the solution of NSAP. To cluster n new students into nc classes, chromosomal representation is designed as follows: (1) A chromosome consists of n genes and it represents all new students. (2) A chromosome divides into nc sub-chromosomes. The ith sub-chromosome is representation of ith class. It consists of qi genes. (3) Each gene is a unique integer g, where 1 g n. The gth gene represents gth student. The chromosomal representation described in Figure 2.
Figure 2: Chromosomal Representation of PBA

Chromosomes will be generated randomly with order-based representation in the initial generation step. Since chromosome directly represents the distribution of new students, they can be substituted into an Equation (3) for evaluation. 2.2. Centre Based Approach (CBA) The chromosomal representation of CBA is binary representation. To cluster n new students into nc classes, chromosomal representation designed as followed: (1) A chromosome consists of c sub-chromosome. The ith sub-chromosome is representation of a student as the centre of ith class and it consists of m genes or bits. (2) A student should be a member of a class, but he/she probably becomes the centre of two or more classes. The chromosomal representation is shown in Figure 3.

Solving New Student Allocation Problem with Genetic Algorithms: A Hard Problem for Partition Based Approach
Figure 3: Chromosomal Representation of CBA

11

Chromosomes which consist of nc sub-chromosomes will be generated randomly with binary representation in the initial generation step. In order to generate it, we should determine the width of sub-chromosome. Based on this value, the mathematic formulation of the centre of classes can be determined too. The following is the rules to determine them: (1) If there is an integer m so that number of new students equals to 2m, then the width of subchromosome is m. The index of student as the centre of the ith class will be Ci = bk 2 m k +1.
k =1 m

(5)

If there is no integer m so that the number of new students equals to 2m, then the width of sub-chromosome is the lowest m which 2m > n. The index of student as the centre of the ith class is m Ci = int (n bk 2 m k ) / 2 m +1. (6) k =1 The centre of classes should be converted to the distribution of new students with algorithms as follows: Step 1. j1 Step 2. member[j] 0 Step 3. jj+1 Step 4. if j nc then go to step 2 Step 5. i1 Step 6. j1 Step 7. find the nearest student g from centre[j] who has not been clustered Step 8. if member[j] capacity[j] then Step 9. cluster the student g into class[j] Step 10. i i + 1 Step 11. member[j] member[j] + 1 Step 12. j j + 1 Step 13. if (j nc) and (i nc) then go to step 7 After converting the centre to the distribution, the value of Equation (3) can be calculated for evaluation. (2)

12

Zainudin Zukhri and Khairuddin Omar

3. Results and Discussion


3.1. Experimentation parameters To evaluate the proposed approaches, we developed each proposed approaches as a software which capable to allocate n students into nc classes based on m subjects. Then we experimented them with a random data score consists of 200 students in four subjects. The scores are integers between 0 and 100. The students will be allocated into five classes with same capacities. We use Islamic University of Indonesia as the model on the number of students, classes and capacities on each class. In this case, the largest intelligence gap of the random data equals to 75.56. Among the students, there are 9 pairs of students who have same scores. Experiments have been performed for each combination of the following parameters: (1) Crossover probability: 0.25 and 0.50. (2) Mutation probability: 0.01, 0.05 and 0.1. (3) Population size: 50, 100 and 200 Here, we follow the suggested parameters of GAs [5]. Experiments with PBA have been performed for all combination of the crossover and the mutation methods. Experiments with CBA have been performed for a combination of crossover and mutation as shown in Table 1. The algorithms run on a Pentium Dual-Cores notebook with 1.73 GHz. We stop our algorithms after exactly 1000 generations for PBA and 250 generations for CBA. The CPU in PBA spends less than 5 minutes and in CBA spends less than 7 minutes. The comparison of PBA and CBA best known results presented in Figure 4.
Figure 4: Comparison of PBA and CBA best known results
70 60 57.65 60.91 51.24 59.41

Intelligence Gap

50 40 30 20 10 0

44.16 32.62 33.51 32.73 32.28 PBA CBA

30.1

Class A

Class B

Class C

Class D

Class E

We also run the algorithm of PBA for 2000 generations to give more chance to this approach. In these additional generations, CPU spends about 9 minutes. But there is no improvement compared to the previous experiments. The largest intelligence gap of all classes shows that both approaches can split the students with the largest intelligence gap into different classes. It indicates with none of the classes has the largest intelligence gap that equals to the largest intelligence gap of the input data. However, PBA cannot group each pair of students with same scores into the same classes. There are only four pairs of them

Solving New Student Allocation Problem with Genetic Algorithms: A Hard Problem for Partition Based Approach

13

allocated into same classes, although it was examined with the additional generations. On the other hand, each pair of the students is allocated into the same class by CBA. Although CBA needs more computational times than PBA, but it needs less number of generations to reach the best known solution. CBA needs only 236 generations to find the best known solution. Experiment with the additional generations shows that PBA needs tentative number of generations to reach it. The comparison of running results described in Figure 5.
Figure 5: Comparison of running results (a) Comparison of running results by PBA
70 60 Objective Function 50 Population Size=50 40 30 20 10 1 251 501 Generations 751 Population Size=100 Population Size=200

(b) Comparison of running results by CBA


70 60 Objective Function 50 Population Size=50 40 30 20 10 1 51 101 151 201 Generations Population Size=100 Population Size=200

14 3.2. Results analysis

Zainudin Zukhri and Khairuddin Omar

Experiments showed that CBA needed more time than PBA. This result is acceptable, because CBA had to decode chromosomes as binary numbers into decimal numbers and then converted them into the solutions. It did not happen to PBA. In addition, CBA is dependent on the number of classes, while PBA is independent to it. It indicates that time complexity of PBA is simpler than time complexity of CBA, but the experiment results in figure 5(a) showed that best known result of PBA was not as small as the objective function in the first generation. It indicates that PBA trapped into the local optima. Additional generation also gave no improvement to the result by PBA. Both combinations of parameters and variations of crossover and mutation methods gave no effect to the results. It seems that searching process by PBA is similar to blind search. It is shown in Figure 5(a) that there is no effect on additional population size. Logically, larger population size will give more probability to get a better population initialization (1st generation) similar to the running result of CBA in Figure 5(b). We should analyze the searching space of PBA to know why this approach is trapped to the local optima. The searching space of this approach with order-based representation for the chromosome is much greater than the real problem. The searching space of PBA only depends on the number of students and it equals to the factorial of the number of students. For 200 students, it equals to 200! but the total number of ways to cluster 200 students into five classes with same capacities only equals to 200! / (40!)5. There is a huge number of gene combinations in one partition which represents a same class, those too many different chromosomes represent the same solution. Manipulation by GAs operators only produces different chromosomes, but they represent same solution or old solution which had been created previously. In other words, the GAs operators cannot improve the fitness function in each generation. This is the principle of GAs. Since it cannot be attained, it clearly shows that the approach cannot give a good solution. The comparison of PBA and CBA results in figure 4 shows that CBA is better than PBA. With binary chromosomal representation in CBA, GAs operators can effectively manipulate chromosomes. The operators can easily produce new different solutions. It gives more possibility for GAs to explore the searching space. Finally, the potential solution can be found in a reasonable time. CBA also reduces the searching space as it equals to two powered by the width of chromosome. With the case of 200 students and five classes, it merely equals to 240. It is relatively small compared to the searching space of real problem (200!/(40!)5). According to the largest intelligence gap in each class, we conclude that CBA can produce classes with intelligence gap as minimum as possible. It means that more students with similar intelligence level are allocated in a same class.

4. Conclusion
We have proposed two approaches for GAs to solve NSAP. Using PBA to solve NSAP make GAs lost its ability. NSAP is a hard problem for PBA. Although the time complexity of PBA is simpler than CBA, experiments proved that this approach did not have ability to solve the problem. This approach makes GAs trapped into local optima, because the operators do not effectively produce a better population in the next generation. It is caused by total number of chromosome that is generated from GAs is much larger than total number of ways to cluster n students into nc classes. On the contrary, CBA succeeds to solve NSAP. In this approach, chromosomes represent students as the centre of each class. It can minimize the largest intelligence gap in each class and it can also reduce the searching space. Since we only use one combination of GAs operators with CBA, the following researches should try to improve the ability of GAs by more than one combination of operators. They can also hybrid GAs with another Artificial Intelligence approach to improve its ability.

Solving New Student Allocation Problem with Genetic Algorithms: A Hard Problem for Partition Based Approach

15

References
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] Bhuyan, J.N., Raghavan, V.V., and Elayavalli, V.K., Genetic algorithms for clustering with an ordered representation. In Belew, R.K., and Booker, L.B., editors, Proc. of the Fourth Int. Conf. on Genetic Algorithms, pp.408-415, 1991. Buyurgan, N. and Saygin, C., Real-time routing selection for automated guided vehicles in a flexible manufacturing system. Journal of Manufacturing Technology Management, 18(2): pp. 169-181, 2007. Gen, M. and Cheng, R., Genetic Algorithms and Engineering Optimization. John Wiley, New York, 2000. Goldberg, D.E., Genetic Algorithms in Search, Optimization & Machine Learning. AddisonWesley Publishing Company, Canada, 1989. Holland, J.H., Adaptation in natural and artificial systems. University of Michigan Press, Ann Arbor, 1975. Jain, AK., Murty, MN., & Flynn, PJ., Data Clustering: a Review. ACM Computing Surveys, 31(3): pp. 264-323, 1999. Kumar, R. & Banerjee, N. Running Time Analysis of a Multiobjective Evolutionary Algorithm on Simple and Hard Problems. In Wright, A.H., Vose, M.D., Jong, K.A.D. & Schmitt, L.M. (editor), Foundations of Genetic Algorithms. Berlin: Springer, 2005. Liu, C.L., Introduction to Combinatorial Mathematics. McGraw Hill, California, 1968. Ma, Y., Liu, B., Wong, CK., Yu, PS., & Lee, SM., Targeting the right students using data mining. Proc. of the 6th ACM SIGKDD Int. Conf. on Knowledge Discovery and Data mining, pp. 457 464, 2000. Michalewicz, Z., Genetic Algorithms + Data Structures = Evolution Programs. Third revised and extended edition. Springer-Verlag, New York, 1998. Steeb, W.H., Hardy, Y. and Stoop, R., The nonlinear workbook. World Scientific Publishing Co. Pte. Ltd., Singapure, 2005. Syswerda, G., Uniform crossover in genetic algorithms. In Glover, F., and Kochenberger, G.A., Handbook of Metaheuristics. Kluwer Academic Publishers, New York, 1989. Vanderhart, PG., Why do some schools group by ability? Some Evidence from the NAEP. American Journal of Economics and Sociology, 65(02): pp. 435, 2006. Wiedemann, T., A Virtual Textbook for Modeling and Simulation. Proceedings of the 2000 Winter Simulation Conference, pp. 1660 1665, 2000. William, T., Perry, M., Studier, C., Brazil, N., Kirst, M., Haertel, E., Reardon, S., Woody, E., Henne, M., Levin, J. & Levine, R., Similar Students, Different Results: Why Do Some Schools Do Better? A large-scale survey of California elementary schools serving low-income students. EdSource, California, 2005. Ziomek, W., Reformat, M. and Kuffel, E., Application of genetic algorithms to pattern recognition of defect in GIS. IEEE Transactions on Dielectrics and Electrical Insulation, 7(2): pp. 161-168, 2000.

[16]

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.16-27 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

The Real-Time and Predictive Decision Support System: An Industrial Case Study
Eduard Babulak Fairleigh Dickinson University- Vancouver, Canada 842, Cambie Street, BC, V6B 2P6 E-mail: babulak@ieee.org Ming Wang Fairleigh Dickinson University 842, Cambie Street, Vancouver BC, V6B 2P6, Canada E-mail: ming604@telus.net Abstract The focus of IT business applications has shifted from information processing to decision making since late 1990s. In many corporations, a large amount of operational and transactional data are tracked and kept in the integrated database. With help of BI software, the data can be processed into different types of performance measurements for further analysis. For managers, the challenge is how to use the information to manage business processes effectively and efficiently. For IT professionals, the challenge is to develop solutions to automate decision making processes. This paper looks into the decision making at the order fulfillment stage, where operational managers make tactical decisions to reconcile discrepancies between what has been promised and what can be physically fulfilled. The pressure on them to make right decision is very high as there is little or no margin for error in era of the zero inventory and Just-in-time practice. The paper analyses characteristics of the decision making process and proposes a real-time predictive decision support system to help the managers make right decisions. Then the paper presents a case study on the development of the real time predictive decision support system for production managers in a semiconductor plant. The paper describes in detail how the system had been developed and what are lessons learned from the application. In conclusion, the paper calls for a common development platform for real-time predictive decision support systems. Index Terms: Available to Promise, Predictive, Real Time, Discrete Event Simulation, Enterprise Resource Planning, Knowledge Acquisition, Decision Making, Order Fulfillment

1. Introduction
1.1. Global Manufacturing and Supply Chain Since late 1990s, the manufacturing landscape started to change rapidly, with China emerged as the world manufacturing base. Many corporations have either outsourced their productions to third party or relocated their production lines to low-wager countries. During the same period, corporations have advanced in giant strides on achieving high level of information integration by implementing powerful

The Real-Time and Predictive Decision Support System: An Industrial Case Study

17

ERP systems. The corporate-wide ERP systems and interconnectivity enable corporations to plan and coordinate their global manufacturing and supply chain effectively. At the very front is an Availableto-promise (ATP) function that provides a response to customer order enquiries, based on resource availability [1]. Today all commercial ERP and SCM software come with Available-to-promise (ATP) function that provides a response to customer order enquiries based on resource availability, such as SAPs APO, Oracles ATP server and i2s Rhythm etc. An ATP system will dynamically allocate and reallocate resources to promise. The promised orders and allocated resources will then be disseminated to the relevant business units for production and distribution (or generally called order fulfillment). The business environment to the case presented in this paper is a typical example of the global manufacturing and supply chain. The corporation is a world leading provider of microprocessor with the headquarter in the United States. The production of microprocessors is carried out in three different countries: silicon wafers are fabricated in the Germany plant and then sent to the Malaysian plant for assembly. The Singapore plant receives microprocessors from the Malaysia plant and carries out the testing operation. After tested, the chips are shipped to worldwide customers or distributors. The order fulfillment activities are planned and coordinated by the corporate-wide ERP system. Take the Singapore plant as an example. The Singapore plant receives microprocessors from Malaysia and release them into production. The production manager works on window of one working week (i.e. six working days). Two days ahead of the next working week the manager receives confirmed information on receiving goods from the Malaysian plant, the production schedule and the shipment plan for the forthcoming week. The production schedule decides how to release into production, whilst the shipment plan demands what quantities of products should be ready to ship by end of the week. It is the production managers responsibility to make sure that the promise (i.e. shipment plan) can be met. 1.2. Difficulties at the Order Fulfillment Stage The reality is that there are discrepancies between what has been promised and what can be physically produced due to the following reasons: 1) Quality of the information: The availability information kept in the IT system (system availability) is not always synchronized with the actual availability (physical availability). The availability information is typically updated periodically as it is very expensive to collect relevant data and update the database in real time. Due to the potentially inaccurate view of the availability, unrealistic promise can be made to customers [2]. 2) Product flexibility: microprocessors can be used for different types of applications, for instance, server, desktop, mobile equipment and so on. Each application is associated with its own testing specification. A microprocessor that fails the test for one application can be downgraded to another application. Thus, it is very likely that one production lot of microprocessors will be split to several sub-lots after a testing operation, each for one type of application. Subsequently several sub-lots with same type of application can be combined into one lot to go through next testing operation. The lot splitting and combination could occur very regularly if quality of wafer fabrication is inconsistent. Externally, a surge demand for one application (e.g. mobile equipment) will upgrade the order priority. Quantities and due-date for the mobile equipment application must be met first, even at the cost of delaying the delivery of orders to other applications: Under such circumstances, the manager may have to divert some microprocessors to the mobile equipment application from other product lines. Then the microprocessors have to be retested against a different specification and this will upset the original capacity allocation plan completely. 3) Unexpected events occur during production, for instance, machine breakdown, absentee of operators, inconsistent quality with one or two production lots having higher than average rejects, late arrival or shortage of some materials etc. All these lead to variation in capacity and/or production output. Traditionally many companies could rely on extra capacity and inventory to cushion the variations. However, this is no longer the practice in era of the zero inventory and Just-in-time

18

Eduard Babulak and Ming Wang

production. The production managers have to find a way to reconcile the discrepancies. The pressure on the managers to make right decision is very high as there is little or no margin for error. A promise made to a customer by an ATP system could fall apart because of one erroneous decision at the order fulfillment stage. One can feel such pressures and uneasiness in the Singapore plant more than the other places, as it is the last stop of the production chain. 1.3. Objective of the Case Study The authors believe that it is imperative to find a solution to help the managers make the right decisions and automating of the process is the main thrust of the solution. Therefore, we have proposed a real time predictive decision support system based on our understanding of the decision making process. Moreover the system had been developed for the production managers in the Singapore plant, with the objective to automating the decision making process as much as possible. Section 2 of the paper analyses characteristics of the decision making at the order fulfillment stage. Section 3 discusses the framework of the real time predictive decision support system. The real time has two dimensions: 1) Getting real time data for the decision making; 2) Instantaneousness by the manager to reach a decision. The predictive technology is employed to generate likely outcomes under different set of conditions. Section 4 describes how the system had been developed for the semiconductor plant and what lessons have been learned from the application. In final conclusion, the paper discusses a possible development platform to support the development of real-time predictive decision support systems.

2. Characteristics of the Decision Making at Order Fulfillment Stage


The stochastic nature of manufacturing leads to discrepancies between what has been promised and what can be physically produced. As a result, the production managers constantly act to disturbances to production that may deviate from the track. A disturbance could be either internal or external. The internal disturbance could be machine breakdown or higher-than-average rejects etc. The external disturbances would be shortage or late arrival of materials, changes to shipment plan and so on. The disturbances will prompt the manager to apply corrective actions in order to ensure that the production is still on target. Before deciding what actions to take, the manager needs to establish the production status first. Typically this can be done by getting reports on what have been produced (the lot report), what are being produced (work in progress or WIP report) and how the resources are allocated (the machine loading report). The managers may have several options to smooth production. The best option would ensure that the production output can meet the shipment plan. Figure 1 illustrates a set of steps in the managers decision-making process.

The Real-Time and Predictive Decision Support System: An Industrial Case Study
Figure 1: How a production manager makes a decision: major steps in the decision-making process

19

There are several important attributes associated with the decision making process, as described below: 1) High Information intensity: The decision concerns with individual machines or production lots. The production manager requires a large amount of information to have an accurate picture on the current production status and performance. The information can be categorized into three groups which are related to one another: i) Detailed production data on individual production lots and resources. ii) Aggregated production information by product families or resource groups. iii) Summarized performance information such as throughput, resource utilization, average cycle time and work-in-progress. It is based on the information that the manager will be able to establish the current production status and formulate options to cope with the disturbances. Examples of their options could include shifting several production lots from one machine to another or adding one hour of overtime to a particular machine. 2) Predictive nature: Although an adjustment is limited to several machines or production lots, it may affect the production performance significantly. Thus, the manager needs to know what will be impacts of a particular option on production performance. In particular, he wants to know whether the production output can match the shipment plan or not if the option is taken. 3) Real time: The production manager must make a decision as quickly as possibly, if not instantly. This is because the production is an ongoing process. Whilst the manager considers various options, goods are being produced. One cannot change what has already taken place in production. The business information systems such as enterprise resource planning (ERP) systems and manufacturing executive systems (MES) keep a large amount of operational and transactional data. With help of Business Intelligence (BI) software, the data can be processed into various performance matrixes for further analysis. Thus, availability of these information is no longer an issue to the decision making process. The gap seems in predictability, i.e. how to find out likely outcome of a particular option under consideration. To a certain extend, the predictability is the main theme of the decision support system discussed in this paper. The real-time predictive decision support system is the solution proposed to help the managers make right decision. Section 3 discusses the framework of the system and Section describes how the system was developed for the semiconductor plant in Singapore. From an operational perspective, the proposed decision support system is to help the production

20

Eduard Babulak and Ming Wang

manager decide how to keep the promise made by an ATP function and, therefore, it is named the KTP system.

3. Framework of the KTP System


Figure 2 illustrates the framework of the proposed real-time predictive decision support system, or KTP system. The core of the system is the model that can predicate likely production output with respect to a particular option under consideration. The model represents the production process and can simulate the production under different sets of conditions over a defined period, whereas an option is associated with a set of conditions There two types of input data files to the system: Type I defines resources, products and their relationships (i.e. routines). It also includes operational rules such as batch priority, dispatching rules and so on. Type II is the transaction information on the production progress such as work in progress (WIP) status, daily production progress report and so on. By comparison, Type I is the information on the process and resources, which are relative stable and only change when one alters resources and launch new products. Type II is dynamic and changes as long as production runs. Type I defines the model of the production process, whilst Type II makes up the initial status of the simulation. The output from the simulation should be organized into a format from which the managers can easily evaluate the production performance: The output data can be organized into two parts: 1) key measurement; and 2) production performance. The first part extracts the data particularly important to the managers, for instance, the simulated production output by product on daily basis and accumulated total over the working week. The information can be directly compared with the shipment plan to highlight any deviation to the managers. The second part includes all the information - detailed information, aggregated production information and summarized performance information on the simulated production. The manager can review them in detail as required. The model configuration module is to define the model that presents the production process. The option definition module defines set of conditions, each presenting an option known to the managers. If a pre-defined option is selected, the model will be modified through the model configuration module and run again to simulate the production under a new set of conditions. This enables the manager to carry out the scenario analysis on different options. The manager can directly alter the model through the model configuration module to reflect certain policies that are not predefined in the option definition module.

The Real-Time and Predictive Decision Support System: An Industrial Case Study

21

Figure 2: Framework of the KTP System, a decision support tool to help the managers decide how to keep The Promise at order fulfillment stage

4. The KTP System in the Semiconductor Plant


4.1. Overview of the Development The proposed KTP system was developed for production managers in the Singapore plant, whose operation is introduced in Section 1. The predictive engine is powered by the discrete event simulation software called Witness [Lanner], as the discrete event simulation is one of the most widely used predictive techniques in manufacturing industries. The actual on-site development and implementation was done in a short period of three months. The project went through a typical development cycle: 1) the requirement analysis; 2) modeling of the production process; 3) validation and verification of the KTP system; and 4) starting operation. In this section, the discussion will focus on several key issues emerged from the development process as presented below. 4.2. Data Acquisition The data acquisition is to get the data required to define and run the model. The entire operation in the Singapore plant is supported by three IT systems: SAP ERP system, WorkStream Manufacturing Execution System (MES) and QC system. The data required to define the model and run the model (i.e. Type I and Type II described previously) are available from the IT systems but not directly usable. In other words, they exist in the database but mixed with other data and in different formats. The interface program was developed to retrieve all relevant data out the IT systems and organize the data into different files in the categories recognizable to the managers and engineers, namely, a) Resource file: type of tester, number of testers, testing groups. b) Product file: device type and product groups. c) Routine file: it defines relationships between products and resources, i.e. which product goes through which tester. The attributes of the relationship includes the processing time etc.

22

Eduard Babulak and Ming Wang

d) Schedule file: In this case, it is the information what to be released to the Singapore plant on daily basis for next working week. e) Work-in-Progress (WIP) file: it contains information about quantities of each product in front of each resource at a particular time. The data sets the initial state of the simulation. f) Yield file: it contains information on average yield rate in terms of percentage rejects and downgrade by product at a particular testing operation. In this case, we had also decided to keep all the data in MS Excel format. There are several advantages by doing so: firstly it is easy to verify the data and the model; secondly it can also serve as part of the option definition module where the manager can manipulate certain data directly to reflect his option. Figure 3 shows the flow of data from the existing IT systems to the input to Witness simulation software as the predictive engine. It required a certain amount of effort in converting the available data into the format usable to the predictive engine.
Figure 3: The flow of data from IT systems to the predicitive engine

4.3. Knowledge Acquisition The knowledge acquisition is to establish what options the manager normally takes and their relationships to the model. This can be elaborated by the example in Figure 3. The table shown in the diagram is the key performance measurement generated by the simulation. It shows the simulated production output by product in terms of daily output and accumulated total. The information can be used to compare the shipment plan. The example has highlighted the two products: Case A. - Product TBREOB-DT: 160,298 units are expected to be produced and the quantity meets the shipment target of 160,000 units. Case B - Product TBREOB-uMB: 6,858 units are expected to be produced and the quantity is below the shipment target 7,000 units.

The Real-Time and Predictive Decision Support System: An Industrial Case Study
Figure 4: An example of using the simulation results to manage the production

23

Table 1:

Simulated daily production output by product


Device DT MB SFF SV UMB DT MB SFF DT DT MB SFF SV DT MB SFF SV UMB DT MB SFF SV UMB DT Total_Output 244357 5223 0 338 0 0 0 0 0 0 0 0 0 2 0 0 0 0 160298 22958 0 541 6586 3724 Day1 Day1 27490 654 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 71443 2420 0 0 1829 486 Day2 53472 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 4763 0 0 0 1357 3238 Day3 24800 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 23490 3074 0 0 800 0 Day4 48600 820 0 338 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12833 0 0 0 1000 0 Day5 48195 3749 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 35600 11157 0 0 600 0 Day6 41800 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12169 6307 0 541 1000 0

Product BARTON BARTON BARTON BARTON BARTON MORGAN MORGAN MORGAN MORGINO PALOMINO PALOMINO PALOMINO PALOMINO TBRED TBRED TBRED TBRED TBRED TBREDB TBREDB TBREDB TBREDB TBREDB THORTON

Case B requires the manager to take corrective actions to make sure that at least additional 142 units will be produced by Day 6 and the shipment target of 7,000 units will be met. The manager could take an option comprising of two sub-options as listed below: i) Increase the input for Product TBREOB-uMB. ii) Allocating more testers to the product line.

24

Eduard Babulak and Ming Wang

Each sub-option means the amendments to the conditions and rules in the model configuration file as listed below:
Table 2: The relationship between an option and the conditions used to define the model
Description Increase Lot Release Increasing testers for Product TBREOB-uMB Data and conditions in the model configuration module Amending data in Scheduled Release Lot file Amending data in Resource file and Resource Group Matrix file

1 2

Sub-option Increase Input for Product TBREOB-uMB Re-allocate Testers

Thus the knowledge acquisition is to establish options, sub-options, relationships between options and sub-options, relationship between sub-options and the data/conditions used in the model configuration module, as illustrated below.
Figure 5: Classes and their relationships

Establishing of the classes and their relationships would make it possible to create the option configuration module by which the managers can select or configure options. Moreover the model would be automated updated. Then the manager can run the modified model again to see whether the newly simulated production output can meet the shipment plan. Essentially it paves the way for automating the decision making process. After acquiring the managers knowledge on available options, sub-options and their relationships, it would require a considerable amount of development effort to create the user-friendly facilities to define the option and sub-option classes and their relationships. The task was really outside the budget and time for this project. As a result, the project team had trained the managers and engineers to implement an option by: i) Altering the data in MS Excel files, such as resources, products, routines, material arrival and yield assumption. The model configuration file has defined relationships between the data in MS Excel and the elements in the simulation model. If a particular data in MS Excel files is changed, the model will be updated automatically. ii) Changing the data and rules in the model configuration file. The rules include dispatching, splitting lot, combining lots and others. The model will be updated automatically. The manager can run the model again and then examine the production performance under a particular option.

The Real-Time and Predictive Decision Support System: An Industrial Case Study 4.4. Operational Assessment of the KTP System

25

The KTP system became operational after three months of the development effort. To run the system, the manager firstly activates the interface facility to retrieve the data from the IT systems and update the files in MS Excel automatically. He then runs the simulation until end of the working week. After the simulation, he reviews the simulated production output and compares it with the shipment plan as shown by the example in Figure 4. If there is any discrepancy, the manager selects one option and manipulates the data in MS Excel or the rules in the model configuration file accordingly. He runs the simulation again to see if the newly simulated production out can meet the shipment plan or not. The process is an iterative one and the manager may need to run several simulations to reach a final decision. The KTP system can accurately predict the likely production output with respect to a particular option. It has provided the manager with a very high level of confidence on his decision. Essentially the manager can see the outcome of his decision and make sure that the production output meets the shipment plan. On prediction, the KTP system has met the managers expectation. On the other hand, the duration taken by the managers to reach a final decision is not desirable, as often the production managers must make decisions as quickly as possibly. The KTP system has made use of the real-time data from the IT system. This is essential to but does not does not guarantee real-time decision making. A real-time decision making means an automatic and speedy process for information processing and reasoning. For the KTP system, there are three major computing processes involved: i) Acquiring the data: The data interface is created to retrieve the data from the IT systems and to convert the data into the format which is accessed by the predictive engine. Robustness of the current interface need to be improved to guarantee a swift and reliable data exchange. ii) Running the simulation: It takes about 10 minutes to simulate six days of production after the project team had spent an exhaustive effort in optimizing model building. If the manager runs several or more scenarios, the total simulation time could be longer than 30 minutes. This is not desirable and ideally the time to run a simulation should be 5 minutes or less. iii) Selecting/formulating options and updating the model accordingly: It is dependent upon individuals proficiency with the related software. The current arrangement of altering the data in MS Excel or the model configuration file is not desirable. A specific built user-interface could reduce the time spent in the option selection and the model re-configuration. Thus, it is critical to reduce the processing time at each of the three processes in order to reduce the decision making duration. However, the KTP system was built across several software platforms, each of which can provide some but not all functionality. Essentially the solution could be a common development platform for real-time predictive decision support systems. The platform could be expanded from predictive technology software (for instance, discrete event simulation software) by adding the following functionality: 1) The plug and play interface facility with ERP system, to provide data to the predictive engine. 2) Specific function or module to define and maintain the classes (options, sub-options and model elements) and their relationships. It also includes the user-friendly interface by which managers can navigate and configure options with ease. 3) More efficient and effective predictive engine so less computing time will be required to complete one round of simulation or calculation.

5. Conclusion
In the global manufacturing and supply chain environment, there always exist discrepancies between the system availability (i.e. what is kept in the IT system and used by an ATP function) and the actual availability (or physical availability). At present it is largely up to managers at the order fulfillment

26

Eduard Babulak and Ming Wang

stage to reconcile the discrepancies. With the zero inventory and Just-in-Time practice, there is little or no margin for error. A promise made to a customer by an ATP system could fall apart just because of one erroneous decision at the order fulfillment stage. The authors therefore propose a real-time predictive decision support system to help the managers make right decisions. The paper has also presented an industrial case in which such a system was developed for the production managers in a semiconductor plant in Singapore. In the case study, the predictive engine was powered by the discrete event simulation software. Much of the development effort was spent in extracting the data from the IT systems for the predictive engine and acquiring the managers knowledge in order to automate the decision making process. From an operational perspective, the KTP system can accurately predict the likely production output with respect to a selected option. It has provided the manager with a very high level of confidence on his decision. On the other had, the duration taken by the managers to reach a final decision remains to improve. This is largely due to the fact that the system had been developed across several software platforms, each of which can provide some but not all functionality required for developing real-time predictive decision support systems. A possible solution is to have a common development platform for real-time predictive decision support systems. The platform can be expanded from predictive technology software (for instance, discrete event simulation software) with add-ons or enhanced functionality in the data exchange, simulation speed and the specific option configuration module. From the information technology perspective, the business application focus has shifted from information processing to decision making since late 1990s. As illustrated by the semiconductor plant in the case study, a large amount of operational and transactional data are tracked and kept in the integrated database. With help of BI software, the data can be processed into different types of performance measurements for further analysis. For managers, the challenge is how to use the information to manage business process effectively and efficiently. For IT professionals, the challenge is to develop solutions to automate decision making processes. To this end, the development platform for the real time predictive decision support systems could be one of the solutions.

Acknowledgment
The authors would like to thank Dr Gary Hu of Cimtek Pte Ltd for sharing his knowledge and experience in the case study. The authors wish to express their sincere gratitude to Fairleigh Dickinson University in Vancouver for the support provided during this work.

The Real-Time and Predictive Decision Support System: An Industrial Case Study

27

References
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] Ball, M.O. et al (2004) Available to Promise in Handbook of Quantitative Supply Chain Analysis Modelling in the E-Business Era. Simchi-Levi, D. et al. (Eds.). Springer (2004) page 447-481 Lee, Y M (2007) Analysing the effectiveness of Availability Management Process. In Trends in Supply Chain Design and Management: Technologies and Methodologies. Hosang Jung et al (Eds) Springer (2007), page 411-437. Stadtler, H. et al (Eds) (2002) Supply Chain Management and Advanced Planning: Concepts, Models, Software and Case Studies. Springer; 2nd Edition (2002) Lee, Y M. (2006) Simulating Impact of Available-to-Promised Generation on Supply Chain Performance. In Proceedings of the 2006 Winter Simulation Conference. Perrone L. F. et al (Eds) WSC 2006, Monterey, California, USA, December 3-6, 2006. page 621-626. Oracle Data Sheet: Oracle Global Order Promising Oracle Corporation Copyright 2006 Babulak, E. (2004) E-Manufacturing for 21st Century, State-of-the-Art and Future Directions Keynote Address, the First International Conference on Management of Manufacturing Systems presentation, Presov, Slovakia, November 18th 19th, 2004 Babulak, E. (2004) Interdisciplinarity and Ubiquitous Internet Technologies in Support of Automation, In International Journal of Online Engineering iJOE, ISSN: 186 Babulak, E Eduard Babulak (2006) Future Automation via Ubiquitous Communications Technologies published in Journal of Telecommunications and Information Technology, RSS 2.0 or ISO 8859-2, JTIT 1/2006, Warsaw, Poland. Babulak, E. and Wang, M (In press) Discrete Event Simulation: State of the Art .In International Journal of Online Engineering iJOE, February Issue 2008. SAP APO (Advanced Planner and Optimizer): http://help.sap.com/saphelp_apo/helpdata/en/7e/63fc37004d0a1ee10000009b38f8cf/frameset.ht m - last visited on October 24th 2007 Oracle ATP (Available-To-Promise): http://oracle.ittoolbox.com/documents/popular-q-and-a/oracle-available-to-promise-atp-4020 last visited on October 22nd 2007 I2: www.i2.com last visited October 20 2007 Witness simulation software: www.laner.com last visited on October 18th 2007

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.28-36 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

A Component-Based Approach to Effort Estimation


Simon Wu. Iok Kuan Faculty of Business Administration, University of Macau Macao, China E-mail: simonwu@umac.mo Abstract Over the past ten couple of years, there is a variety of effort models proposed by academicians and practitioners at early stage of software development life cycle. Some authors addressed that efforts could be predicted using Lines of Codes(LOC) or COCOMO model, while others emphasized that it could be made using Function Point Analysis(FPA) and others. The study seeks to develop a model which estimates software effort by studying and analyzing small and medium scale application software. To develop such a model, 50 completed software projects are collected from a software company. From the sample, components affecting effort estimation are identified and extracted. By applying them to simple regression analyses, a prediction of software effort estimates with accuracy of MMRE = 9% was constructed. The results give several benefits. First, estimation problems are minimized due to the simple procedure used in identifying those components. Second, the predicted software projects are only applicable to a specific environment rather than being based upon industry environment. We believe the accuracy of effort estimates can be improved. According to the results analyzed, the work shows that it is possible to build up simple and useful prediction model based on data extracted at early stage of software development life cycle. We hope this model can provide valuable ideas and suggestions to project designers for planning and controlling software projects in near future. Keywords: Application software, design team factors, effort estimation

1. Introduction
One of the major problems faced by project designers in controlling and managing software projects is overrun of effort estimate. With inaccurate effort estimates, it surely affects the project designers in making correct decisions and leading to the failure of the entire software project development. Over the last ten couple of years, the total investment of application software development and maintenance has been overrun. Several papers reported the average schedule overrun ranges from 41% to 258%, and cost overrun ranges from 97% to 151%[1], [2]. This indicates not only the importance of early planning and controlling over software projects, but also the early effort estimation of software project development is necessary too. There are discussions in relation to effort estimation of software project development[3], [4]. Despite researches done in developing such models, some are not totally applicable to do prediction as early as possible. Others require considerable amount of time in understanding the user specifications. For example, COCOMO model uses LOC as a software size for estimating development effort. Unfortunately, LOC is not known until the entire application software is fully developed. This makes effort estimation unstable. Likewise, FPA based on metric using user specifications, such as number of

A Component-Based Approach to Effort Estimation

29

inputs, master files, number of logical files, number of interfaces and number of outputs to estimate software size. Although such metric can be used to estimate software size earlier than LOC, it requires a substantial amount of time by an expert system counter to count system functions[5]. Our main concern about the use of LOC and FPA is the problem of unreliable in making early effort estimates, as the estimation of software size is fully depending on the total LOC counted and the number of function points calculated respectively. Therefore, it is needed to develop a general model for making effort estimation at an early stage. From the developed models, they addressed that the effort estimate can be made earlier before the software projects are fully developed. For example, the total LOC of a software project is counted only when the entire software is completely developed[6]. A software project can be developed with different programming languages, which can lead to different total LOC for the same software project by different programmers. It is then applied to a well-known method called COCOMO, to estimate the effort of software projects automatically[7]. Using this method, effort estimate proceeds through two steps. First, a nominal effort estimate is obtained by using a formula derived by Boehm via least square. While software size measured in LOC is the independent variable. This is the basic level of COCOMO. Second, the nominal effort estimate is multiplied by a composite multiplier function, m(X), where X is the result of 15 independent variables. The result is the intermediate level of COCOMO with its refined effort estimate. The 15 variables are referred to as cost drivers. The functional form of the model is shown in equation (1): E = aiSbi m(X) (1) where S is the size in LOC and m(X) is the multiplier function. The multipliers follow a gradation reflecting the rating(very low to very high) given for the cost driver. The coefficients ai and bi are derived from a combination of the mode and the level. As one of the earlier algorithmic software cost models, COCOMO is the most widely accepted software cost and effort estimation method. Over the years, it has served as a benchmark for evaluating the performances of various cost estimation models[10]. Although Boehms evaluation of the three models has concluded that the Intermediate COCOMO is significantly better than the Basic COCOMO, the result of the Intermediate COCOMO can be significantly influenced by the values of cost drivers, which require detailed information about the software system and the development environment. Since the cost drivers and values were originally based on the software project data of the 1960s and 1970s, the validity and accuracy of the Intermediate COCOMO are at best uncertain in todays software environment. An alternative method, FPA, for estimating effort of application software was developed by Albrecht[8] & [9]. It measures the functional requirements according to the complexity of a proposed system. Using this method, functions are determined by identifying system components perceived by users, and then classify and count the five user function types delivered by the development project. These components are further categorized as simple, average or complex, depending on the number of data elements in each type, and other factors. Each component is then given a number of points based on its type and complexity. The total effort of system is calculated by multiplying the sum of function points for all categories by the technical complexity factors(TCF). The TCF is determined by estimating the degree of influence (DI) of some 14 components[3]. However, one of the major criticisms of is its inability to address complexity adequately[21], [22] & [23]. This can result in a disproportional measurement of size. Thus, it is difficult to assess the size of different types of systems and to estimate development effort in an objective and comparable manner[24]. Despite research works done for proposing the models, the following problems are identified for estimating effort of application software. Using LOC, some organizations only use homogeneous program languages, such as COBOL, to predict the effort without any inaccuracy. However, we must emphasize that different program language can lead to under-estimation or over-estimation of effort due to strict standard coding. With advent of multiple language environments, the final LOC being measured is totally different from each other. Some object-oriented applications can be created with virtually no countable LOC. This makes the task more difficult to measure effort of application

30

Simon Wu. Iok Kuan

software. Furthermore, due to the final LOC of a program can only be determined after the entire program is entirely developed, the effort of an application software may be delayed in that situation[6]. With COCOMO model, three levels lead to the conclusion that the Intermediate model provides significantly better prediction than the Basic model. While the Detailed model, it is not materially better than the Intermediate one[7] & [10]. However, from this model, the fifteen so-called cost drivers are scalars ranging from 0.7 to 1.66 with a nominal value of one, reflecting the characteristics of software projects as well as the production environment, such as the required software reliability and programmer skills. The results of this model can be significantly influenced by the values of the fifteen so-called cost drivers, which require detailed information about the software projects and the development environment. Since the cost drivers and the values were originally based on the software project data of the 1960s and 1970s, the validity and accuracy of this suggested model are at best uncertain in todays complex software environment[10]. Thus, it may lead to inaccurate effort estimate in todays complex software environment. With FPA, it was noted that one of the problems is high cost of collecting function point data, which resulted from difficulties in automating the collection process[11] & [12]. Related criticism [30] & [31] to the classification of five system component types as simple, average, or complex appears to be straightforward, but seems to be rather oversimplified. This was evidenced by empirical studies[25] & [26]. The authors criticized the function point counting method is so subjective, that is to say, different project managers may not arrive the same function point count under the same application. Jeffery et al. [27] pointed out that the experience in the application of FPA is an important factor in the successful application. This evidenced by comparing the results using two inexperienced groups to the experienced group. Kemerer[28] reported a total 12% difference for the same product by people in the same organization. Graham et al.[29] reported worse figures: a 30% variance within an organization, which rose to more than 30% across organizations. Besides, time spent in counting system functions is substantial too. This is because the function points counting method retains the potential for error variance due to the subjective nature of classifying functions as simple, average or complex. This can, in return, lead to inaccurate effort estimate over long term. The objective of the study is to explore the possibility of proposing a software effort model at the early stage of system development cycle. It is a simple and easy metric to estimate development effort without recourse to complex analysis or until the system is fully developed. The organization of the study is as follows: Section 1 introduces and examines two widely adopted models. Section 2 presents the research model with study variables. Section 3 is about characteristic of collected data. Section 4 presents a discussion of research results for the proposed model and section 5 is a conclusion and further research work.

2. Research Model
The research model is proposed with the following variables. The reason of choosing the components is because they are free from calculation of total lines and number of function points. Unlike LOC and FPA, the results of effort estimates are based on information available after detailed design or the program is fully developed. Instead, the model makes the effort estimation earlier than that of LOC and FPA. A. Effort This variable emphasizes the efforts(man-hours) spent by programmers to develop application software. The reason of adopting man-hours, not man-months is because the software projects developed by programmers in the software company are small to medium. Some software projects may not last several months. For those collected software projects, only the time spent by project designers in analyzing and designing the software projects is counted. While the time spent to discuss with clients and end users is excluded. The measurement used to count the effort is the total number of man-

A Component-Based Approach to Effort Estimation

31

hours for single software project. As the software company has a very good practice to record detailed information of each developed software project. Thus, we are very easy to collect this data. B. Design tool(DESIGN_TOOL) This variable is to measure the level of productivity tool used by programmers in designing software. Using a good design tool, the productivity ratio of programmer is high. The ideal function of design tool is to support the software development by automating tasks performed at every stage of software development life cycle. It facilitates interaction among team members by diagramming a dynamic, iterative process, rather than one in which changes are cumbersome. It is also a very useful tool by allowing programmers to use to clarify end users requirements at the early stage of software development life cycle[13]. In an attempt to shorten the cycle, the design tool that the company uses to specify user requirements and generate system code is CASE tool. This variable is measured using a five-point Liker-like scale ranging from (1) very low productivity to (5) very high productivity. C. Programmer Experience(PROG_EXP) This variable is to measure the experience of programmer in analyzing and designing application software in computer industry. The measurement we use to count is the number of years that a programmer who has been developing application software in the company. The higher the number of years of service is in this industry, the more the working experience he has. For this variable, we take the average of years of experience among the team members for each software project. D. Team Size(TEAM_SIZE) This variable addresses the number of programmers working as a team in analyzing and designing software projects. As [14] reported that project managers often employ additional programmers in an effort to expedite a late project. Such attempts backfire, as the additional communication and training overhead slow down the project, setting it back even further. However, the situation may not happen in our study, because software projects developed by a team of programmers in the company are small to medium scale in term of LOC. So project designer is relatively easy to make an accurate estimate before a software project starts. Therefore, there are no additional members who are invited to a late project. For this variable, the number of programmers assigned to analyze and design the software projects is collected according to the records of the company. E. Program Complexity(PROG_COMP) This variable addresses the level of program complexity delivered. The understanding of the software development process improves the relationship between program complexity and maintenance effort. That is, high complexity of software projects increases the difficulty for maintainers to quickly and accurately understand the programs in an effort to modify programs[15]. The more complex the program is, the greater the effort is for maintaining programs[16]. In the study, program complexity is measured and determined from system requirement specifications and design specifications during analysis and design phases. The characteristics of the collected software projects are business oriented applications, they vary from processing payroll, inventory control to report generation activities etc. So the determination of the program complexity at the early stage of software development life cycle is under the control of programmers. For this variable, the data is collected using a five-point Liker-like scale ranging from (1) very low complexity to (5) very high complexity. F. Language Experience(LANG_EXP) This variable measures the level of working experience of a programmer who is in a specific kind of programming language. The development time and effort are reduced substantially if a programmer is

32

Simon Wu. Iok Kuan

an experienced one. In addition, the cost of maintenance is reduced to the least when a change is made if a programmer masters a programming language for long time. The level of language experience for each design team is the average of level of experience of individual team members in the company. Because the company has a good record of keeping all software projects developed in the past and all collected software projects were designed using the same programming language. Thus, the data is relatively easy to collect. A linear regression model is hypothesized following the discussion of the study variables. The specification of the regression model is shown in equation (2): EFFORT = + 1DESIGN_TOOL + 2PROG_EXP + 3TEAM_SIZE + 4PROG_COMP + 5LANG_EXP (2)

3. Project Data
The collected software projects have the following attributes: they are small to medium in terms of LOC; they were all written using fourth generation programming language; they are in relation to accounting, payroll processing, inventory control and report generation activities; they were developed by small teams of two to five programmers. In an attempt to confirm the reliability of both dependent and independent variables, all software projects were verified by a system analyst. The sample consists of 50 software projects, from which 30 software projects are used as main sample and the other 20 software projects are used as holdout sample respectively. The main sample is used to develop a prediction model, while the holdout sample is used to validate the model being developed.

4. Data Analysis
To investigate the study components which affect program development effort, we use multiple linear regression with DESIGN_TOOL, PROG_EXP, TEAM_SIZE, PROG_COMP, and LANG_EXP as independent variables, and EFFORT as a dependent variable. As seen in Table 1, the mean EFFORT is 662.19. While the means for the independent variables are quite close to each other. In order to find the possibility of the effect of the selected variables on effort estimate, correlation test was conducted using Pearson statistics, so as to identify any potentially useful relationships between dependent and independent variables, and among the independent variables themselves. In an attempt to evaluate the estimated equation with statistical significance, two basic assumptions, which may affect the statistical procedure used for multiple regression, are addressed about the relationships between dependent and independent variables. The assumptions are normality and homoscedasticity. The test of the assumptions is important to the estimated results of the proposed model, because the final results can be distorted if they violate the basic assumptions. The first assumption for testing is normality. The assumption of normality could not be rejected in the model at the 0.05 level. The second assumption for testing is homoscedasticity. For each independent variable, diagnosis is made with residual plots. The residuals are plotted against the predicted dependent values and compared to the null plot. Through examination of the residuals, each plot shows no pattern of increasing or decreasing residuals. Therefore, the assumption of homoscedasticity is accepted. In the study, we used forward stepwise regression. In each case, we introduced a variable to the regression. If a variable has significant effect (at the 0.05 level) on the dependent variable (EFFORT), we retained that variable in the regression model, otherwise the variable is dropped. After running multiple regression, the tested results are shown in Table 2. The statistical results show evidence of strong significant relationships between independent variables and dependent variable. Particularly, there is a strong correlation between the independent variables, such as DESIGN_TOOL, TEAM_SIZE and PROG_COMP and the dependent variable EFFORT. This indicates the independent variables considered in the study having potential predictive relationships with the dependent variable.

A Component-Based Approach to Effort Estimation


Table 1:
Variable Effort Design_tool Prog_exp Team_size Prog_comp Lang_exp

33

Summary statistics
Mean 662.19 3.88 5.69 3.08 3.50 4.08 Std. Deviation 252.21 1.07 2.11 1.16 1.14 1.35

Table 2:
Variable Design_tool Prog_exp Team_size Prog_comp Lang_exp

Pearson Correlation Coefficients


Effort .680 -.152* .822 .627 .216* Design_tool .125* .650 .541 .117* Prog_exp -.071* .017* -.201* Team_size .543 .402 Prog_comp -.078*

All are significant at 0.01 level, except for * significant at 0.05 level

The findings indicate several implications to the quality of selected variables on software effort estimate. From Table 2 above, one of the major components influences the effort estimate is TEAM_SIZE, it is evidenced by the value of correlation(.822), indicating of 82% of the variance in effort estimate. This implies that more team members involved in designing software project can improve the quality of effort estimate. This is a particularly pleasing result, suggesting that a significant degree of team size variation can be attributed to earlier effort estimate. Similarly, the value of application of DESIGN_TOOL(.68) shows significantly that it has high impact in managing software project. This is due to fact that a good design tool has a complete set of data maintained in data repository, so that designers can choose the available data from the database. This enables designers contributing minimum time to design the data items from the very beginning. As a result, the effort required in defining the fields is minimized significantly. There is also a close relationship between EFFORT and PROG_COMP(.627). This factor reflects the internal complexity of a program. The complexity of a commercial program is different from the complexity of a telecommunication program due to their job nature. Therefore, it can be expected the effort estimate which is affected by the complexity of programs, especially when programs are complicated. 4.1. Rejected Variables The correlation value of LANG_EXP(.216) of the designer has low effect on the effort estimate. The possible explanation is that the modern design tool is user-friendly. They are developed not only for experienced designers, but also for users who have no actual experience in designing programs. Similarly, the correlation value of PROG_EXP(-.152) of a designer has no significantly influence in effort estimate. This is due to the fact that all software projects were developed using fourth generation programming language. This is in expected direction with previous findings concluded by[17]. 4.2. Quality of Estimation The proposed model may only fit the data from which it was derived well, but provides a poor predictor of future effort estimate because of the small sample. For purpose of improving the quality of the model being developed for future effort estimate, a criterion - accuracy, was used to evaluate the estimation model. The accuracy of a project estimate is measured by the magnitude of relative error(MRE). The MRE is calculated for a given project by the following formula (3): MRE = 100|(Actual Effort Estimated Effort)/Actual Effort | (3) Thus, the accuracy of a project estimate is inversely proportional to its MRE value. Besides, mean MRE(MMRE) is therefore the mean value for the indicator over all observations in the sample. A lower value for MMRE generally indicates a more accurate model[18]. The prediction at that level

34

Simon Wu. Iok Kuan

provides an indication of overall fit for a set of software projects, based on the MRE values for each data pair(4): Pred(p) = i/n (4) where p is the selected threshold value for MRE, i is the number of software projects with MRE less than or equal to p, and n is the total number of software projects. To evaluate the accuracy of the proposed model, a holdout sample consisting of 20 software projects was drawn from the main sample. The relevant predictive accuracy values for both proposed model and COCOMO model are presented in Table 3. The MMRE values of the two models are compared, the proposed model has less error than COCOMO model. It also shows explicitly that a simple model produces less error than a complex one, because the variables are directly extracted from user specifications during the stage of system analysis. In addition, when the PRED values of both models are compared, the proposed model has a higher predicted value than COCOMO in general as expected. Therefore, the proposed model is more accurate than COCOMO model.
Table 3:
Model COCOMO Proposed Model

Indicators of model accuracy


MMRE .15 .09 Pred (0.3) .75 .85 Pred (0.2) .61 .65 Pred (0.1) .24 .30

5. Conclusion and Further Research Work


The first point to be addressed is that the results are promising. The analyzed results are fruitful because of the possibility of developing prediction application software for fourth generation programming language. However, it should be pointed out that we are not suggesting a model for different types of application software. The use of the software projects is mainly from a small company as a basis for analysis. It may be challenging in some respect, but with the suggestion, the results may not generalize to other real environment. The second point is why we avoid using COCOMO or FPA models? There are couple reasons. First, the final LOC of a program is not known until a program is fully developed. Second, the total number of LOC counted for a program is varied not only from programmer to programmer, but also vary from programming language to programming language. Third, there have been questions raised concerning the objectivity of the process[11], [19]. The results of the study show that it is possible to use components to predict software effort before the software projects start. Such components are extracted easily at the beginning of program development life cycle. Using simple regression analysis, a prediction software project of effort estimate with accuracy of MMRE = 9% was developed. It is noteworthy that this level of accuracy was obtained without using COCOMO model. We believe the results will generalize to other software projects which share similar characteristics. Several limitations of the study must be pointed out: (1) as the results of the study are based upon the software projects from only one company, its use may be only limited to those projects which share similar characteristics; (2) the sample size is only 50 software projects which are mainly from a single company. To be more generalized, we do believe the proposed model should apply to other fields to ensure its validity. (3) Further research is also needed to compare to Function Point Method or other methods.

A Component-Based Approach to Effort Estimation

35

References
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] K. P. Norris, The Accuracy of Project Cost and Duration Estimates in Industrial R&D, R&D Management, Vol. 2(1), pp.25-36. 1971. P. A. Murmann, Expected Development Time Reductions in the German Mechanical Engineering Industry, Journal of Product innovation Management, Vol, 11, pp.236-252, 1994. J. B. Dreger, Function Point Analysis, Englewood Cliffs, NJ:Prentice-Hall, 1989. R. K. Smith, J. E. Hale, and A. S. Parrish, An Empirical Study Using Task Assignment Patterns to Improve the Accuracy of Software Effort Estimation, IEEE Transactions on Software Engineering, Vol. 27(3), pp.264-271, 2001. C. L. Graham and D. R. Jeffery, Function Points in the Estimation and Evaluation of the Software Process, IEEE Transactions on Software Engineering, Vol. 16(1), pp64-70, 1990. T. C. Jones, Programming Productivity, New York:McGraw Hill, 1986. B. W. Boehm, Software Engineering Economics, Englewood Cliffs, NJ:Prentice-Hall, 1981. A. J. Albrecht, Measuring Application Development Productivity, Proceedings of the IBM Applications Development Symposium, pp83-92, 1979. A. J. Albrecht, Software Function, Source Lines of Code, and Development Effort Prediction, IEEE Transactions on Software Engineering, Vol. 9(6), pp639-648, 1983. Q. Hu, R. Plant and D. Hertz, Software Cost Estimation Using Economic Production Models, Journal of Management Information Systems, Vol. 15, No. 1, pp143-163, 1998. C. F. Kemerer, Reliability of Function Points Measurement: A Field Experiment, Communications of the ACM, 36(2), pp85 97, 1993. C. J. Lokan, An Empirical Analysis of Function Point Adjustment Factors, Journal of Information and Software Technology, vol. 42, pp649-660, 2000. K. E. Kendall and J. E. Kendall, System Analysis and Design, 6/e, Prentice-Hall, 2005. F. Brooks, The Mythical Man-Mont. Addison-Wesley, 1975. X. Zhang and J. Windsor, An Empirical Analysis of Software Volatility and Related Factors, Industrial Management & Data Systems, Vol. 103(4), pp275-281, 2003. C. F. Kemerer and S. Slaughter, Determinants of Software Maintenance Profiles: An Empirical Investigation, Journal of Software Maintenance, Vol. 9, pp235-251, 1997. M. S. Krishnan, The Role of Team Factors in Software Cost and Quality, Information Technology & People, Vol. 11(1), pp20-35, 1998. S. G. MacDonell, M. J. Shepperd and P. Sallis, Metrics for Database Systems: An Empirical Study, Proceedings of the 4th International Software Metrics Symposium, 1997. S. G. MacDonell, Comparative Review of Functional Complexity Assessment Methods for Effort Estimation, Software Engineering Journal, pp107-116, 1994. B. W. Boehm et al., Software Cost Estimation with COCOMO II. Prentice-Hall, 2000. N. E. Fenton, Software Metrics: A Rigorous Approach. London: Chapman & Hall, 1991. N. E. Fenton & S. L. Pfleeger, Software Metrics: A Rigorous and Practical Approach, 2/e. London:PWS, 1997 R. Jeffery & G. Low, Function Points and Their Use, Australian Computer Journal, Vol. 29 no. 4, pp148-156, 1997. T. E. Hastings & A. S. M. Sajeev, A Vector-Based Approach to Software Size Measurement and Effort Estimation, IEEE Transactions on Software Engineering, Vol, 27, no. 4, 2001. Bock D. B., & Klepper R. (1992). FP S: A Simplified Function Point Counting Method. The Journal of Systems Software. 18:245 254. Horgan, G., Khadaj, S. & Forte, P. (1998). Construction of an FPA-type Metric for Early Lifecycle Estimation. Information and Software Technology. V. 40. pp. 409-415. Jeffery, D. R. & Low, G. C. (1990). Function Points in the Estimation and Evaluation of the Software Processing. IEEE Trans. on Software Engineering. 16:64 71. Kemerer, C. F. (1987). An Empirical Validation of Software Cost Estimation Models. Communications of the ACM. 30:416 429.

36 [29] [30] [31]

Simon Wu. Iok Kuan C. L. Graham & D. R. Jeffery, Function Points in the Estimation and Evaluation of the Software Process, IEEE transactions on Software Engineering, Vol. 16(1), pp64-70, 1990. Symons, C. R. (1988). Function Point Analysis: Difficulties and Improvements. IEEE Trans. on Software Engineering. 14(1):2 11. Kitchenham, B. A. (1995). Using Function Points for Software Cost Estimation: Some Empirical Results, in: N. Fenton, R. Whitty, Y. Iizuka (Eds.), Software Quality Assurance and Measurement: A Worldwide Perspective. Thomson Computer Press, 1995, pp.266-280.

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.37-43 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

Ontologies Re-Engineering for Association Rules Discovery


Kamal A. El-Dahshan Associate professor, Faculty of Science, Al-Azhar University, Egypt E-mail: dahshan@gmail.com Eman K. El Sayed PhD, Faculty of science, Al-Azhar University, Egypt E-mail: emankaram10@hotmail.com Abstract Integrating semantic web applications may be regarded as a preprocessing phase for the application of a data mining technique. This paper chooses association rules discovering as the data mining technique to be applied. The relational databases in the web data centers have proven to be a suitable storage for huge data of natural phenomena. So this paper proposes the design of an ontology base for each relational database and their integration using merging tools. Up to the author knowledge at the moment of writing this paper; ontology merge is a semiautomatic operation. Such a solution solves the conflicts which may result from redundancy. Merging ontologies will extend the knowledge base and help to discover associations among data of different natural phenomena as this proven in this paper. Keywords: Ontology, ontology merge, semantic web, data mining, Knowledge discovery, natural phenomena.

1. Introduction
Relational databases are heavily used in web data centers to store natural phenomena data. These databases are naturally heterogeneous in access methods, data formats. So we need a common root of the ontologies to associate and find easy paths among the available databases. The real world is made up of things, and we want to unify these things (A thing is the elementary unit in the BWW ontological model [4]).Things may be something like a human activity (e.g. education, business, health care, science, engineering, entertainment, defense) or natural phenomena (e.g. Fog, Earthquakes, Volcanoes, Temperatures). Thus we must return to the main concepts of these things namely ontology[16]. Ontology may be defined as an explicit specification of a conceptualization. Other definitions may be found at [3]. Recently, ontology have been designed for some natural phenomena like seismology and weather This paper presents a methodology to associate different ontologies and apply the new methodology on a real example using real data. The new methodology is based on merging more than one ontology. This merge will extend the knowledge base. This merge is necessary for knowledge transfer among different knowledge bases. Discovering association rules among data from different data sources is a problem solved using the data mining process. Where data mining is "a step of high level blind analysis or exploration that starts with a data warehouse or a huge database (in most cases) and terminates with an empirical model or pattern"[2]

Ontologies Re-Engineering for Association Rules Discovery

38

And the association rule discovery in data mining aims at finding rules describing associations between tuples. A relational association rule is of the form Q1 Q2, such that Q1 and Q2 are both conjunctive queries and Q2 Q1. A conjunctive query Q over relational database R consists of a head and a body. The body is a finite set of atomic formulas over R. The head is a tuple of variables occurring in the body [1]. The application in this paper is to apply the association rule discovery on the tuples from different data sources as a seismology center like United State Geologic Survey USGS [11] and the National Climatic Data Center (NCDC) and the Forecast Systems Laboratory (FSL). This research has encountered several obstacles. The first is the fact that the ontology web languages OWL does not support complex functions in spite of the bad need of a web language because the application is a semantic web application. The obstacle of converting data from an XML document to OWL has recently been partially overcome by the introduction of XML2OWL[13]. And the big problem is that the real world is not ideal. Where ideal means The same language, no overlap in coverage, no new versions, a single extension tree, and small reusable modules. The rest of this paper is organized as follows: The second part presents a brief review about ontology merging as an example of ontological re-engineering. The third part presents the methodology and the application. It also includes the results that lead to the fourth section of conclusions and further works. Finally, the references are listed.

2. Ontological Re-Engineering
2.1. Merging Ontologies An ontology is more useful when merged with another ontology. Ontology merging is a form of ontological re- engineering. Merge Definition Given a set of topic maps S a merge operation is defined as the following expression: merge:(SS)S [5] figure 2 shows a topic map of a seismology ontology. The term merging covers two distinct processes:[6] 1. The process of merging two topic maps 2. The process of merging two topics (ontologies). Two topics are always deemed to have the same subject if: 1. they have one or more subject indicators in common, 2. they use the same addressable subject, or 3. they have the same base name in the same scope. Merging Conflicts We present a taxonomy of merging conflicts which categorizes conflicts with element-level, structurelevel, and temporary-level. Element-level Conflicts: are caused by different definitions of a topic, such as different topic name, different number of properties, and different specification of topic properties. That may happen when the data imported from different centers of the same phenomena. Element-level conflicts are classified into naming conflicts and property conflicts. Naming conflicts are caused when two mapping topics have different or similar topic names. Property conflicts are caused when two mapping topics have same values for different property types or different values for the same property types. Structure-level Conflicts: are generated by different level of conceptualization of two source topic maps. Temporary-level Conflicts: arise when the merged topic map has inconsistency during merging of mapping topics. The conflicts are classified into reference conflicts and undefined-entity conflicts. For more details see[5].

39

Kamal A. El-Dahshan and Eman K. El Sayed

Prompt method There are many tools to merge ontology, but we choose Prompt tool for many reasons as: protg ontology tool supported it in its library, it uses graph language, it uses real ontologies not only toy data, and its output is an ontology (actual merge of two ontologies) not only a mapping. 2.2. Ontology Importing OWL supports the sharing and reuse of ontologies by making it possible for an ontology to import another ontology. When an ontology imports another ontology, all the classes, properties and individual definitions that are in the imported ontology are available for use in the importing ontology.

3. Methodology and Application


3.1. The methodology steps and diagram 1. Design new ontologies of first field (seismology) and the second field (weather) using their Entity Relational diagrams. That is done using Protg (an ontologyengineering tool developed by Stanford Medical Informatics) [7]. 2. Re-engineer these ontologies either by merging them or by importing one of them into the other. This will produce a new ontology. 3. Add instances (Data) from the two web data sources (seismology centers and weather centers in our application) as XML text or by using JDBC directly. 4. Apply the discovery association rules technique on the new ontology by using SWRL (Semantic web rule language).
Figure 1: the process of association rules discovery using ontological re-engineering.

3.2. Application Now we apply the methodology steps on two different phenomena earthquake from seismology center[11] and wind from (NCDC) Center. 1. From seismology relational database [2]we design seismology ontology by using OWL protg[14].

Ontologies Re-Engineering for Association Rules Discovery


Figure 2: ontology of seismology shown by OwlViz (visualization ontology tool)

40

2. Repeat the previous step for weather


Figure 3: ontology of weather shown by OWlViZ

3. Now insert data from data center. Our sample was all earthquakes in 5-11 May 2007. it was 695 earthquakes in the world in all magnitude and the wind speed in the same time hourly.
Figure 4: Jambalaya shows the instances in radial layout form

4. Now we ready to the main point ;reengineering the two above ontologies; to produce the one new ontology which answer the questions about any relation between any two classes. The merging done by Prompt tool and the questions asked as rules by SWRL.

41

Kamal A. El-Dahshan and Eman K. El Sayed


Figure 5: The result Ontology shown by OWlViz

5. Now we can apply relational association rules discovery functions on any two classes Where support and confidence functions are: Support function = a/e Confidence function = a/T a the number of earthquakes in each rule. i.e satisfy the two classes in the same time. e the total number of earthquakes in each class of the second class, T the total number of the sample. We use SWRL to count a by simple rule. For example if we want count a the number of earthquakes(events) with magnitude tiny(1.0-2.0 Richter) and wind speed shunter type (less than 15 mph) tractive effort wind speed classification from Wikipedia. Then the rule will be: Events(?e) ^ E_Magnitude(?e,?m) ^ Wind(?ws)^ swrlb:lessThan(?m, 2.0) ^ swrlb:greaterThan(?m, 1.0) ^ swrlb:lessThan(?ws, 15.0) -> swrlq:select(?e) ^ swrlq:orderBy(?m) 3.3. Results The graphic representation of the result about wind speed hourly in period of time (511)May2007. Where blue line means morning Am, and Red line means night Pm.

Ontologies Re-Engineering for Association Rules Discovery


Figure 6: wind speed hourly in our period time.

42

In the same period 5-11 May 2007 Earthquake magnitude arranged descending Classified also in night Pm and morning Am
Figure 7: earthquake numbers in the same period time.

The tabular visualization outcome for confidence as an relational association rules discovery for example of two rules in the next table.
Confidence 0.5870 0.0791 No of Event 408 55 Wind Speed Shunter Shunter Magnitude Tiny Light

There are the strong relation between tiny magnitude class (1-1.9 Richter) and shunter wind speed class (less than 15 mph) and week relation between light earthquake magnitude and shunter wind speed. But this real result in short period of time as an example.

4. Conclusion and Further Work


This paper presented a new solution for data base integration as a preprocessing phase in the data mining process. This method tends to facilitate association rules discovery. The main steps of our method are: to design an ontology for each relational database then to reengineer these ontologies by merging or importing to get a new one after solving the conflicts. finally any data mining technique may be applied.

43

Kamal A. El-Dahshan and Eman K. El Sayed

The application of the methodology to globe physics showed that there are hidden relations among different " things" in the world, and we don't necessarily need previous hypothesis or assumptions to discover these relations. Applying association functions on the merged ontology may help to solve this problem. The confidence function as a relational association rule discovery showed the hidden relation between the magnitude of the earthquakes and the classes of the wind speed for example. This work may be extended by creating a universal ontology and a tool that uses this ontology. The universal ontology will be connected on line to the international web centers to ameliorate natural phenomena prediction.

References
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] Dehaspe L., Toivonen H., 'Discovery of relational association rules' In S. Dzeroski and N. Lavrac, editors, Relational data mining, pages 189212.Springer-Verlag, 2001. Eldahshan K., Elsayed E., " The system architecture for data mining techniques on relational databases" presented at the Second International Conference on Mathematics: Trends and Developments (ICMTD 2007) 27-30 Dec 2007 Cairo, Egypt. Asuncin Gmez-Prez, Mariano Fernndez-Lpez and Oscar Corcho, "Ontological Engineering " springer-verlag London Limited 3rd printing 2004. Peter Green, Michael Rosemann, Marta Indulska and Chris Manning "Candidate interoperability standards: An ontological overlap analysis " Elsevier B.V. Available online 18 September 2006. Jung-Mn Kim, Hyopil Shinand, Hyoung-Joo Kim"Schema and constraints-based matching and merging of Topic Maps" Published by Elsevier Ltd Available online 1 November 2006. Maicher, L., & Witschel, H. F. " Merging of distributed topic maps based on the subject identity measure (SIM) approach" In Proceedings of Berliner XML tags (pp. 301 307) 2004. Protg ontology tool and its library http://protege.stanford.edu http://protege.stanford.edu/ontologies.html, state of 5 May 2007. David C. Hay, "Data Modeling, RDF, and OWL:Part three: Converting data model relationships to OWL" Essential Strategies, Inc. Published in TDAN.com October 2006. Matthew Horridge,Holger Knublauch, Alan Rector, Robert Stevens, Chris Wroe, " A Practical Guide To Building OWL Ontologies Using The Protg-OWL Plugin and CO-ODE Tools" ,The University Of Manchester, Edition 1.0 Copyright The University Of Manchester 2004. Asunci G ez- Prez, Mariano Ferngdez-L ez and Oscar Corcho, "Ontological Engineering" n m p Springer- verlag London Limited 3rd printing 2004. USGS (united state geologic survey) center state of 5 May 2007 http://www.usgs.gov Kamal Eldahshan, Eman Elsayed, ''A new methodology for seismology" Egyptian computer science journal Vol.28 No. 2 May 2006. Hannes Bohring, Sren Auer "Mapping XML to OWL Ontologies" http://semanticscripting.org/XML2OWL X SLT state of 12 May 2007. Kamal El dahshan, Eman Elsayed, " Using Ontology mining towards building a unified data mining engine" Egyptian computer science journal Vol.29 No. 3 September 2007. Olfa Nasraoui, Maha Soliman and others "A Web Usage Mining Framework for Mining Evolving User Profiles in Dynamic Web Sites" IEEE Transactions on knowledge and data engineering, Vol. 20, No. 2, FEBRUARY 2008. Abdel-Badeeh M. Salem, Marco Alfonse " building web-lung cancer ontology" International journal of soft computing applications IJSCA Issue2 PP 5-14 2008.

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.44-55 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

Design and Development of an Efficient Controller for a Servo Position Control System Using Hybrid Fuzzy-Genetic Algorithm: a Case Study
Akhlesh Kumar Department of Electrical and Instrumentation Engineering Thapar University, Patiala, Punjab-147 004, INDIA Yaduvir Singh Department of Electrical and Instrumentation Engineering Thapar University, Patiala, Punjab-147 004, INDIA Abstract In this paper, the tripartite, Simple Genetic Algorithm (SGA) has been evaluated as a feasible solution to the offline optimization/tuning of a simulated Fuzzy Logic Controller (FLC). The efficacy of this approach has been tested by comparison of the GA-FLCs performance in controlling a position control system, to that of a conventional controller, as well as a heuristically tuned FLC. The average percentage error (%) in Fuzzy Logic Controller is 1.03% whereas it is 0.004% in the case of hybrid Fuzzy-GA controller. Keywords: D C motor, Fuzzy Logic Controller, Genetic Algorithms

1. Introduction
Traditionally, control systems modeling have been based upon the use of mathematical techniques to model the input/output relationship of the system in question. Such an approach relies upon a mathematical description of the plant in order to model the behavior of the system, subject to certain conditions and assumptions. Many real-world systems however, may not be as readily described mathematically due to the complexity of the components of the plant and the interaction between them, and consequently, the model may be subject to certain assumptions or conditions. In such models, the degree of mathematical precision required to completely describe every aspect of the process, is either prohibitive or non-trivial. In addition, for actual implementation of such systems, heuristics, gained through human experience, are often employed in the tuning of the final controller. The use of Fuzzy Logic has found application in the area of control system design where human expert knowledge, rather than precise mathematical modeling, of a process or plant is used to model/implement the required controller. Human expert knowledge is based upon heuristic information gained in relation to the operation of the plant or process, and its inherent vagueness (fuzziness) offers a powerful tool for the modeling of complex systems. Uncertainty and ambiguity are evident in many engineering problems [1, 4]. For example, system stability can be considered fuzzy in the sense that a system can be lightly damped, under-damped, over damped, etc. Fuzzy Logic Control (FLC) therefore provides a formal method of translating subjective and imprecise human knowledge into control strategies, thus facilitating better system performance through the exploitation and application of that knowledge. Optimal design of the FLC Knowledge Base (membership functions and rule -base) is central to the

Design and Development of an Efficient Controller for a Servo Position Control System Using Hybrid Fuzzy-Genetic Algorithm: a Case Study

45

performance of the FLC. The rule base reflects the human expert knowledge, expressed as linguistic variables, while the membership functions represent expert interpretation of those same variables. In the absence of such knowledge, a common approach is to optimize these FLC parameters through a process of trial and error, with respect to the performance of the system for each Knowledge Base formulated. This approach becomes impractical for systems having significant numbers of inputs since the rule-base size grows exponentially and consequently the number of rule combinations becomes significantly large. The use of Genetic Algorithms (GA) in this regard can provide such a solution. Genetic Algorithms (GAs) are robust, numerical search methods that mimic the process of natural selection. Although not guaranteed to absolutely find the true global optima in a defined search space, GAs are renowned for finding relatively suitable solutions within acceptable time frames and for applicability to many problem domains. Using primary concepts of genetic selection, crossover and mutation, GAs are a stochastic, but directed method of identifying global optima within a problem domain-space. This is achieved through successive performance testing of potential solutions (i.e. members), which collectively form a population, with respect to a problem objective function. In this way, convergence to optimal solutions is achieved. The Knowledge Base of a Fuzzy Logic Controller (FLC) encapsulates expert knowledge and consists of the Data Base (membership functions) and RuleBase of the controller. Optimization of both of these Knowledge Base components is critical to the performance of the controller and has traditionally been achieved through a process of trial and error. Such an approach is convenient for FLCs having low numbers of input variables, however for greater numbers of inputs, more formal methods of Knowledge Base optimization are required. Genetic Algorithms (GAs) provide such a method. They are stochastic, but directed, numerical search methods which use operators consistent with evolutionary theory and find application in many disciplines, particularly function optimization problems. Although not learning algorithms in the strictest sense, GAs can be applied to learning tasks [2]. Industrial drives using DC motors are extensively used in medium torque applications. Control applications of DC motor require features such as motor angular displacement adaptation to multipurpose accessories, user-friendly interfaces and security features. Servo position control is used in many applications such as positioning of read-write heads in hard disk drives, antenna azimuth positioning systems, inverted pendulum control systems etc. In many such systems, precise DC motors are used to create torque which when coupled with gears, cables and other system components, provides translational forces needed to achieve accurate position control. The DC shunt motor offers numerous economic and technical advantages. DC machines are versatile. Large DC motors are used in machine tools, printing presses, conveyors, fans, pumps, hoists, cranes, paper mills, textile mills etc. Small DC machines are used primarily as control devices such as tacho-generators for angular displacement sensing and servomotors for positioning and tracking. DC motors dominate as traction motors used in transit cars and locomotives as the torque-speed characteristics of DC motor can be varied over a wide range while retaining high efficiency. The greatest advantage of DC motors is ease of control. The construction of a DC motor is considerably more complicated and expensive than that of an AC motor, primarily due to the commutator, brushes, and armature windings. Maintenance of the brush/commutator assembly is significant compared to that of induction motor designs. In this paper, the tripartite, simple GA (selection, crossover and mutation only) has been used to evaluate potential solutions for FLC rule -bases, with a view to optimizing the performance of the FLC, when applied to position-control of a motor-driven cart, and to identify and discuss issues arising from the evaluation. Common sense human thinking and judgment lures fuzzy logic for its implementation in this given control problem. For optimization purpose genetic algorithm is used the motivation for using mutation in a GA is twofold (i) Prevention of permanent loss of a particular allele. In populations, particularly small ones, it is conceivable that every string in that population may have the same particular allele, set to the same value. This in effect means that the allele position of interest can never assume any other value in any subsequent generation and can result in premature convergence. (ii) Widen the exploration of the search space. The use of the mutation operator can direct the search to

46

Akhlesh Kumar and Yaduvir Singh

previously unexplored regions of the search space, thus leading to better solutions and a more robust algorithm [3].

2. Case study: A DC motor based servo position control system


Figure1gives the block diagram representation of the considered case study for one motor only. Several assumptions were made, which are given below. 1. Two D C motors are coupled to rear wheel of the cart 2. Two motors are identical 3. Motors do not exhibit any backlash or any other non-linearity. 4. The same drive voltage applied to both motors simultaneously
Figure 1: A DC motor-based servo position control system

5. System damping is due solely to bearing friction 6. Wheel/floor friction is assumed negligible. Objective of this case study is its position control, identification of behavioral nonlinearities/uncertainties. The experimental details are described below. 2.1. Mathematical modeling Figure 2 shows the electromechanical model of DC motor. The mathematical model of the DC motor is given below in the equations.
Figure 2: Electromechanical model of DC motor

DC voltage equations for the armature circuit is V = Eb + Ia Ra DC voltage equation for the field circuit is V = Rf If The relationship between torque and current is T = K Ia z

(1) (2) (3)

Design and Development of an Efficient Controller for a Servo Position Control System Using Hybrid Fuzzy-Genetic Algorithm: a Case Study

47

The characteristics, which have been recorded, are torque vs. current and angular displacement vs. current characteristics. Back emf produced in a motor is given as below. Eb = V-Ia Ra (4) Eb = K z (5) Here, the flux is practically constant and Ia Ra drop is small [5]. (About 3 to 6% of armature voltage) (6) N = (V - Ia Ra)/z (7) A/P = K (V - Ia Ra)/f Where A and P are number of parallel paths and number of poles, respectively. P = Vt I a = constant (8) Te m = E a I a (9) E I cons tan t Te = a a (10)

The physical model of the motor wheel coupling of this case study is depicted in the figure 3 below.
Figure 3: Physical model of motor wheel coupling

For the armature circuit above mathematical model is given as below. (11) (12) (13) (14) (15) (16) (17) Where V: DC supply voltage Eb: Armature back electromotive force Ia: Armature current Ra: Armature resistance

48

Akhlesh Kumar and Yaduvir Singh Rf: Field resistance If: Field current T: Armature shaft torque K: Motor constant f: Magnetic flux and z: Number of parallel paths r1 and r2: Radii of the rotor and wheel gears respectively, q1 and q2: Angles, through which the rotor and wheel gears turn, N1 and N2: Number of teeth on the motor and wheel gears respectively, T1 and T2: Torques associated with the motor and wheel gears respectively.

2.2. Specifications In this work, the parameters of the motor-load transfer function have the following values. Armature resistance, RA = 4 ohm Armature inertia, JA = 3.22 x 10-6 (kg-m2) Armature damping, DA = 3.5 x 10-6 (N-ms/rad) Load inertia, JL = 3.6 x 10-3 (kg-m2) Rotor radius=6mm Load mass =1kg Load damping, DL = 2.0 x 10-3 (N-ms/radians) Torque constant, Kt = 0.03 (N-m/A) Back e.m.f. Constant, Kb = 0.03 (N-m/A) Gearing ratio, Kg = 1:5 Motor wheel gearing ratio = 1:5 2.3. Experimental Observations The observations obtained from the motor field are given in table 1. [6, 10]
Table 1:
Sl. No 1 2 3 4 5 6 7 8

Behavior (inputs vs. output) of the DC motor-based position control system


Armature terminal voltage (Volts) 210 213 215 217 218 224 225 225 Rotor current (Ampere) 0.515 0.51 0.53 0.51 0.48 0.40 0.38 0.35 Angular position of the rotor shaft (Radians) 0.139 0.191 0.244 0.296 0.340 0.366 0.401 0.436

3. Control strategy formulation and controller design


The main control objective here is DC shunt motor position control. In this case study, the various input variables are classified in two groups as manipulated variables and disturbance variables. Some of the input variables are changing continuously and few others are at discrete interval of time. Manipulated variables are the armature voltage and rotor current. Disturbance input variables constitute the non-linearities in DC motor. The various non-linearities (disturbance input(s)) are ambient parameter (like temperature, pressure, humidity etc.), degeneration in magnetization of various flux producing components within the DC motor, loss in magnetization due to overheating of field winding during long duration operations, mechanical vibration, mounting dislocations, loss in the weight of rotating parts due to wear & tear, friction in rotating parts, plain bearing, noise and vibration in the

Design and Development of an Efficient Controller for a Servo Position Control System Using Hybrid Fuzzy-Genetic Algorithm: a Case Study

49

environment, weakening of flux lines etc. Output variable here is angular displacement. Few constraints affect the designed control system. The hard constraints are the specifications of DC motor and its supporting instrumentation in the control loop. Soft constraints are intermediate constraints, which can be negotiated without adversely affecting the systems performance and control. E.g. the soft constraints can be any lower value of the process variable e.g. a set point for position is + radians can be a soft constraint while the rated angular displacement is 1400 radians. Figure 4 below resolves the case study into it block diagram [12].
Figure 4: Uncompensated system block diagram

Figure 5, below gives the architecture of the fuzzy logic controller. The inputs error and change in the error have been scaled before these are sent for fuzzification.

50

Akhlesh Kumar and Yaduvir Singh


Figure 5: Fuzzy Logic controller architecture

Figure 6 represents the block diagram for the control system in this case study, when implemented on fuzzy type controller. [7]
Figure 6: Feedback position control strategy using hybrid Fuzzy-GA controller

The hybrid Fuzzy-GA controller will take the control action in order to reduce the error. If the measured displacement is less than the desired displacement, the controller will take the control action in order to increase the displacement by increasing the voltage and if measured displacement is more than desired displacement, the controller will take the control action in order to reduce the displacement by decreasing the voltage. The hybrid Fuzzy-GA control action results in change in voltage according to the desired displacement. The look up table implemented in position control in this case study-using hybrid Fuzzy-GA controller is given below. Centre of gravity method has been used here for the purpose of defuzzification [8].

Design and Development of an Efficient Controller for a Servo Position Control System Using Hybrid Fuzzy-Genetic Algorithm: a Case Study
Table 2: Look-up table containing heuristically tuned F L C rule base
NB NS NS NB NB ZERO NS NS NS NB ZERO PB ZERO NB NB ZERO PB PB PS NB ZERO PB PS PS PB ZERO PB PB PS PS

51

de(t) dt e(t) NB NS ZERO PS PB

Fuzzy systems (FS) which use GAs for automatic tuning/learning the FS components, are known as Genetic Fuzzy Systems (GFS). Genetic learning, with respect to a FS, describes a process of automatically generating from scratch, all properties of rule -bases, membership functions, or both, where no prior knowledge in respect of either, or both, is incorporated. Tuning a FS is a process of optimizing either a given rule -base and/or membership functions set, and where given parameters are adjusted in order to optimize the FS response. In this study, an offline optimization process of the FLC was attempted as the GA is given prior information in relation to of the number of rules and the number of MFs that give meaning to those same rules.
Figure 7: Flow chart of the developed hybrid Fuzzy-GA controller

52

Akhlesh Kumar and Yaduvir Singh

Figure 8: shows the graph for the error voltage practical observations viz. deviation mode voltage (actuating signal) vs. various angular displacement levels.

Angular displacement (radians)

4. Simulation and Testing


Input1, input 2 and output are shown in a three dimensional space in figure 9 for hybrid Fuzzy-GA controller. This is a three dimensional image for angular displacement, angular displacement error and deviation mode voltage. The hybrid Fuzzy-GA controller tries not only to minimize the steady state error but also to improve the transient response of the system. The surface resembles the graph of membership function for input and membership function for input 2 for the purpose of compensation to be provided by hybrid Fuzzy-GA controller. For angular displacement (input 1) at 0.2267, the compensation is maximum [9].
Figure 9: Hybrid Fuzzy-GA controller behavior for displacement (input 1) displacement error (input 2) and deviation mode voltage (output)

At 0.191 radians, the compensation is minimum. When input 1 is 0.191 and input 2 (displacement error) is 25.1, the output of fuzzy logic controller (change in voltage becomes) is 3.5. Similarly, for different values of displacement and corresponding errors, the type-1 fuzzy logic controller gives deviation voltage as control so as to maintain the displacement at desired value (setpoint).

Design and Development of an Efficient Controller for a Servo Position Control System Using Hybrid Fuzzy-Genetic Algorithm: a Case Study

53

5. Results and Discussion


As shown in table 3, the percentage error in hybrid Fuzzy-GA controller is very less as compare with fuzzy logic controller.
Table 3: Comparison Table for Manual control, Fuzzy logic Controller and hybrid Fuzzy-GA controller
Manual Control Output in volts (Change in voltage) 3.5 3.8 4.06 6.79 8.19 9.99 10.3 9.07 7.88 7.24 6.93 6.4 6.66 Fuzzy Logic Controller Output in volts (Change in voltage) 3.69 3.82 4.04 6.71 8.43 9.75 10.2 10.00 7.72 7.21 6.83 6.3 6.62 Hybrid FuzzyGenetic Algorithm Logic Controller Output in volts (Change in voltage) 3.5 3.8 4.06 6.79 8.19 9.98 10.3 9.07 7.89 7.24 6.94 6.39 6.66 Percentage Error in case of Fuzzy Logic Controller -0.054 -0.005 0.004 0.0117 -0.029 0.02402 0.009 -0.102 0.0203 .004 0.014 0.0156 0.006 Percentage Error In case of Hybrid Fuzzy-Genetic Algorithm Logic Controller 0 0 0 0 0 0.0101 0 0 -.001 0 -0.001 0.0015 0

Sl. No.

Position (In radians) 0.191 0.196 0.200 0.204 0.209 0.213 0.218 0.222 0.226 0.231 0.235 0.239 0.244

1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.

The average percentage error (%) in Fuzzy Logic Controller is 1.03% whereas it is 0.004% in the case of hybrid Fuzzy-GA controller.
Table 4: Performance table for hybrid Fuzzy-GA controller
Input 0.01 0.1 %Overshoot 14.5 9 Settling time (secs) 1.69 1.94 Average steady state error Negligible Negligible

As evident from the simulation results above, hybrid Fuzzy-GA controller are comparatively more accurate and useful in circumstances, where it is difficult to determine the exact membership function (mf) for a fuzzy set and optimal performance is needed under the conditions of optimal control. Figure 10, below depicts the hybrid Fuzzy-GA controller step response.

54

Akhlesh Kumar and Yaduvir Singh


Figure 10: Position control time response using hybrid Fuzzy-GA controller for step input

Here in this work, hybrid Fuzzy-GA controller is based on membership functions, which are fuzzy in themselves [11].

6. Conclusions
The average error in fuzzy logic controller is more than in the case of hybrid Fuzzy-GA controller. Fuzzy logic controller membership functions are precise in the sense that once they have been chosen all the uncertainties disappear. Hybrid Fuzzy-GA is an extension of fuzzy logic controller with an additional dimension that represents the optimality and uncertainty about the degrees of membership. It is concluded that hybrid Fuzzy-GA controller is a better control alternative over fuzzy logic controller. The modeling of hybrid Fuzzy-GA controller is comparatively complex as compare with fuzzy logic controller and also the execution time of this controller is large. The industrial applications, which are not very much angular displacement specific, but complex, and aim at achieving highest possible accuracy at their outputs, for them hybrid Fuzzy-GA controller is a better control alternative. Fuzzy logic controller is not capable of linguistic uncertainties. Hybrid Fuzzy-GA controller efficiently handles the linguistic uncertainties and also leads to the creation of mechanism by which the fuzzy sets can be made more flexible and adaptive. It also demonstrates the ease and flexible switching from conventional to advanced technologies.

Design and Development of an Efficient Controller for a Servo Position Control System Using Hybrid Fuzzy-Genetic Algorithm: a Case Study

55

References
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] L. A. Zadeh, The concept of a linguistic variable and its application to approximate reasoning1, Information Sciences, vol. 8, pp. 199-249, 1975. P. Guillemin, Fuzzy logic applied to motor control, IEEE Transaction, vol. 32, no.1, 1996. P. Mattavelli, L. Rossetto, G. Spiazzi, Paolo Tenti, General-purpose fuzzy controller for dcdc converters, IEEE Transaction on Power Electronics, vol. 12, 1997. C.M. Lim, Experimental study of a fuzzy system for dc motor control, Electronic & Computer Engineering Department, NGEE ANN Polytechnic, Singapore, 1999. O. S. Loboscope, Modeling and simulation of dc motors in dynamic conditions allowing for the armature reaction, IEEE Transaction on Energy conversion, vol. 14, no. 4, 1999. N. N. Karnik, J. M. Mendel & Q. Liang, Type-2 fuzzy logic systems, IEEE Transactions on fuzzy systems, Vol. 7, No. 6, 1999. Q. Liang, Nilesh N. Karnik & Jerry M. Mendel, Connection admission control in ATM networks using survey-based type-2 fuzzy logic systems, IEEE Transactions on systems, part C: Applications and Reviews, vol. 30, no. 3, 2000. F. Filippett, G. Franceschini, C. Tassoni, P. Vas, Recent developments of induction motor drive fault diagnosis using AI techniques, vol. 47, no. 5, 2000. T. Ozen and J. M. Garibaldi, Effect of type-2 fuzzy membership function shape on modeling variation in human decision making, (ASAP), University of Nottinggham, NG8 1BB, U.K., 2001. T. Ozen and J. M. Garibaldi, Investigating adaptation in type-2 fuzzy logic systems applied to umbilical acid-base assessment, University of Nottinggham, NG8 1BB, U.K., 2002. J.M. Mendel, R. John, Type-2 fuzzy sets made simple, IEEE Transactions on Fuzzy Systems, 10/2, pp. 117-127, 2002. M..A. Hoque, M. R. Zaman and M. A. Rahman, Artificial neural network based permanent magnet dc motor drives, Fellow IEEE Memorial University of Newfoundland ,Canada

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.56-68 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

Non-Linear Behaviour Compensation and Optimal Control of SCR Using Fuzzy Logic Controller Assisted by Genetic Algorithm: A Case Study
Akhlesh Kumar Department of Electrical and Instrumentation Engineering Thapar University, Patiala, Punjab-147 004, INDIA Yaduvir Singh Department of Electrical and Instrumentation Engineering Thapar University, Patiala, Punjab-147 004, INDIA Abstract This paper presents a combined model approach of Fuzzy Logic and Genetic Algorithm applied for non-linear behavioral compensation of Silicon Controlled Rectifier (SCR), for its improved performance (optimal variable output voltage). The optimized parametric compensation of SCR will be done by amalgamated algorithm of Fuzzy Logic Control and Genetic Algorithm. It is a shift from existing practice of Fuzzy Logic based control/compensation, as reported in the literature. In this work, a Fuzzy Logic based optimal control system has been developed for input voltage regulation of SCR, which is further optimized by Genetic Algorithm. The input voltage regulation of SCR is needed to meet the varying load current demand in various industrial applications of the device. The proposed scheme as presented in this paper leads to the optimal regulation of input voltage for SCR. The results have shown a remarkable reduction in the error which was otherwise existing in the device and its application circuit. The accuracy level at the output of the SCR after the implementation of the proposed amalgamated algorithm is ranging between 99.0 to 99.5%. It also suits the non-linearly varying load current requirement for a given industrial system employing SCR.

Keywords: Fuzzy Logic Control, Genetic Algorithm, Firing Angle, SCR

I. Introduction
The Silicon Controlled Rectifier (SCR) is most important member of the thyristor family. It is widely used semiconductor switch, in the variety of industrial systems, dealing with the electrical signal control. Present days industrial applications of SCRs include, speed controllers for alternating current (AC) and direct current (DC), temperature and illumination controllers, AC and DC circuit breakers, variable frequency DC-AC inverters, variable voltage DC-DC converters, variable frequency AC-AC converters, variable voltage AC-DC rectifiers etc.[1]. The Fuzzy Algorithms are approximate reasoning codes generated by using the rules of fuzzy sets theory along with linguistic variables for generating the modified input(s) for the system(s) /

Non-Linear Behaviour Compensation and Optimal Control of SCR Using Fuzzy Logic Controller Assisted by Genetic Algorithm: A Case Study

57

plant(s) on real time and are better than conventional control algorithms viz. PID. In the present days Fuzzy Logic Systems, the researchers across the globe had always the problems in learning & adaptation capability and absence of an optimizer & verifier module. [5] Few smart applications of fuzzy logic control system include, proper gearing in the automobile with automatic transmission, finding the best route and automatically guiding of an automobile in intelligent vehicular systems, processes signaling, scheduling and routing the channels in communication systems, predicting the performance of stocks in financial engineering, guiding and controlling movements, recognizing optical patterns and manipulating objects in robotics etc..[4,9,11] Fuzzy logic controllers are considered as a brawn and the present trend is to use them hybrid mode such as neuro-fuzzy or fuzzy plus GA so as to capture some attributes of industrial importance such as adaptability, optimality etc.. Genetic algorithm represents a class of general purpose stochastic adaptive search technique, which simulates natural inheritance by genetics and Darwins survival of the fittest principle and eliminates the disadvantage of reliance on heuristic and hence sub optimal solution in obtaining feasible solutions to the complex industrial problems requiring global optimization.[3,7,10,12] A Genetic Algorithm (GA) [7] is a learning algorithm which operates by simulating evolution. Key features that distinguish a GA from other search methods include - a population of individuals where each individual represents a potential solution to the problem to be solved. Individuals are typically binary strings, but in the context of routing we will take them to be sequences of nodes. The terms individual, solution, and genome will be used interchangeably to refer to one potential solution in a GA population. A fitness function which evaluates the utility of each individual as a solution, a selection function which selects individuals for reproduction based on their fitness, a selection function which exploits useful information currently existing in a population. The GA population will consist of individuals who represent paths between the source node and potential destination nodes. We have use a variable length representation which is expected to allow the GA more flexibility to evolve in response to changes in the network. The fitness of a path is determined from the measurement data returned by an ACK that is received in response to sending a dumb packet along that path. GAs were introduced as a computational analogy of adaptive systems. They are modeled loosely on the principles of the evolution via natural selection, employing a population of individuals that undergo selection in the presence of variation-inducing operators such as mutation and recombination (crossover). The Algorithms include randomly generating an initial population M(0),computing and saving the fitness u(m) for each individual m in the current population M(t),defining selection probabilities p(m) for each individual m in M(t) so that p(m) is proportional to u(m),generating M(t+1) by probabilistically selecting individuals from M(t) to produce offspring via genetic operators, repeating the computation for of fitness function for each individual until satisfying solution is obtained. The appeal of GAs comes from their simplicity and elegance as robust search algorithms as well as from their power to discover good solutions rapidly for difficult high-dimensional problems. GAs are useful and efficient when - the search space is large, complex or poorly understood, domain knowledge is scarce or expert knowledge is difficult to encode to narrow the search space, no mathematical analysis is available, traditional search methods fail.The Genetic Algorithm provides a balance, which is necessary for survival in many different environments. Simplicity of operation and power of effect are two of the main attractions of the Genetic Algorithm approach. Analytical Hierarchy Process (AHP)[8] is a method for comparing a list of objectives or alternatives. When used in the systems engineering process, AHP can be a powerful tool for comparing alternative design concepts. AHP is a comprehensive, logical and structured framework. It allows to improve the understanding of complex decisions by decomposing the problem in a hierarchical structure. The incorporation of all relevant decision criteria, and their pair-wise comparison allows the decision maker to determine the trade-offs among objectives This procedure recognizes and incorporates the knowledge and expertise of the participants. It makes use of their subjective judgments, which is a particularly important feature for decisions to be made on a poor information

58

Akhlesh Kumar and Yaduvir Singh

base. The AHP is based on three principles: Decomposition of the decision problem, Comparative judgment of the elements, Synthesis of the priorities. Presently, researchers are implementing genetic algorithm in hybrid mode i.e. along with other control algorithms especially in the industrial applications requiring optimal control. One such an area is industrial electronics, which has motivated the researchers to take up this work, as reported in this paper. In this work, the researchers have used fuzzy logic control model along with genetic algorithm in a non-linear application of performance compensation of SCR. The various non-linearities occurring with in the SCR during its operation have been analyzed in this work, and optimal compensation has been provided using fuzzy and genetic algorithm.

II. Case Study: SCR Input/Output Characteristic Experimental Circuit


In this research paper, the case study of SCR has been taken up for the purpose of providing non-linear behavioral compensation and optimal control using fuzzy logic control algorithm, which is further assisted by genetic algorithm. This case study has been taken up in the view of increasing importance of SCR, as reported in the various research journals/transactions, industrial publications and product catalogues. Experiment Details The experimental set up taken for data collection on the SCRs behavior is shown in figure 1 along with the suitable instrument ranges. The behavioral data for SCR BT-136 was obtained under various supply voltages. Initially, 20 volts output from a variable 150 volts D.C power supply was connected across anode cathode terminals. Later, the data samples for the load current, load voltage and gate current were also taken by varying this voltage from 10-100 V. The anode voltage was set at a particular value and the gate current was increased gradually from a low value. It was observed that at a particular value of the gate current, the anode current increases suddenly from a negligible value to a very high value indicating turning on of SCR. A SCR is not completely latched in the on state until the plasma has spread across the entire cross section. The SCR is inherently a slow switching device compared to BJTs or MOSFETs because of the long lifetimes used for low on-state losses and because of the large amount of stored charge. It is therefore normally used at lower switching frequencies. The rate of rise or the on-state current must be kept within bounds because the slow spread of the plasma during the turn on transient leads to current crowding that could result in device failure if di/dt is too large.
Figure 1: Experimental circuit for SCR BT-136
(0-2A) + 150V DC + S A RL A K G Rg (0-10mA) A
500 1.2A

5V

While turning off this SCR, the gate reduced to a low value and the switch indicated as S in the figure 1, to on state. Subsequently, the anode circuit power supply was reduced to zero and gate power supply was left unchanged by retaining the same potentiometer setting. The output of anode power supply was varied gradually, in steps, and the observations were made for the values of anodecathode voltage as VAK and anode-cathode current IAK, at every step. This process was repeated till the SCR BT-136 had triggered. The characteristics obtained from experimental setup as shown in figure 1 have been shown in figure 2, which is designated as manual. It has been analyzed for its variance with the ideal characteristic. The ideal characteristics have been obtained from the

Non-Linear Behaviour Compensation and Optimal Control of SCR Using Fuzzy Logic Controller Assisted by Genetic Algorithm: A Case Study

59

mathematical model of the device and circuit and the attributes / relationships, as given in the product catalogue.
Figure 2: Load current versus load voltage characteristic for the SCR BT-136
L o a d v o lta g e (V o lts ) 120 100 80 60 40 20 0 0 0.2

Manual

Ideal 0.4 Load current (Amps) 0.6 0.8

Figure 3: Anode to cathode voltage versus gate current characteristic for the SCR BT-136.
G ate current (Am ps) 8 6 4 2 0 0 20 40 60 80 100 120 Voltage, Anode to Cathode (Volts)

As, it is evident from figure 2, the manual characteristic is at variance with the ideal characteristic, and hence, the load current needs to be compensated by regulating the input variable supply. The deviation between the two plots is nonlinear and hence it is a fit case for the implementation of fuzzy logic controller. Fuzzy logic controller will take the deviation between the two plots (error) as an input, and the actuating signal i.e. the output of this controller is variable supply voltage. Further, as an added control dimension, this variable supply voltage has been optimized using genetic algorithm, as reported in this research paper

III. Mathematical Modeling


The mathematical modeling has been carried out in order to develop a software code for the SCR and its circuit, as shown in the figure 1. The mathematical model as developed below is the mainstay for the non-linear behavioral analysis and the control problem formulation of the SCR and its circuit, as undertaken in this work. SCR Circuit The applied gate voltage at SCR is given as (1) E s = Vg + I g R s where, Es, Vg, Ig and Rs are gate source voltage, gate- cathode voltage gate current and gate-source resistance, respectively. The SCR voltage equation VT as a function of the its current IT from the V-I characteristics, as obtained from the device circuit as shown in the figure 1, for a conducting SCR are give as below. VT = VO + I T R T (2) where RT is the dynamic resistance of the device and V0 is a constant The instantaneous dissipation is given as below. Pd = VT I T = VO I T + I 2 T R T (3) and the average power dissipation is obtained as below.

60

Akhlesh Kumar and Yaduvir Singh

(4) Pdav = VO I Tav + R T I 2 TRMS The average power dissipation is a function of the average and RMS values of the forward current. Their ratio is obtained as below.

I TRMS (5) I Tav The ratio k depends on the waveform of the current and therefore on the applied voltage. If the SCR is in a dc circuit, then k =1. The load current Il is same as the SCR current I. The current and the voltage through the SCR are further analyzed in equations 6 to 9, for the purpose of identifying parameters and their sources for the operational non-linearities. k =
I l = I m sin t =
2

2 I g + I CB01 + I CBO2 1 (1 + 2 )

(6) (7)

1 Ilav = Im sin tdt 2 0

Ilrms = and

1 [ I2 sin2 tdt] m 2 0

(8)

(9) where I1 is load current, Im is maximum current through load, is fundamental frequency, ICBO1and ICBO2 are common base leakage currents, 1 and 2 are common base current gains, Ilav is average load current, Ilrms is rms or effective value of load current, Vlrms is rms or effective value of load voltage and Z load is load impedance.
Case study Circuit

Vlrms = Zload Ilrms

The various voltage equations as obtained from the various loops of the electrical circuit as shown in figure 1 are given as below. 150 IRL VAK = 0 K (10) 5K I g R g VKG = 0 (11) where K and K are constants, I load current, RL load resistance, VAK voltage between anode and gate and VKG is voltage between cathode and gate. The various losses in the elements of the electrical circuit as shown in the figure 1 are related, as shown below in equation 12. Total power loss = Loss in R1 + Loss in diode + Loss in Rg (12) The peak off-state voltage, gate trigger current and the peak on-state current affect the turn-on time. For a given turn-on time, the minimum gate current required, and the pulse width T is obtained. If the frequency of firing f is known, the peak instantaneous gate power dissipation Pgmax is obtained as
Pg max = Vg I g = Pgav fT

(13)

where Pgav is the specified maximum permissible average gate power dissipation. The energy dissipated in the device during turn-on transition can be approximated as Wc (on) = 1 2 Vd I o t c (on)

(14)

where tc (on) is turn- on crossover interval and Wc(on) is energy dissipated in the device during this turn-on transition. The other major contribution to the power loss in the switch is the average power dissipated during the on-state Pon which varies in proportion to the on-slate voltage as given in the equation 15. t (15) Pon = Von I o on T

Non-Linear Behaviour Compensation and Optimal Control of SCR Using Fuzzy Logic Controller Assisted by Genetic Algorithm: A Case Study

61

IV. Problem Formulation and Simulation


Operating the circuit as shown in the figure 1 made the practical observations as given by various relational plots between the voltage and current shown in the figures 2 and 3. The plots as illustrated in the figures 4, 5 and 6 have been contrived from observation plots, as shown in the figures 2 and 3, for the purpose of developing fuzzy logic controller and genetic algorithm. The plot shown in the figure 4 relates load current with the error in the load voltage through SCR BT-136. The variation of the error in the load voltage with respect to the load current is linear up to 0.3 amperes and then exponentially increasing with the increase in the load current values. The plots as shown in the figures 2 and 3 above, give the plot as shown in the figure 5, which relates load current and the gate current in SCR BT-136. The gate current with the load current is decreasing non-linearly. The plots as shown in the figures 4 and 5, give the plot as shown in the figure 6, which relates the gate current with the error in load voltage during operation of SCR BT- 136.
Figure 4: Load current versus error in load voltage characteristic for SCR BT-136.
100 80 60 40 20 0 0 0.1 0.2 0.3 Load current 0.4 0.5 0.6

As shown in figure 1, the error in load voltage is decreasing monotonically with increase in the gate current of SCR BT-136. The variation is non- linear.
Figure 5: Load current versus gate current for SCR BT-136
8 6 4 2 0 0 0.1 0.2 Load current (Amps) 0.3 0.4

G a te c u rre n t (m A )

L o a d e rro r v o lta g e

62

Akhlesh Kumar and Yaduvir Singh


Figure 6: Gate current versus load voltage error characteristic for SCR BT-136
E r r o r v o lta g e (V o lt s ) 100 80 60 40 20 0 0 2 4 Gate current (mA) 6 8

Fuzzy logic controller and genetic algorithm design & development Design and development of fuzzy logic control model includes giving crisp input, generating Fuzzy sets for input(s), creating knowledge base, formulating Fuzzy rules, firing Fuzzy rules, composition and aggregation of rule outputs, defuzzifying the aggregated effects, getting the crisp value for the output. Fuzzy logic controller development and implementation The various fuzzy antecedents and consequence sets designed and implemented in this case study are given below.
Figure 7: Fuzzy Logic sets for input variable 1; error in load current (eI load)

Input 1 viz. error in load current, includes five fuzzy sets, as shown in figure 7. Input 2 is derivative of the load current, and has been shown in figure 8. Input 2 has been considered for four fuzzy sets.

Non-Linear Behaviour Compensation and Optimal Control of SCR Using Fuzzy Logic Controller Assisted by Genetic Algorithm: A Case Study
Figure 8: Fuzzy Logic sets for input variable 2; derivative of error in load current (deI load/dt)

63

The output variable fuzzy set has been considered for seven fuzzy sets as depicted in figure 9, below.
Figure 9: Fuzzy Logic sets for output variable; voltage compensation in deviation mode (eV)

The method, Centre of Area (COA) has been selected as defuzzification method as it yielded best results. The most common method is the centre of area method which finds the centre of gravity of the solution fuzzy sets. The crisp values of voltage compensation eV are obtained by using the following relationship.

(14)

where is the value from the set that has a membership value . There is a close relation between decision tables and defuzzification methods; however, the degree of dependency varies from defuzzification method to defuzzification method. Clearly, the less sensitive method is preferred if accuracy is the primary concern. Mean of Inversion Method (MOI) can yield more accurate results

64

Akhlesh Kumar and Yaduvir Singh

since it is the least sensitive defuzzification method with respect to the contents of the decision tables. Mean of Maximum Method (MOM) performed badly in terms of accuracy, it does not seem suitable for this application. When Centre of Area (COA) is used, the fuzzy subsets should be used judiciously because COA is sensitive to the in the decision table. However in some cases, MOI is superior to COA. Genetic Algorithm Development and Implementation The genetic algorithm execution includes generating random population of n chromosomes (suitable solutions for the problem), evaluating the fitness of each chromosome in the population., creating a new population by repeating following steps until the new population is complete, selecting two parent chromosomes from a population according to their fitness, (the bigger fitness, the bigger chance to be selected), crossover the parents to form a new offspring (children), mutating new offspring at each locus (position in chromosomes), accepting/placing new offspring in a new population, replacing (using new generated population for a further run), testing (if the end condition is satisfied, stop and return the best solution in current population) or else again repeat. Cost function developed in this case, for the optimization of SCR parameters is given as below. Cost Function c = A1 1 + A2 2 + A3 3 + A4 4 (16) Here, 1, 2, 3 and 4 are the attribute indices, calculated using comparison matrix. A sample value for 1 is calculated using comparison matrix as shown by equation (2). Their values depend upon present and initial conditions of SCR as derived from its I-V behaviour during operation. Similarly, other attribute indices are obtained under various operating conditions. The values of s form the basis for node selection for optimal route in MANET. These values of as obtained by AHP ,are basically taken at different time slots in a particular region. Genetic algorithm[7] is used to perform two functions viz., firstly to obtain two(02) best values of s (taken as parent chrosomes participating in crossover), and secondly to generate offspring value of , which is optimal in comparison to other attribute indices in the initial population. Binary encoding is used in this work. The developed GA is equipped with a clause conditionally prohibiting the selection of the shortest path, every time. This helps in preventing network congestion and improper utilization of all the available To find the rank of the various chromosomes, the developed subrouting for AHP executes for the following steps. Step 1:-Creating hierarchies to resolve a problem as shown below.

Non-Linear Behaviour Compensation and Optimal Control of SCR Using Fuzzy Logic Controller Assisted by Genetic Algorithm: A Case Study Step 2:-Comparison of the alternatives and the criteria.
Verbal scale Equally important, likely or preferred Moderately more important, likely or preferred Strongly more important, likely or preferred Very strongly more important, likely or preferred Extremely more important, likely or preferred Intermediate values to reflect compromise Numerical values 1 3 5 7 9 7

65

Step 3:-Synthesize the comparisons to get the priorities of the alternatives with respect to each criterion and the weights of each criterion with respect to the goal. Local priorities are then multiplied by the weights of the respective criterion The results are summed up to get the overall priority of each alternative resources. Table 1 below, gives numerical rating considered in this work for verbal judgment of preferences
Table 1: Pair-wise Comparison Scale
Numerical Rating 9 8 7 6 5 4 3 2 1

Verbal Judgment of Preference Extremely Preferred Very Strong to Extremely Very Strongly Preferred Strongly to very strongly Strongly Preferred Moderately to strongly Moderately Preferred Equally to moderately Equally Preferred

Table 2:

Comparison matrix for a particular time


T 1 0.5 0.125 0.175 ND 2 1 0.25 0.66 PC 8 4 1 6 NS 1033 0.66 0.1667 1

Attribute Traffic Node Density Power Consumption Node Status

From the comparison matrix and pair wise comparison scale 1 is obtained as given below. 1 = ^4 + 2 ^3 - 4.5329 ^2 0.0042 + 0.0004 (17) Solving equation no. (17) yields values for 1 as 3.34, 2.26, 0.0098 and 0.0089 Similarly, different values of 2, 3, 4 are also obtained. The best two values for each attribute index are selected using GA. using binary encoding or some other optimized value is selected using another form of mutation and crossover.

V. Simulation and Testing


The simulation and testing results have been obtained and collated as given in the performance metric. The control surface of developed fuzzy logic controller is shown in figure 10.

66

Akhlesh Kumar and Yaduvir Singh


Figure10: Fuzzy logic control surface

As evident from the obtained control surface, for lower values of both the inputs, the output is compensated to a low extent, and as the input values increase the voltage compensation offered by Fuzzy Logic Controller also increases. The simulation test results of Fuzzy Logic based control and Fuzzy + Genetic Algorithm have been collated with manual control, down in the figures 11, 12 and 13 below.
Figure 11: Simulation/test results table for set point load current of 0.05Amperes
0 -0 -50 V lta eC m e s tio o g o pna n -100 -150 -200 -250 -300 -0.1 -0.1 -0.2 -0.2 Load Current -0.3 -0.3 -0.4 -0.4 -0.5 -0.5 -0.6

Non-Linear Behaviour Compensation and Optimal Control of SCR Using Fuzzy Logic Controller Assisted by Genetic Algorithm: A Case Study
Figure 12: Simulation/test results table for set point load current of 0.35Amperes
250 200 Voltage Compensation 150 100 50 0 0.3 -50 -100 Load Current 0.25 0.2 0.15 0.1 0.05 0 -0.05 -0.1 -0.15 -0.2 -0.25

67

Figure 13: Simulation/test results table for set point load current of 0.5Amperes
300 250 V lta e C m e s tio o g o pna n 200 150 100 50 0 -50 1 2 3 4 5 6 7 8 9 10 11 12

Load Current

Table 3:

Abridged comparison table for % error due to various set point load currents
% Control voltage accuracy Set point load Set point load Set point load current 0.05 Amps. current 0.35 Amps. current 0.5 Amps. 100 100 100 95.24 93.64 93.72 99.06 98.04 98.03

Control system models Manual Control System Fuzzy Logic Control System Fuzzy + Genetic Algorithm Control System (expected)

VI. Results and Discussion


The developed Fuzzy Logic Model was provided with supervisory training. The Fuzzy Logic algorithm for diode anode to cathode voltage compensation for the circuit as given in figure 1, was trial run for three different set point load current levels, as depicted in figures 11, 12, and 13. Fuzzy Logic based diode anode to cathode voltage compensation has shown medium grade accuracy. The accuracy level, for three different set point load current of 0.05A, 0.35A & 0.5A are 95.24%, 93.64% & 93.72%, respectively. The Genetic Algorithm fine tunes the diodes anode to cathode voltage generated by Fuzzy Logic control system. The results of implemented amalgamated algorithm (fuzzy plus genetic algorithm) as obtained and shown in this research paper reveal highly

68

Akhlesh Kumar and Yaduvir Singh

accurate generation of diodes anode to cathode voltage with an average accuracy level of 98.37%. Also, the earlier experiences of Genetic Algorithm developed for other applications have resulted in grade A accuracy in the process / system output(s), typically varying between 98 to 99%. It is so because Genetic Algorithm will terminate only after generating globally optimum diodes anode to cathode voltage, for each case of variable set point load current requirement.

VII. Conclusions
Fuzzy Logic system lacks adaptability to the new set of parameters which are not considered during its design stage as a result, it yields medium grade control accuracy. However, it is one of the available faster intelligent control techniques. Genetic Algorithm, if used with conventional control techniques as the one proposed in this work will certainly value-add the optimal control related aspects of industrial systems in other higher order non-linear systems.

References
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] M. S. Adler, K. W. Owyang, B Jayanl Baliga, and R. A. Kokosa, "The Evolution of Power Device Technology," IEEE Transactions on Electron DevicesVol. ED-31,No.11, Nov. 1984,pp.1570-1591. R. L. Avant and F. C. Lee, "A Unified SCR Model for Continuous Topology CADA,"IEEE Transactions or Industrial Electronics, Vol. IE-31, No.4, Nov. 1984, pp. 352-361. GCD Sonsa and BK Bose, "A Fuzzy set theory based control of a phase control converter DC Machine drive", IEEE transactions on Industry Application vol.30. pp. 38, Jan- Feb 1994 Jinwoo Kim, Yoonkeon Moon, and Bernard P. Zeigler, "Designing Fuzzy net controllers using Genetic Algorithm", IEEE control systems, pp.66- 72, 1995 Andrew J Barr and Dr. Jeffrey L.Ray, "Control of an active suspension using Fuzzy logic", Proceedings of the fifth IEEE international conference on fuzzy systems, vol.l, 8-11, Sep 1996 D.S. Yeung and ECC. Tsang, "A multilevel weighted Fuzzy reasoning Algorithm for expert system", IEEE transactions on systems, Man and Cybernetics, vol.28, No.2. pp. 149-158, Mar 1998 Gyuiseppe Ascia and Vincenzo catania, "A High performance processor for applications based on Fuzzy logic", IEEE international Fuzzy systems conference proceedings, Aug 22-25,1999 Angelov, P. and Buswell, R. Identification of evolving fuzzy rule-based models IEEE Transactions on Fuzzy Systems, Vol.10, Issue 5, pp.667-677, Oct.. 2002 Foulloy, L. and Galichet, S., Fuzzy control with fuzzy inputs IEEE Transactions on Fuzzy Systems, Vol.11, Issue 4, pp.437-449, August 2003 Baranyi, P. Koczy, L.T. and Gedeon, T.D., A Generalized Concept for Fuzzy Rule Interpolation IEEE Transactions on Fuzzy Systems, Vol.12, Issue 6, pp. 820-837, Dec. 2004 Park, Y., Tahk, M.-J. and Bang, H., Design and Analysis of Optimal Controller for Fuzzy Systems With Input Constraint IEEE Transactions on Fuzzy Systems, Vol.12, Issue 6, pp. 766-779, Dec. 2004 Li, Y. and Li, S., A Fuzzy Sets Theoretic Approach to Approximate Spatial Reasoning, IEEE Transactions on Fuzzy Systems, Vol.12, Issue 6, pp. 745-754, Dec. 2004

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.69-76 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

Robotic Arm Movement Optimization and Trajectory Planning Using Genetic Algorithms
Vijay Kumar Banga Research Scholar, Department of Electrical & Instrumentation Engineering Thapar University, Patiala, Punjab, INDIA E-mail: vijaykumar.banga@gmail.com Tel: +919417800072 Yaduvir Singh Department of Electrical & Instrumentation Engineering Thapar University, Patiala, Punjab, INDIA Rajesh Kumar School of Mathematics and Computer Applications Thapar University, Patiala, Punjab, INDIA Abstract In this paper, we present an optimization algorithm for movement and trajectory planning of a two degrees-of-freedom robot using genetic algorithms (GA). Workspace for robotic arm is described and its movement measure is formulated. To find the optimal movement of the robot and its trajectory planning, we have developed genetic algorithms to search the valid solution in the specified workspace. To speed up to evolutionary process from one generation to another, elitism has been kept in developed genetic algorithms. The genetic algorithms approach can also be conveniently extended for movement optimization and trajectory planning as similar to this case for robots with even more degrees-offreedom. Keywords: Inverse kinematics, Genetic algorithms (GA), Robotic arm

1. Introduction
Industrial robots are quite prevalent in high volume manufacturing processes. In many field applications where technical support is required, manhandling is either dangerous or is not possible. In such situations, three or more arm manipulators are commonly used. They are in great demand to speed up the automation processes [1, 6]. Two-link robotic arm should be able to locate any location, which is the required movement in real world situations. These are used in micro to macro scale applications viz. chip fabrications to huge mechanical actuators used in chemical processes [8]. In these cases, the motion profile of the robot rarely changes throughout the whole operation. Therefore, searching an optimal robot arm movement is a favorable solution to those problems. In numerical, geometrical and optimization methods the accurate knowledge of the system to be optimized is needed [10,12].

Robotic Arm Movement Optimization and Trajectory Planning Using Genetic Algorithms

70

Literature survey reveals that there is need to optimize the movement for energy consumption and various other mechanical and control related attributes like friction, settling time etc., which will improve the performance [2, 3, 5]. The GA can be used to search the parameters of the polynomial to minimize the energy consumption. Intelligent methods like fuzzy logic, neural network, genetic algorithm etc. are widely used in different areas, especially in advanced computing, control and optimization problems. Even when prior complete knowledge about a system is not available, these intelligent methods can be conveniently used to control or optimize a complicated engineering system. Intelligent methods can also be used in optimization of movement and trajectory planning of manipulators [13]. These methods can be used for solving redundancy resolution problems. Genetic algorithms are viewed as function optimizers. The range of problems to which genetic algorithms can be applied is quite broad. Implementation of genetic algorithms begins with a population of random chromosomes. A fitness function evaluates and allocates reproductive opportunities in such a manner that only the chromosomes representing a better solution to the target problem are given chance to reproduce than those chromosomes which are poorer solutions [4]. In this paper, we have firstly analyzed the problem of movement of arms and end-effector. The reachable workspace gives the condition for singularity avoidance. GA is applied to search for the optimal angular movement of robotic arms. Simulation of a two degrees-of-freedom robot is provided to demonstrate the effectiveness of the proposed method. We have applied genetic algorithms to solve the angular movement of robot arms. The fitness function has been formed in cartesian space, which gives optimal arm movements. The developed genetic algorithms give the possible solutions required for trajectory planning, also.

2. Problem Formulation
In this paper, we have considered a planar robot with two degrees of freedom as shown in figure 1. The arms move in XY-plane. The length of arms 1 and 2 are l1 and l2, respectively. The arm angles 1 and 2 are, and , respectively. Coordinates (xa, ya) and (xb, yb) are the starting and terminal points of the robotic arms movement [6,14,15].
Figure1: Two-degrees-freedom planar robot in cartesian space

(xa, ya) a l2

(xb, yb) b XY-plane

l1 Base X

The end-effector coordinates x and y are expressed in terms of the input joint angles and and link lengths l1 and l2 as (1) x = l1 cos + l2 cos( + ) and

71

Vijay Kumar Banga, Yaduvir Singh and Rajesh Kumar y = l1 sin + l2sin( + ) The Jacobian matrix for a planar robot with two degrees-of-freedom is
l 1 sin l 2 sin l 2 sin( + ) J ( , ) = l 1 cos + l 2 cos l 2 sin( + )

(2) (3)

The values of and are obtained as


1

= cos

( x 2 + y 2 ) ( l1 2 + l 2 2 ) 2 l1 + l 2

(4)

and
= tan
1

y ( l 1 + l 2 cos ) xl 2 sin x ( l + l cos ) yl sin 1 2 2

(5)

The feasible workspace of robot, when the end-effector is positioned at any point is the area between two concentric circles, as shown in figure 2.
Figure 2: Feasible area of the robotic arms movement

Their radii r1 and r2 are given as


r1 = l12 + l2 2 + 2l1l2 cos

(6)

and (7) Here, is the angle between x-axis and arm l1 and is the angle between extended arms l1 and l2. r1 and r2 are the inner and outer radius of feasible area of the robotic arm movement, respectively[7]. As the end-effector moves, the outer boundary of the feasible area is obtained by intersecting the two outer circles for the two end points on robot trajectory. It is shown in figure 3. The inner boundary is obtained by sweeping the inner circle along the trajectory.
r2 = l12 + l2 2 + 2l1l2 cos

Figure 3: Feasible area as end-effector moves

In the case of a serially connected manipulator, the determinant of the Jacobian matrix becomes zero as end-effector passes close to a singular position. It results in excessive joint velocities and torques. The manipulability measure w is given as:

Robotic Arm Movement Optimization and Trajectory Planning Using Genetic Algorithms
w = det JJ
T

72

(8) Minimum rotation of joints 1 and 2 are considered in the fitness function. When the endeffector moves from one point to the another point, the joint displacement Dk for joint k is obtained as: m (9) D = ( j + 1 j )
k j = 0 k k

where k represents joints. k=1,2 in this case, m is the number of steps of joint k, and jk is the position of joint k at jth step. The fitness function F(n) is a linear combination of D1 and D2. Thus (10) F ( n ) = D + D ( o < ( , ) < 1) where n is the nth chromosome in a particular generation in the total chromosome population.
1 (n) 2 (n)

3. Genetic Algorithms
Conventional methods of optimization require an accurate mathematical model. In a two-degreesfreedom planar robot any mathematical modeling inaccuracy will hamper the mathematical optimization process. Also, as the configuration is changed, the optimization needs to be redefined. Genetic Algorithms is an intelligent optimization method [8,9,11]. Here in this work, genetic algorithms are proposed to search the optimal angular displacement of robot arms as they move. The algorithm of G Ais: 1. Initialise.(time t=0) 2. Form the initial population consisting of n chromosomes P0 = {C1,C2,,Cn) 3. Obtain fitness of each chromosomes FCi = fit(Ci), i=1n. 4. Obtain fitness of the whole population Ft = fit(Pt). 5. Select the best chromosome Ci from the population Pt . 6. Select the second best chromosome from the population. c1 = Get(Bt) Ac = Crossing(Ac,Ac1). 7. Assume suitably a crossover probability and apply the crossover operator on the two chromosomes as obtained in steps 5 and 6, above. 8. Assume suitably a mutation probability and apply the mutation operator. 9. Assume suitably an inversion probability and apply the inversion operator. 10. Place this chromosome in the new population. 11. Repeat steps 5 to 10 n times. 12. Increment the current epoch number t=t+1. 13. Check the stop condition, if met, terminate the loop, and else go to step 3.

5. Simulation and Testing


5.1. Encoding Encode the arm joint coordinates. It is a character string consisting of 0s or 1s. The number of bits for the chromosome is determined by the magnitude of joint angles. More number of bits in the character string of encoded coordinated will give higher precision. 5.2. Fitness In this case, the inverse of objective function considered is given as
O (n ) = 1 / F (n )

(8)

Depending upon the value of fitness function a chromosome survives to the next generation. 5.3. Genetic Reproduction Parents with better fitness will have a better chance of selection. For this purpose, the rank selection method is used. In this evolutionary process, parents combine to generate each new generation. Care

73

Vijay Kumar Banga, Yaduvir Singh and Rajesh Kumar

has to be taken in not letting the parent chromosomes search falling into local optima. Elitism feature used in the proposed genetic algorithms will retain few good chromosomes in every next generation. A suitable value of elitist rate is chosen. 5.4. Genetic Crossover Parent chromosomes to be crossed over are randomly chosen by keeping a suitable crossover rate with the crossover position selected randomly. 5.5. Genetic Mutation It is performed on bit-by-bit basis by keeping a suitable mutation rate. 5.6. Simulations In the simulations, the population is P = 120, the bit string size =10, the elitist rate = 0.03, the crossover rate = 0.5 and the mutation rate = 0.01. Figure 4 shows the evolutionary process from one generation to another. After 5 generations the fitness functions assumes a plateau profile with fitness measures around 2.75. The undulations in the evolutionary process converge greatly for the optimal angular displacement of robotic arms after 280 generations. Next, a higher elitist rate will further converge the optimal angular displacement for still lesser number of generations. However, a lower elitist rate is preferred as it yields global optimal results.
Figure 4: The evolutionary process

Simulations in the conditions of elbow-down and elbow-up are carried out. Figure 5 shows the trajectories of joints 1 and 2 at the optimal angular displacements of robotic arms in elbow-down configuration.
Figure 5: Angle of joints for elbow-down configuration

Figure 6 shows the elbow-down configurations in the workspace.

Robotic Arm Movement Optimization and Trajectory Planning Using Genetic Algorithms
Figure 6: Elbow down configuration

74

Figure 7: Angle of joints for elbow-up configuration

Figure 8 shows the evolutionary process in elbow-up configuration. It generates the optimal rationalized optimal angular displacement as location (0.428, 0.489), while assuming one of the robotic arm already placed optimally. As shown in figure 8, the evolutionary process quickly converges to the optimal angular displacement after 37 generations. Figure 5 and Figure 7 are the trajectories for joint 1 and 2 in the workspace and joint space, respectively.
Figure 8: Evolutionary process for elbow-up configuration
0.5 0.45 Fitness 0.4 0.35 0.3 0.25 0.2 0 50 100 150 200 250 Generation

Figure 9 shows the elbow-up configuration in the workspace. Figure 10 gives a comparison of different populations in terms of a fitness function in a generation. If larger is the population better is the value of fitness function. Hence, a larger number of generations in a fixed population has been

75

Vijay Kumar Banga, Yaduvir Singh and Rajesh Kumar


Figure 9: Elbow-up configuration

taken. In this work, the largest number considered for simulation and testing is 120.
Figure 10: Evolutionary process for various populations
0.375 0.37 Fitness 0.365 0.36 0.355 0 50 100 150 200 250 Generation Population Population Poulation Population

6. Conclusion
We studied the optimal movement of robotic arms for two degree-of-freedom using inverse kinematics. An optimization method based on the genetic algorithm is proposed. In the developed genetic algorithms, in order to obtain the optimal angular displacements for the robotic arms in the whole workspace, elitism has been retained from the previous generation to the next. Simulations, testing and comparisons have been carried out. GA does not need complete knowledge of system. Evolutionary process converges too quickly if the population is very large. As obtained, population 120 gives best convergence. It is concluded that GA is practical and effective method for achieving optimization of robotic arm angular displacements.

Robotic Arm Movement Optimization and Trajectory Planning Using Genetic Algorithms

76

References
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] A. Hemami Kinematics of Two-Arm Robots IEEE Journal of Robotics and Automation, Vol. Ra-2, No. 4, 225-228(1986). J. Chen and L. Chao, Positioning Error Analysis for Robot Manipulators with All Rotary Joints IEEE Journal Of Robotics And Automation, Vol. Ra-3, NO. 6, 539-545(1987). A. Hemami and R.M.H. Cheng A Preliminary Step for Path Tracking of Coordinated Robot Arms Based on Kinematics SAGE International Journal of Robotics Research, Vol. 11,No.3, 185-195(1992). L. Wu et. al. Redundancy coordination of multiple robotic devices for welding through genetic algorithm Robotica, volume 18, 669676, (1999). Devendra P. Garg and Manish kumar Optimization Techniques applied to multiple manipulators for path planning and torque minimization Engineering Applications of Artificial Intelligence Vol 15, Issues 3-4, 241-252 (2002). Craig Eldershaw and Stephen Cameron Genetic Algorithms to Solve the Motion Planning Problem Journal of universal computer Science Vol.6,issue 4, 422-432 (2000). J.C. Trinkle and R. James Milgram Complete Path Planning for Closed Kinematics Chains with spherical joints SAGE International journal of Robotic Research Vol.21,No.9 773-789 (2002). M. Gemeinder and M. Gerke GA-based path planning for mobile robot systems employing an active search algorithm Journal of Applied Soft Computing Vol. 3, Issue 2, 149-158 (2003). P.Th. Zacharia and N.A. Aspragathos Optimal robot task scheduling based on genetic algorithms Elsevier Robotics and Computer-Integrated Manufacturing 21, 6779 (2005). 10.Sung-Hee Lee et. al. Newton-Type Algorithms for Dynamics-Based IEEE Transactions On Robotics, vol. 21, no. 4, (2005). V. B. Nguyen and A. S. Morris, Genetic Algorithm Tuned Fuzzy Logic Controller for a Robot Arm with Two-linkFlexibility and Two-joint Elasticity Journal of Intelligent Robot Systems 49:318, (2007). M. Rodrguez et. al. Autonomous and fast robot learning through motivation Robotics and Autonomous Systems 55, 735740, (2007). E.J. Solteiro Pires et. al. Manipulator trajectory planning using a MOEA Applied Soft Computing Volume 7, Issue 3, Pages 659-667 (2007). Zhenwang Yao and Kamal Gupta Path planning with general end-effector constraints Robotics and Autonomous Systems, vol 55, 316327, (2007). Z. Doulgeri and Y. Karayiannidis Force position control for a robot finger with a soft tip and kinematic uncertainties Robotics and Autonomous Systems 55 328336,(2007).

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.77-95 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

Fault Classification in Phase Locked Loops Using Back Propagation Neural Network
J. Ramesh Senior Lecturer, Electronics and Communication Engineering Department PSG College of Technology, Coimbatore-641004 E-mail: jramesh60@yahoo.com P.T. Vanathi Assistant Professor, Electronics and Communication Engineering Department PSG College of Technology, Coimbatore-641004 E-mail: ptvani@yahoo.com K. Gunavathi Professor, Electronics and Communication Engineering Department PSG College of Technology, Coimbatore-641004 E-mail: kgunavathi2000@yahoo.com Thirunavukkarasu K.A Student, Electronics and Communication Engineering Department PSG College of Technology, Coimbatore 641004 E-mail: arasuarjunan@gmail.com Sivasubramanian.M Student, Electronics and Communication Engineering Department PSG College of Technology, Coimbatore 641004 E-mail: siva.ecepsg@gmail.com Abstract Phase-locked loops (PLLs) are among the most important mixed-signal building blocks of modern communication and control circuits, where they are used for frequency and phase synchronization, modulation and demodulation and frequency synthesis. The growing popularity of PLLs has increased the need for testing these devices during prototyping and production. The problem of distinguishing and classifying the responses of analog integrated circuits containing catastrophic faults has aroused recent interest. This is due to the fact that most analog and mixed signal circuits are tested by its functionality, which is both time consuming and expensive. The problem is made more difficult when parametric variations are taken into account. Hence, statistical methods and techniques can be employed to automate fault classification. As an attempt in this paper the Backpropagation Neural Network is used to classify the faults in three different Charge Pump PLL (CP-PLL) designs.

Fault Classification in Phase Locked Loops Using Back Propagation Neural Network

78

I. Introduction
The Integrated Circuit (IC) manufacturing costs are strongly affected by the cost of test equipment, test time and test procedure development. This is especially true in mixed-signal ICs when analog blocks are involved. Furthermore, the cost for the analog part often dominates the total cost of testing while the analog circuitry represents only a small percentage of the total area. In an attempt to minimize production costs, the IC manufacturers are now investing considerable efforts in the area of mixed analog/digital design and test using analog BIST (Built-in Self-Test) techniques appear as promising solution. But addition of BIST in System-On-Chip design increases the chip area and also it can only detect the faults. The designed three different Charge-pump PLLs employ a PFD (Phase Frequency Detector) and a charge- pump instead of a conventional PD (Phase Detector) and a LPF (Low Pass Filter) in the generic architecture. The combination of a PFD and a charge-pump offers several advantages, namely The capture range is only limited by the VCO (voltage-controlled oscillator) output frequency range. The static phase error is zero if mismatches and offsets are negligible. The PLL does not suffer from false lock. The input signal and the VCO output are exactly in phase. In all the PLLs only the design of PFD is different. For all the transistors the various structural faults such as Drain Open (DO), Source Open (SO), Gate Open (GO), Drain Source Short (DSS), Gate Source Short (GSS), Gate Drain Short (GDS), Capacitor Short (CS) and Resister Open (RO) were introduced. The training and testing sets were obtained from the Monte Carlo simulation of the faulty and fault free circuit results. All integrated circuits, fault-free or otherwise, are subject to parametric changes due to process variations. Even though the circuits are designed to have some tolerance, some catastrophic faults can vary up to 3. Hence a satisfactory threshold should be selected for fault classification. Since this threshold selection method was insufficient for fault classification [6], statistical method should be selected. Linear discrimination analysis (LDA); a classical statistical method was employed in 1993 for fault classification [6]. Limitations in LDA made Epstein to apply neural networks for fault classification, which gave better result when compared to other statistical methods. In this paper Backpropagation Neural Network has been applied for fault classification in three different CP-PLL designs.

II. Test Structure


The charge pump PLL of Fig 1 is used to evaluate the BPNN method of fault classification.
Figure 1: Block diagram of the Charge pump PLL
Data
UP

PFD
dclock
DOWN

CHARGE PUMP

I PFD

VVinvco

LOOP FILTER

Clock

VCO

1/N

CP-PLL [1] consists of the following blocks. 1) PFD: It generates pulses (UP and DOWN signals) as wide as the phase difference between data and dclock. 2) Charge pump: It converts the logic states of the PFD into analog signals suitable for controlling the VCO.

79 3) 4) 5)

J. Ramesh, P.T. Vanathi, K. Gunavathi, Thirunavukkarasu K.A and Sivasubramanian.M

Loop Filter: It minimizes noise in the signal with the maximum response time. VCO: It generates frequency based on input voltage from loop filter. Divide by N counter: It generates dclock signal based on VCO output frequency which is fed back to PFD. Based on the above design three different CP-PLLs were designed in which only the design of PFD differs.

III. Phase Frequency Detector (PLL1)


PLLs incorporating sequential-logic, PFDs have been widely used in recent years [2]. Reasons for their popularity include extended tracking range, frequency-aided acquisition, and low cost. This type of phase detector is also termed as sequential phase detector. The phase frequency detector, as illustrated in Fig.2, employs sequential logic to create three states to respond to the rising and falling edges of A (connected to data) and B (connected to dclock). The outputs QA and QB are called UP and DOWN, respectively. Both UP and DOWN can be false simultaneously or either one can be true, but both can never be true simultaneously. Therefore, the three states allowed by a PFD are termed as UP, DOWN and N where N denotes NEUTRAL.
Figure 2: PFD using D- flip flop

IV. Phase Frequency Detector (PLL2)


PLL with a conventional PFD involves standard logic cells. In this case, elements U2, U3, U4 and U5 complete the DFF. The four-input NAND generates the reset signal. The rest of the circuitry includes buffers/delay cells (for combating the dead-zone problem) and polarity-inverting buffers. This is an often-used, robust topology, although its speed is limited by the propagation delay in the reset path of the logic gate. F1 must be 10 times faster than F2 in order for this PFD to clamp to the highest control voltage of the VCO. PFD using CMOS logic gates is shown in Fig 3.

Fault Classification in Phase Locked Loops Using Back Propagation Neural Network
Figure 3: PFD with CMOS logic gates

80

V. Phase Frequency Detector (PLL3)


PFD and CP circuit are combined and an inverter is inserted to make sure the correct polarity if the current source is implemented with PMOS. The operation of the circuit can be readily understood by assuming that f1 and f2 are zero at the start. A clock transition at f1 will trigger the upper DFF to a logic high state. The current source then begins to inject current to the loop filter. When the f2 input experiences a clock transition, the DOWN output will be in a logic high state. The NAND gate is the reset circuit that will generate a logic low to reset both D-Flip Flops. The current source is shut off and a pulse corresponding to the phase difference between f1 and f2 is generated. This is for the case where f1 leads f2, but a similar process applies for when f1 lags f2 where a pulse at the DOWN path is generated and NMOS is turned on to sink the current from the loop filter. The combined PFD and CP is shown in Fig 4.
Figure 4: Combined PFD and CP

VI. Charge Pump


The purpose of charge pump is to convert the logic states of the PFD into analog signals suitable for controlling the VCO. CMOS implementation of charge pump circuit with cascode current mirror is shown in Fig 5.The charging and discharging of this circuit operates at a faster rate compared to Push/Pull current source charge pump. This kind of charge pump is used in high speed applications. When UP signal is 0 pMOS transistor conducts and keeps charge pump in charging mode. When DOWN signal is 1 nMOS transistor conducts and keeps charge pump in discharge mode.

81

J. Ramesh, P.T. Vanathi, K. Gunavathi, Thirunavukkarasu K.A and Sivasubramanian.M


Figure 5: Charge Pump

VII. VCO
A VCO operating as a variable length, variable delay, ring oscillator has a current-starved inverter and an anti high-gain circuit for each stage. A broadband operation of this VCO can be obtained by cascading the different stages. The VCO uses a tuning voltage or control voltage, Vc, generated by the charge pump, to speed up or slow down the PLLs output frequency as the PLL attempts to lock. A ring oscillator is chosen due to the ease of design and implementation. Compared to LC oscillators, ring oscillators has large tuning range, small area consumption, but poor phase noise performance. The ring consists of 5 stages of inverters to yield the desired frequency of operation from 15 MHz 500 MHz, which is suitable for generating the clock signal of low to medium performance microcontrollers. The advantages of using a Current-starved VCO are that it has a comparatively simpler design and leads to efficient area usage. As the VCO is starved of current, power efficiency is also improved. The current-starved VCO is shown schematically in Fig. 6.
Figure 6: Implementation of current starved VCO

VIII. Divide by N Counter


The output of the VCO has to be divided before it is fed back to the input of the PLL. A programmable divider is used, which receives a reference clock signal of a predetermined frequency and is structured to divide the said reference clock signal by n and provide an output pulse signal for every n cycles of the reference clock signal. The divide by 2 counters is shown schematically in Fig 7. It produces one pulse at the output for every two cycles.

Fault Classification in Phase Locked Loops Using Back Propagation Neural Network
Figure 7: Divide by 2 counter

82

Table 1 represents the design specification of different designed CP-PLL in terms of transistor count, average power consumption, lock time, dynamic range
Table 1: PLL Design Specification
PLL1 91 45-PMOS,46- NMOS Average Power 2.47mW 0.2us 81.5MHz To 440MHz 95MHz Types of PLL PLL2 113 56 -PMOS,57-NMOS Average Power 6.42mW 0.39us 81.5MHz To 440MHz 163MHz PLL3 79 39-PMOS,40-NMOS Average Power 3.20mW 0.1us 81.5MHz To 440MHz 207MHz

Specification Transistor Count Power Consumption Lock Time Dynamic Range Output Frequency

IX. Fault models


The Fig 8, indicates the various faults models that were introduced for each transistor in the designed three different CP-PLL.
Figure 8: Fault Models

DSS-Drain Source Short GSS-Gate Source Short GDS-Gate Drain Short GO-Gate Open DO-Drain Open SO-Source Open RO-Resister Open CS-Capacitor Short

83

J. Ramesh, P.T. Vanathi, K. Gunavathi, Thirunavukkarasu K.A and Sivasubramanian.M

A low resistance (1) and high resistance (10M) are used to model the faults i.e. short is modeled using the low resistance (1) and the open is modeled using the high resistance (10M). Resistor Open and Capacitor Short Faults does not affect the performance of the CP-PLL, hence those two faults are not considered.

X. Monte Carlo Analysis


Monte Carlo analysis is performed to run the simulation using randomly chosen parameter values. The parameter values for each run are chosen from probability distributions. Monte Carlo analysis generates a summary output of all simulation results after all runs are completed. At each iteration TSpice will report the values of all expressions evaluated using probability distributions. The Monte Carlo analysis has been performed for the threshold voltage, gate oxide thickness and temperature with uniform distribution centered at 0.3694291 and 0.3944719 with relative variations of 5%. In this paper 20 Monte Carlo analysis were performed for each fault. In each iteration, threshold voltage, gate oxide thickness and temperature for nMOS and pMOS were varied based on the defined distribution.

XI. Back Propagation Neural Network


The Backpropagation (BP) method is a technique used in training multilayer neural networks in a supervised manner. The back propagation method, also known as the error back propagation algorithm, is based on the error-correction learning rule. It consists of two passes through the different layers of the network: a forward pass and a backward pass. In the forward pass, an activity pattern is applied to the input nodes of the network, and its effect propagates through the network layer by layer. Finally, a set of outputs is produced as the actual response of the network. The actual response of the network is subtracted from a desired response to produce an error signal. This error signal is then propagated backward through the network. The synaptic weights are adjusted to make the actual response of the network move closer to the desired response in a statistical sense. The weight adjustment is made according to the generalized delta rule to minimize the error. An example of a three layer BPNN with one hidden layer is shown in Fig 9. In this paper three layer BPNN with 20 input neurons, 7 output neurons and variable hidden layer neuron is designed and used for fault classification.
Figrue 9: Backpropagation Neural Network.

Two commonly used neuron activation functions for the neuron in Figure 9 are sigmoidal and pure linear functions. Both functions are continuously differentiable everywhere and typically have the following mathematical forms: Log Sigmoidal: (1) Pure Linear: (2)

Fault Classification in Phase Locked Loops Using Back Propagation Neural Network

84

XII. Types of BPNN Training Algorithms used for Fault Classification


A. Variable Learning Rate BP with Momentum (traingdx) The learning rate parameter determines how fast the BPNN method converges to the minimum solution. The larger the learning rate, the bigger the step and the faster the convergence. However, if the learning rate is made too large the algorithm will become unstable. To speed up the convergence time, the variable learning rate gradient descent BP utilizes larger learning rate when the neural network model is far from the solution and smaller learning rate when the neural net is near the solution. The new weight vector wk+1 is adjusted with a varying k. Typically, the new weight vector wk+1 is defined as: (3) (4) - Momentum factor gk - Gradient B. Conjugate Gradient BP (CGP) The basic BP algorithm adjusts the weights in the steepest descent direction. This is the direction in which the performance function is decreasing most rapidly. In the conjugate gradient algorithms a search is performed along conjugate directions, which produces generally faster convergence than steepest descent directions. In the conjugate gradient algorithms the step size is adjusted at each iteration. There are four types of conjugate gradient algorithms which can be used for training. All of the conjugate gradient algorithms start out by searching in the steepest descent direction (negative of the gradient) on the first iteration. (5) p0- Initial search gradient g0- Initial gradient A line search is then performed to determine the optimal distance to move along the current search direction: (6) xk - Current weight vector xk+1 - Next weight vector - Learning rate k - Current search direction pk Then the next search direction is determined so that it is conjugate to previous search directions. The general procedure for determining the new search direction is to combine the new steepest descent direction with the previous search direction: (7) pk - Current search direction pk-1 - Previous search direction The various versions of conjugate gradient are distinguished by the manner in which the constant k is computed. B.1. Fletcher-Reeves (traincgf) For the Fletcher-Reeves (traincgf) update the procedure is (8) This is the ratio of the norm squared of the current gradient to the norm squared of the previous gradient.

85

J. Ramesh, P.T. Vanathi, K. Gunavathi, Thirunavukkarasu K.A and Sivasubramanian.M

B.2. Polak and Ribiere (traincgp) For Polak and Ribiere (traincgp) the constant k is computed by (9) B.3. Powell and Beale (traincgb) For all conjugate gradient algorithms, the search direction will be periodically reset to the negative of the gradient. One of the reset methods was proposed by Powell and Beale (traincgb). For this technique we will restart if there is very little orthogonality left between the current gradient and the previous gradient. This is tested with the following inequality. (10) If this condition is satisfied, the search direction is reset to the negative of the gradient. B.4. Scaled Conjugate Gradient Algorithm (trainscg) Each of the conjugate gradient algorithms that have been discussed so far requires a line search at each iteration. This line search is computationally expensive, since it requires that the network response to all training inputs be computed several times for each search. The scaled conjugate gradient algorithm (trainscg), developed by Moller was designed to avoid the time-consuming line search. C. One Step Secant BP (trainoss) Since the conjugate gradient algorithm requires more storage and computation in each iteration, there is need for a secant approximation with smaller storage and computation requirements.. This algorithm does not store the complete Hessian matrix; it assumes that at each iteration, the previous Hessian was the identity matrix. This has the additional advantage that the new search direction can be calculated without computing a matrix inverse. D. Resilient Back propagation (trainrp) Multilayer networks typically use sigmoid transfer functions in the hidden layers. These functions are often called "squashing" functions, since they compress an infinite input range into a finite output range. Sigmoid functions are characterized by the fact that their slope must approach zero as the input gets large. This causes a problem when using steepest descent to train a multilayer network with sigmoid functions, since the gradient can have a very small magnitude; and therefore, cause small changes in the weights and biases, even though the weights and biases are far from their optimal values. The purpose of the resilient back propagation (Rprop) training algorithm is to eliminate these harmful effects of the magnitudes of the partial derivatives. Only the sign of the derivative is used to determine the direction of the weight update; the magnitude of the derivative has no effect on the weight update. The size of the weight change is determined by a separate update value. The update value for each weight and bias is increased whenever the derivative of the performance function with respect to that weight has the same sign for two successive iterations. The update value is decreased whenever the derivative with respect that weight changes sign from the previous iteration. If the derivative is zero, then the update value remains the same. Whenever the weights are oscillating the weight change will be reduced. If the weight continues to change in the same direction for several iterations, then the magnitude of the weight change will be increased.

XIII. The Data Set


Six fault models are introduced for each transistor in all three types of PLLs. Total number of transistors present in three types of PLLs are shown in the Table 2. Among these transistors few transistors are considered to be critical transistors. If two CMOS transistors are in series, drain of one

Fault Classification in Phase Locked Loops Using Back Propagation Neural Network

86

transistor is connected to the source of another transistor; hence Drain Open of one transistor is equal to Source Open of the other. Such transistors are called critical transistors. Finally, excluding the critical transistors, PLL output with fault models are considered for constructing the data set.
Table 2:
PLL Type PLL 1 PLL 2 PLL 3

Total Transistors and Faults Introduced.


Total No of Transistors 91 [45 NMOS, 46 PMOS] 113 [56 NMOS, 57 PMOS] 79 [39 NMOS, 40 PMOS] Transistors Considered 78 94 67 No of Faults Introduced 6 x 78 = 468 6 x 94 = 564 6 x 67 = 402

Monte Carlo output for each PLL is grouped as Drain Open, Source Open, Gate Open, Drain Source Short, Drain Gate Short and Gate Source Short. Each set is randomly mixed up to form 2 data sets. As a result we have 6 pairs of data set one for each fault. A pair of fault free data set is constructed. Hence we have 7 pairs of data set including one pair for each fault and one for Fault Free. Fourteen data sets are split into 7 Test Set and 7 Training Set.

XIV. Neural Network Parameters


Backpropagation Neural network [4] is trained using the following algorithm: trainrp, trainscg, traincgb, tarincgf, traincgp, trainoss and traingdx. Performances of these training algorithms are compared by varying the parameters Learning Rate, Number of Neurons in Hidden Layer and Momentum Factor. Ranges of variation of the parameters are shown in the Table.3.
Table 3: BPNN Parameter Variations
Range of Parameter Variation Learning Rate Hidden Layer Neurons Momentum Factor 0.3 to 0.8 10 to 15 Neurons 0.3 to 0.8

When the number of neurons in the hidden layer is reduced below 10, percentage of fault coverage of the neural network tend to reduce. Graphical representation of fault coverage when hidden layer neurons less than 10; is shown in the Fig 10.
Figure 10: Consistency of BPNN based on Hidden Layer Neurons

87

J. Ramesh, P.T. Vanathi, K. Gunavathi, Thirunavukkarasu K.A and Sivasubramanian.M

XV. Fault Coverage using BPNN


Back propagation Neural Network is trained using 7 Training Data Set and then tested using 7 Test Data Set. Fault coverage given by the network by varying the Learning Rate, Number of Hidden Layer Neurons and Momentum Factors for various training algorithm are shown in the Figs11,13,15,17,19,22,24,26,28 and the results of the best performed algorithms are shown in the Figs12,14,16,18,20,21,23,25,27,29.
Figure 11: PLL 1 VTHO Variation

Figure 12: PLL 1 VTHO Variation - trainrp

When the BPNN is trained using PLL 1 (Parametric Variation: Threshold Variation) data set, trainrp provides 98.09% of fault coverage at a Learning Rate of 0.3, Momentum Factor of 0.3, 14 Hidden Layer Neurons and 1200 Epochs for convergence as shown in the Fig 12.

Fault Classification in Phase Locked Loops Using Back Propagation Neural Network
Figure 13: PLL 1 TOX Variation

88

Figure 14: PLL 1 TOX Variation traincgp

When the BPNN is trained using PLL 1 (Parametric Variation: Gate Oxide Thickness) data set, traincgp provides 98.63% of fault coverage at a Learning Rate of 0.4, Momentum Factor of 0.8, 15 Hidden Layer Neurons and 1400 Epochs for convergence as shown in the Fig 14.
Figrue 15: PLL 1 TEMP Variation

89

J. Ramesh, P.T. Vanathi, K. Gunavathi, Thirunavukkarasu K.A and Sivasubramanian.M


Figure 16: PLL 1 TEMP Variation - traingdx

When the BPNN is trained using PLL 1 (Parametric Variation: Temperature) data set, traingdx provides 96.96% of fault coverage at a Learning Rate of 0.5, Momentum Factor of 0.3, 15 Hidden Layer Neurons and 1500 Epochs for convergence as shown in the Fig 16.
Figure 17: PLL 2 VTHO Variation

Figrue 18: PLL 2 VTHO Variation - traincgp

When the BPNN is trained using PLL 2 (Parametric Variation: Threshold Variation) data set, traincgf provides 99.74% of fault coverage at a Learning Rate of 0.7, Momentum Factor of 0.8, 14 Hidden Layer Neurons and 1100 Epochs for convergence as shown in the Fig 18.

Fault Classification in Phase Locked Loops Using Back Propagation Neural Network
Figure 19: PLL 2 TOX Variation

90

When the BPNN is trained using PLL 2 (Parametric Variation: Gate Oxide Thickness) data set, traincgf and trainoss provides 100% of fault coverage at a Learning Rate of 0.5, Momentum Factor of 0.5, 13 Hidden Layer Neurons and 1000 Epochs for convergence and Learning Rate of 0.6, Momentum Factor of 0.4, 14 Hidden Layer Neurons and 1000 Epochs for convergence respectively as shown in the Fig 20 and Fig 21.
Figure 20: PLL 2 TOX Variation traincgf

Figure 21: PLL 2 TOX Variation trainoss

91

J. Ramesh, P.T. Vanathi, K. Gunavathi, Thirunavukkarasu K.A and Sivasubramanian.M


Figure 22: PLL 2 TEMP Variation

Figure 23: PLL 2 TEMP Variation - traincgp

When the BPNN is trained using PLL 2 (Parametric Variation: Temperature) data set, traincgp provides 99.49% of fault coverage at a Learning Rate of 0.8, Momentum Factor of 0.8, 12 Hidden Layer Neurons and 1300 Epochs for convergence as shown in the Fig 23.
Figure 24: PLL 3 VTHO Variation

Fault Classification in Phase Locked Loops Using Back Propagation Neural Network
Figure 25: PLL 3 VTHO Variation - traincgf

92

When the BPNN is trained using PLL 3 (Parametric Variation: Threshold Variation) data set, traincgf provides 98.09% of fault coverage at a Learning Rate of 0.3, Momentum Factor of 0.6, 11 Hidden Layer Neurons and 1100 Epochs for convergence as shown in the Fig 25.
Figure 26: PLL 3 TOX Variation

Figure 27: PLL 3 TOX Variation - traingdx

When the BPNN is trained using PLL 3 (Parametric Variation: Gate Oxide Thickness) data set, traingdx provides 97.33% of fault coverage at a Learning Rate of 0.5, Momentum Factor of 0.4, 15 Hidden Layer Neurons and 1500 Epochs for convergence as shown in the Fig 27.

93

J. Ramesh, P.T. Vanathi, K. Gunavathi, Thirunavukkarasu K.A and Sivasubramanian.M


Figure 28: PLL 3 TEMP Variation

Figure 29: PLL 3 TEMP Variation - traincgp

When the BPNN is trained using PLL 3 (Parametric Variation: Temperature) data set, traincgp provides 97.70% of fault coverage at a Learning Rate of 0.5, Momentum Factor of 0.4, 15 Hidden Layer Neurons and 1200 Epochs for convergence as shown in the Fig 29. Each PLLs with parametric variations have a particular training algorithm for each type, which gives better fault coverage at a specific Learning Rate, Hidden Layer Neurons and Momentum Factor. Specific parametric values and their fault coverage for those best performed training algorithms are listed in the Table 4.
Table 4:
PLL Types PLL 1

Training Algorithm and their Parameters


Best Algorithm trainrp traincgp traingdx traincgp traincgf trainoss traincgp traincgf traingdx traincgp Learning Rate 0.3 0.4 0.5 0.7 0.5 0.6 0.8 0.3 0.5 0.5 Momentum Factor 0.3 0.8 0.3 0.8 0.5 0.4 0.8 0.6 0.4 0.4 Hidden Layer Neurons 14 15 15 14 13 14 12 11 15 15 Epochs for Convergence 1200 1400 1500 1100 1000 1000 1300 1100 1500 1200 Fault Coverage for each Fault (%) Fault Free 100 100 95.85 100 100 100 100 100 96.35 100 DO 97.5 100 94.3 100 100 100 100 95.02 96.83 95.56 SO 96.69 100 97.93 100 100 100 100 96.7 100 100 DSS 96.55 94.64 100 96.67 100 100 100 95 94.71 98.89 GDS 100 100 95 100 100 100 96.43 100 95.6 100 GSS 100 100 100 100 100 100 100 100 100 95.8 GO 95.9 95.83 95.67 100 100 100 100 100 97.83 94.16

Parameter VTOH TOX TEMP VTOH TOX TOX TEMP VTOH TOX TEMP

PLL 2

PLL 3

Over all fault coverage graph implies that fault classification using Backpropagation Neural Network gives better results when compared to [7], which is shown in the Fig 30.

Fault Classification in Phase Locked Loops Using Back Propagation Neural Network
Figure 30: Fault Coverage Comparison

94

Average fault coverage of individual training algorithm for all three types of PLL circuits is shown in the Table 5. From the Table 5, it is clear that training algorithm traincgp provides maximum average fault coverage of 97.45% for three different PLL circuits, which is higher than 97.20% [7].
Table 5:
Types of PLL

Average fault coverage of individual training algorithm


Parameter trainrp 98.09 95.91 94.45 98.21 98.87 98.69 96.07 94.7 92.76 96.42% trainscg 93.99 97.91 95.53 99.5 99.74 98.56 95.45 93.7 90.48 96.10% Training Algorithm traincgb traincgf trincgp 95.04 95.53 94.09 97.72 96.52 98.63 93.34 94.96 95.85 99.5 99.74 99.52 99.43 100 99.43 98.99 98.73 99.49 96.8 98.09 95.72 93.14 92.93 96.64 95.93 93.04 97.7 96.65% 96.62% 97.45% trainoss 94.32 92.45 96.77 99.23 100 99.25 95.77 93.38 82.45 94.85% tringdx 95.73 93.01 97.96 98.5 99.74 97.93 92.88 97.33 93.91 96.33%

VTOH PLL 1 TOX TEMP VTOH PLL 2 TOX TEMP VTOH PLL 3 TOX TEMP Average Fault Coverage for Individual Algorithm

XVI. Conclusion
Fault models are introduced in three types of PLL circuits with parametric variations like Threshold Voltage, Gate Oxide Thickness and Temperature. Their simulated outputs are used for training the BPNN. Various training algorithm are used for training the BPNN by varying the Learning Rate, Hidden Layer Neurons and Momentum Factor. Data localization problem in BPNN has been overcome by randomly picking the Training Set Data. The obtained result shows that training algorithm traincgp gives average fault coverage of 97.45% for all three types of PLL circuits which is higher than 97.20% [7]. Also the result shows that the fault coverage is greatly increased when different training algorithms are considered for each of the PLL designs. For three types of PLLs, training algorithms traincgp, traincgf, traincgf gives 98.64%, 100%, 98.10% of fault coverage respectively, which is also higher than 97.20% [7]. Hence Backpropagation Neural network can be best suited for fault classification in Charge Pump Phase locked Loops.

95

J. Ramesh, P.T. Vanathi, K. Gunavathi, Thirunavukkarasu K.A and Sivasubramanian.M F.M. Gardner, Charge-Pump Phase-Locked Loops, In IEEE Trans. on Communications, 1980, pp. 1849 1858. Goteti, P., G. Devarayanadurg, and M. Soma, DFT for Embedded Charge-Pump PLL Systems Incorporating IEEE 1149.1,lEEECICC, 1997, pp. 210-213. Zheng Rong Yang, Mark Zwolinski, Applying a Robust Heteroscedastic Probabilistic Neural Network to Analog Fault Detection and Classification, IEEE Transactions on computer aided design of integrated circuits and systems, Vol.19. No.1. January 2000. Syed Muhammad Aqil Burney, Tahseen Ahmed Jilani, Cemal Ardil, Levenberg-Marquardt Algorithm for KarachiStock Exchange Share Rates Forecasting, Proceedings of World Academy of Science, Engineering and Technology Volume 3 January 2005. R. Jacob Baker, Harry W.Li, David E. Boyce, CMOS Circuit Design, Layout and simulation, Prentice Hall of India Pvt Ltd, 2nd Ed. B. R. Epstein, M. Czigler, and S. R. Miller, Fault detection and classification in linear integrated circuits: An application of discrimination analysis and hypothesis testing, IEEE Trans. Computer-Aided Design, vol. 12, pp. 102-113, Jan 1993 Chun-Lung Hsu, Yiting Lai, Shu-Wei Wang, Built-In Self-Test for Phase Lock Loops, IEEE Trans. Instrumentation and Measurement, vol. 54, No. 3, June 2005.

References
[1] [2] [3] [4] [5] [6] [7]

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.96-104 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

Extended Genetic Algorithm Based Grid Scheduler (EGAGS)


K. Somasundaram Department of Computer Science and Engineering Arulmigu Kalasalingam College of Engineering, Krishnankoil-626190, Tamilnadu, India E-mail: soms72@yahoo.com S. Radhakrishnan Department of Computer Science and Engineering Arulmigu Kalasalingam College of Engineering, Krishnankoil-626190, Tamilnadu, India E-mail: srk@akce.ac.in Abstract Job scheduling plays an important role in Grid computing. In this research work, we converts job scheduling problem of Grid into an optimization problem, and presents a job scheduling approach based on Genetic Algorithms (GA). We introduce new approach of GA as Extended Genetic Algorithms (EGA) to efficiently allocate jobs to resources in a Grid environment. We use EGA to select an optimal or suboptimal scheduling of the jobs in grid. In preliminary tests, we shows how the solution founded may maximize the total machine throughput considering not only the single job request but all the job requests during the scheduling process. We present an extensive study on the usefulness of EGA for designing efficient Grid schedulers when makespan and flowtime are minimized. To achieve this, we introduce new type of crossover operator called Cut and Paste Crossover (CPX). Our EGA has been developed, to dynamically schedule heterogeneous tasks on to heterogeneous processors to minimize the overall execution time. Keywords: Task scheduling, Extended Genetic Algorithm, Optimal Scheduling, Makespan, Flowtime, Cut and Paste Crossover.

1. Introduction
Grid Computing (GC) is the ultimate framework to meet the growing computational demands in the future. To meet the growing needs of the computational power, geographically distributed resources need to be logically coupled together to make them work as a unified resource. The continuous exponential growth of the Internet and World Wide Web (WWW), ever improving high-bandwidth communications, wide spread availability of powerful computers and low-cost components will further enhance transformation of computational grids to a reality. Computing resources are geographically distributed under different ownerships, each having their own access policy, cost and various constraints. Every resource owners will have a unique way of managing and scheduling resources and the grid schedulers are to ensure that they do not conflict with resource owners policies. In the worstcase situation, the resource owners might charge different prices to different grid users for their resource usage and it might vary from time to time. Traditionally, most of the schedulers followed are system centric approach in resource selection and often completely ignore the user requirements. Our

Extended Genetic Algorithm Based Grid Scheduler (EGAGS)

97

approach is to dynamically generate an optimal schedule so as to complete the tasks in a minimum period of time as well as utilizing the resources in an efficient way Genetic algorithms (GAs) are stochastic search methods that have been successfully applied in many search, optimization, and machine learning problems. Genetic algorithm is an interactive process. In the course of each interactive process, selection operation acts on the current population according to certain regulation. The operations of crossover and mutation are performed for the selected individuals and then a new population is formed. The process repeats until the convergence criterion is satisfied. It is assumed that a potential solution to a problem may be represented as a set of parameters. These parameters (known as genes) are joined together to form a string of values (known as a chromosome). The particular values the gene represents are called its alleles. The position of the gene in the chromosome is its locus. Encoding issues deal with representing a solution in a chromosome and unfortunately, no one technique works best for all problems. A fitness function must be devised for each problem to be solved. Given a particular chromosome, the fitness function returns a single numerical fitness or figure of merit, which will determine the ability of the individual, which that chromosome represents. Reproduction is another critical attribute of GAs where two individuals selected from the population are allowed to produce offspring, which will comprise the next generation. Having selected two parents, their chromosomes are recombined, typically using the mechanisms of crossover and mutation. Traditional view is that crossover is the more important of the two techniques for rapidly exploring a search space. Mutation provides a small amount of random search, and helps ensure that no point in the search space has a zero probability of being examined. If the GA has been correctly implemented, the population will evolve over successive generations so that the fitness of the best and the average individual in each generation increases towards the global optimum. Selection is the conservation of the fittest individuals for the next generation and is based on 3 parts. The first part involves determination of the individuals fitness by the fitness function. The second part involves converting the fitness function into an expected value followed by the last part where the expected value is then converted to a discrete number of offspring. To avoid premature convergence of GAs due to interference from mutation and genetic drift, sharing and crowding may be used to decrease the amount of duplicate schema in the population. Elitism may be incorporated to keep the most superior individuals within the population. The Grid Information Server (GIS) is deciding allocation of a job to a particular resource, binding of user applications (files), hardware resources, initiate computations, adapt to the changes in grid resources and present the grid to the user as a single, unified resource. It finally controls the physical allocation of the tasks and manages the available resources constantly while dynamically updating the grid scheduler whenever there is a change in resource availability. In a grid environment knowing the processing speeds of the available resources and the job length of user applications is a tedious task. Usually it is easy to get information about the speed of the available resources but quite complicated to know the computational processing time requirements from the user. When the computing power demand is much greater than the available resources only dynamic scheduling will be useful. This paper has been organized as follows: Related work is reviewed in Section 2, System Description is given in Section 3, The proposed EGA and the particularization for the problem are given in Section 4, Some simulation experiments are presented in Section 5, Finally we gave conclusion and future works given in Section 6.

2. Related work
Genetic algorithm for task scheduling is developed in [3] and uses new type of encoding scheme. It operates in a batch fashion and utilizes a genetic algorithm to minimize the total execution time. We have compared our scheduler with other schedulers.

98

K. Somasundaram and S. Radhakrishnan

Genetic Algorithms (GAs) based schedulers for efficiently allocating jobs to resources in a Grid system developed in [1]. They present an extensive study on the usefulness of GAs for designing ancient Grid schedulers when makespan and flowtime are minimized. Memetic Algorithm was developed for task scheduling [4]. A task can be partitioned into a group of subtasks and represented as a DAG (Directed Acyclic Graph), so the problem can be stated as finding a schedule for a DAG to be executed in a parallel multiprocessor system so that the schedule can be minimized. This helps to reduce processing time and increase processor utilization. Existing Grid resource management systems are surveyed [6]. They analyzed the current systems based on a classification of development organization, system status, scheduling and rescheduling policies. An optimal scheduling algorithm was developed for task scheduling [8]. They discussed three natures heuristics namely Genetic Algorithm (GA), Simulated Annealing (SA) and Tabu Search (TS). They further demonstrate the hybridized usage of the above algorithms that can be applied in a computational grid environment for job scheduling. Genetic algorithm was used to develop multi processor task scheduling [9, 11]. They propose a new combined approach, where a genetic algorithm is improved with the introduction of some knowledge about the scheduling problem represented by the use of heuristic in the crossover and mutation genetic operations and developed to solve the multiprocessor scheduling problem.

3. System Description
Problem Formation In order to capture the most important characteristics of job scheduling in Grid systems, we considered to use of a simulation model rather than existing models of real Grid systems. To formulate the problem under such simulation model, an estimation of the computational load of each job, the computing capacity of each resource, and an estimation of the prior load of each one of the resources are required. One such model is the Expected Time to Compute (ETC) model. Using the ETC model, the expected running time of jobs on particular resources can be predicted. The scheduling problem consists of: Number of independent (user/application) jobs to be scheduled Number of heterogeneous candidate machines to participate in the planning The workload of each job (in millions of instructions) The computing capacity of each machine (in Million Instructions Per Second or MIPS) The Expected Time to Compute matrix ETC (nb_jobs nb_machines), in which the component ETC[i][j] is the expected execution time of job i in machine j. Thus we make the usual assumption that we know the computing capacity of each resource, an estimation or prediction of the computational needs (workload) of each job, and the load of prior work of each resource. Having the computing capacity of the resources and the workload of the jobs, an Expected Time to Compute matrix ETC can be built, where each position ETC[t][m] indicates the expected time to compute job t in resource m. The entries ETC[t][m] could be computed by dividing the workload of job t by the computing capacity of resource m. ETC[t][m]=(load of job t) / (computing speed of machine m) To formulate, we consider user jobs n= {a,b,c,.} on heterogeneous resources m={A,B,C.,} with an objective of minimizing the completion time and utilizing the resources effectively.

4. The Proposed EGA


The proposed Extended Genetic Algorithm (EGA) involves a master scheduler, which has the processor lists and the task queue. The processors of the grid environment are heterogeneous. The available network resources between processors, availability of each processor in the grid environment

Extended Genetic Algorithm Based Grid Scheduler (EGAGS)

99

can vary over time. Tasks are indivisible, independent of all other tasks, arrive randomly, and can be processed by any processor in the grid. The master scheduler runs a sequential EGA in which the fitness function evaluation is done. The tasks are taken in batches and scheduled. When any processor is idle, the processor asks for a task to perform and the task scheduled for that processor (if any) is given to that processor. All the task data are maintained only in the master scheduler. Pseudo Code for Extended Genetic Algorithm
begin Initialization: Generate the initial population P(t = 0) of 10 individuals Fitness: Evaluate the fitness of each individual of the population. Evaluate (Population(t)) while (not termination condition) do Selection: Select an individual from P(t). Let P1(t) = Select(P(t)). Select an individual from P(t). Let P2(t) = Select(P(t)). Crossover: Let C1(t),C2(t) = Cross(P1(t),P2(t)) be the set of offsprings. Mutation: Let P3(t) = Mutate(P2(t)). Fitness: Evaluate the fitness of new offspring. Create a new generation fwhile return Best found solution; end

Initial Population Initially many individual solutions are randomly generated to form an initial population. The population size depends on the nature of the problem. Traditionally, the population is generated randomly, covering the entire range of possible solutions. Encode the Chromosome Each task in the batch has a unique identification number. The total number of tasks in the batch is N and total number of processors is M. The unique identification task number for all the tasks allocated to a processor is encoded in the chromosome with * being used to delimit the different processor queues. Batch size = Number of task + Number of processor. Chromosome of length= Batch size 1.
a b * c d * e

Sample Chromosome The sample chromosome in above has a batch size of 5 tasks with 3 processors. This chromosome represents the following task allocation.

100
Processor A B C Task a, b c, d e

K. Somasundaram and S. Radhakrishnan

Task allocation table Fitness Calculation A fitness function computes a single positive integer to represent how good the schedule is. We use relative error to generate the fitness values. The fitness of each individual in the population is calculated with the help of makespan & flowtime. Fitness value can be calculated as: Fitness= *makespan+(1)*mean flowtime Where is a minimizing factor. we set =0.75. Completion time of a job is summation of waiting time of particular job and ETC value of that job at particular machine. C[i] = W[i] + ETC[i] [m]. Where i- jobid m- machineid C[i] = Completion time of job i W[i] = Waiting time of job i Makespan =max{completion time of all job } The simplest rule to minimize makespan is to schedule the Longest Job on the Fastest Resource (LJFR). Flow time = completion time Mean flowtime= Flowtime / Number of jobs 4.1Genetic Operations 4.1.1 Selection During each successive generation, a proportion of the existing population is selected to breed a new generation. Individual solutions are selected through a fitness-based process, are typically more likely to be selected. Certain selection methods rate the fitness of each solution and preferentially select the best solutions. Other methods rate only a random sample of the population, as this process may be very time-consuming. Most functions are designed so that a small proportion of less fit solutions are selected. This helps keep the diversity of the population large, preventing premature convergence on poor solutions. Popular and well-studied selection methods include roulette wheel selection, random selection and tournament selection. In our simulation, we used random selection to select an individual from population table. 4.1.2 Crossover The crossover operators are the most important ingredient of any evolutionary-like algorithm. Indeed, by selecting individuals from the parental generation and interchanging their genes, new individuals (descendants) are obtained. The aim is to obtain descendants of better quality that will feed the next generation and enable the search to explore new regions of solution space not explored yet. There exist many types of crossover operators explored in the evolutionary computing literature, which depends on the chromosome representation. We always maintain the chromosome length in all generation as same. There are so many crossover operators available in GA. We introduced new crossover type called Cut and Paste Crossover (CPX) which increases the overall throughput and minimizes the execution time. We compared our CPX with other crossover types like One- point Swap crossover (OSX), Two-point crossover (TX), Diagonal crossover (DX) and Cycle crossover (CX).

Extended Genetic Algorithm Based Grid Scheduler (EGAGS)

101

Cut and Paste Crossover (CPX) We separate the each chromosome into two part (cutting point) and interchange second part of each chromosome with other. After that, to maintain the chromosome length, apply the childrens to rebalancing. The cutting point based on First delimit * of each chromosome. Parents:
Parent1 Parent2 A B b * * a c d d * * e e c

After crossover
Child1 Child2 a b b * * c A D d * * e e null c

Child 1 -- Length missing, duplication of job a Child 2-- Length missing, missing of job a After Rebalancing
Child 1 Child 2 a b b * * c d d * * e e c a

One-point swap crossover (OSX) Given two parent solutions, this operator, first chooses randomly a position between 1 and no. of jobs. The resulting position of each parent chromosome, genes are swapped and form the new two chromosome. Two-point crossover (TX) This operator, choose two cutting points are randomly chosen splitting thus each parent into three segments; the middle parts are interchanged yielding two new descendants. It should be noted that despite having two cutting points, this operator still shows a positional bias. Notice that it is also possible to define the generalized kpoint crossover, for k 3; for such values this operator tends to explore more thoroughly the solution space, however, it is very likely that it will destroy the structure of the parents. Diagonal crossover (DX) Given two parent solutions, this operator, first split into three parts in each. Then, third part of parent 2 is swapped with first part of parent 1. Similarly third part of parent 1 is swapped with first part of parent 2. Cycle Crossover (CX) The basic idea of this operator is that each job must occupy the same position, so that only interchanges between alleles (positions) will be made. The algorithm works in two steps. First, a cycle of alleles is identified. A cycle of alleles is constructed in the following way: beginning by the first position (allele) of schedule1, we look at the same allele, say a, in schedule2. Then, we go to the allele of schedule1 that contains the gene contained in allele a; the allele is added to the cycle. This step is iteratively repeated until the first allele of schedule1 is reached. The second step, consists of leaving the alleles that form the cycle intact, and the content of the rest is interchanged. 4.1.3 Mutation We defined several mutation operators based on the Chromosome representation of the schedule that taken into account the specific need of load balancing of resources. More precisely, we defined the following operators: Move, Swap, and Move &Swap.

102

K. Somasundaram and S. Radhakrishnan

Move This operator moves a job from a resource to another one, so that the new machine is assigned to be different Node, that it is possible to reach any solution by applying successive moves from any given solution. Before mutation (move)
Child1 a b * c d * e

After Mutation the job a is move to last processor


Child1 b * c d * e a

Swap Considering movements of jobs between machines is effective, but often it turns out more useful to make interchanges of the allocations of two jobs. Clearly, this operator should be applied to two jobs assigned to different machines. Before mutation (Swap)
Child1 a b * c d * e

After Mutation the job a & e is swapped


Child1 e b * c d * a

Move & Swap The mutation by swap hides a problem: the number of jobs assigned to any resource remains inalterable by mutation. A combined operator avoids this problem in the following way: with a probability p, a mutation move is applied; otherwise a mutation swap is applied. The value of p will depend on the difference of behavior of the mutation operators swap and move.

5. Experimental Results
We construct a simulation and evaluation environment to evaluate our EGA based Dynamic Scheduling Algorithm for a heterogeneous environment. We implemented and simulated our algorithm using C language. EGA generation: Fig1. shows the evaluation of our EGA generation, x-axis denoted as number of generation and y-axis denoted as Flow time. From our graph, we get same value of flow time after the 15th generation.
Figure 1: EGA generation
Efficient Genetic Algorithm Generation
200 EGA 160 120 80 40 0 1st 4th 8th 12th 16th 20th Generation

F low tim e

Extended Genetic Algorithm Based Grid Scheduler (EGAGS)

103

Crossover Operators A number of crossover operators were also considered and tuned to find the one of the best behavior; the values for the parameters given in following table
No of evaluation step Population Size Selection Mutation Replace generation Replace only if better Initializing method 100 10 Random Swap True False FCFS SJF - List

The performance study of our EGA is shown in Fig2 and Fig3. Fig2 shows the comparison study of Crossover operator and Fig3 shows the comparison study of EGA with different scheduling algorithms.
Figure 2: Comparison of Crossover operators
Crossover Operators
80 70 60 F i tn e s s 50 40 30 20 10 0 5 10 15 20 25 30 Batch Size CPX CX TX DX OSX

In Fig2. The Operator Cut and Paste (CPX) achieves the best fitness reduction, and with a large difference, among all other crossover operators. Comparison: We compare our Extended Genetic algorithm with FCFS, SJF, Round Robin (RR) algorithm, and evaluate the results using two different metrics, namely, flow time and batch size. From Fig3. graph comparison, we can conclude that our Extended Genetic Algorithm is best and gives better performance than other scheduler.
Figrue 3: Comparison of scheduling algorithms
Comparision
450 400 350 300 250 200 150 100 50 0 5 10 15 Batch Size 20 25

F lo w tim e

EGA FCFS SJF RR

104

K. Somasundaram and S. Radhakrishnan

6. Conclusion and Future Work


An Extended scheduling algorithm has been developed to schedule in heterogeneous tasks on heterogeneous processors of grid environment. It provides near-optimal schedules and adapts to varying processing resources. The algorithm uses a dedicated master scheduler for centralized scheduling. Extended Genetic Algorithms are powerful but usually suffer from longer scheduling time which is reduced in our algorithm due to the fitness evaluation. The proposed algorithm uses a straightforward encoding scheme and generates a randomized initial population. The fitness function uses the makespan & flowtime, and balance load between the processors. Our future work is targeted on dynamic scheduling and fault management.

7. References
[1] [2] Abraham, A., R. Buyya and B. Nath. Genetic Algorithm based Schedulers for Grid Computing System, International Journal of ICICI, 2007 Abraham, A. H. Liu, W. Zhang and T. G. Chang, Job scheduling on computational grids using fuzzy particle swarm algorithm, Proc. of the 10th International Conference on KnowledgeBased and Intelligent Information and Engineering Systems, B. Gabrys et al. (eds.): Part II, Lecture Notes on Artificial Intelligence 4252, 500507, Springer, 2006. Andrew J. Page et al Dynamic task scheduling using genetic algorithms for heterogeneous distributed computing, 19th IEEE IPDPS 2005. Prof. Sanjay r sutar, jyoti p. Sawant et al Task Scheduling for Multiprocessor Systems Using Memetic Algorithms.2005 Gao, Y., H. Rong and J. Z. Huang, Adaptive grid job scheduling with genetic algorithms, Future Generation Computer Systems, vol.21, no.1, pp.151-161, 2005. K. Krauter, R. Buyya, M. Maheswaran,Ataxonomy and survey of Grid resource management systems for distributed computing, Software Pract. Exp. 2 (2002) 135164 H. J. Braun, T. D. Siegel, N. Beck, L. L. Blni,M.Maheswaran, A. I. Reuther, J. P. Robertson,M. D. Theys and B. Yao, A comparison of eleven static heuristics for mapping a class of independent tasks onto heterogeneous distributed computing systems, Journal of Parallel and Distributed Computing, vol.61 no.6, pp.810-837, 2001 Abraham, A., R. Buyya and B. Nath., Natures heuristics for scheduling jobs on computational grids, Proc. of the 8th IEEE International Conference on Advanced Computing and Communications, India, 2000. Ricardo C. Corre et al. Scheduling Multiprocessor Tasks with Genetic Algorithms, IEEE Transactions On Parallel And Distributed Systems, Vol. 10, No. 8, August 1999 T. Gruninger, Multimodal Optimization Using Genetic Algorithms, Masters Thesis, Stuttgart University, 1996. Edwin S. H. Hou,, A Genetic Algorithm for Multiprocessor Scheduling, IEEE Transactions On Parallel And Distributed Systems. Vol. 5, No. 2, February 1994.

[3] [4] [5] [6] [7]

[8] [9] [10] [11]

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.105-112 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

Software Quality Assessment Based on Fuzzy Logic Technique


Harish Mittal Department of Computer Science and Engineering Vaish College of Engineering, Rohtak-124201(INDIA) E-mail: harish.mittal@vcenggrtk.com Pradeep Bhatia Department of Computer Science Guru Jambheshwar University of Science & Technology, Hisar-125001(INDIA) E-mail: pk_bhatia2002@yahoo.com Puneet Goswami Department of Computer Science Dronacharya College of Engineering,khentawas, Gurgaon (INDIA) E-mail: puneetmtech@yahoo.com Abstract The software quality assessment is a major issue these days. There are various metrics for quality assessments. Inspection rate and error density are most important inspection metrics for industrial applications. This paper proposes a fuzzy logic based precise approach to quantify quality of software modules on the basis of inspection rate and error density. We have used triangular fuzzy numbers to represent inspection rate and error density of the software. Software modules are given quality grades using fuzzy logic. Fuzzy logic offers significant advantages over other approaches due to its ability to naturally represent qualitative aspect of inspection data and apply flexible inference rules based on fuzziness. We have evaluated our model on the basis of published inspection data. Keywords: Inspection rate; Error density; Quality grades; Fuzzy logic; Triangular Fuzzy Numbers; Fuzziness

1. Introduction
Out of the various important metrics for quality prediction of software, Inspection metrics, inspection rate and error density are the most important metrics for industrial applications. The paper is divided into sections. Section 2, introduces related terms. In Section 3 the technique of quantification of quality on the basis of the above said two most important metrics. Section 4 gives evaluation of the model on the basis of already published results [21]. Section 5 concludes the paper and describes promising topics worthy of further research. Ebenau [9] was the first who employed inspection metrics to identify modules that are likely to be error prone. Software inspection [14] is considered as an essential practice to develop high quality software. If it is possible to identify potentially error prone modules with relatively high degree of accuracy at little or no extra cost by analyzing the present inspection data, project managers can use such findings to optimize software development productivity. They may test potentially erroneous modules more extensively than others. Past researchers focused their attention on empirically

Software Quality Assessment Based on Fuzzy Logic Technique

106

validating cost effectiveness of inspection methods [7, 20]. Barnard and Price [1] identified 9 key metrics used in planning, monitoring, controlling and improving inspection processes. Sun Sup So [21] proposed in his paper a fuzzy logic based approach to predict error prone modules.

2. Related Terms
2.1. Fuzzy Number A fuzzy number is a quantity whose value is imprecise, rather than exact as in the case of ordinary single valued numbers. Any fuzzy number can be thought of as a function, called membership function, whose domain is specified, usually the set of real numbers (R), and whose range is the span of positive numbers in the closed interval [0,1]. Each numerical value of the domain is assigned a specific value and 0 represents the smallest possible value of the membership function, while the largest possible value is 1.
Figure 1: Triangular Fuzzy Number

In many respects fuzzy numbers depict the physical world more realistically than single valued numbers. Suppose that we are driving along a highway where the speed limit is 80km/hr, we try to hold the speed at exactly 80km/hr, but our car lacks cruise control, so the speed varies from moment to moment. If we note the instantaneous speed over a period of several minutes and then plot the result in rectangular coordinates, we may get a curve that looks like one of the curves shown below. However there is no restriction on the shape of the curve. The curve in figure 2 is a triangular fuzzy number, the curve in figure 3 is a trapezoidal fuzzy number, and the curve in figure 4 is bell shaped fuzzy number.
Figure 2: Triangular Fuzzy Number

107

Harish Mittal, Pradeep Bhatia and Puneet Goswami


Figure 3: Trapezoidal Fuzzy Number

Figure 4: Bell shaped Fuzzy Number

2.2. Fuzzy Logic Fuzzy logic is a methodology, to solve problems which are too complex to be understood quantitatively, based on fuzzy set theory [10,23], and introduced in 1965 by Prof. Zadeh in the paper Fuzzy Sets [4, 5]. Use of fuzzy sets in logical expression is known as fuzzy logic. A fuzzy set is characterized by a membership function, which associates with each point in the fuzzy set a real number in the interval [0,1], called degree or grade of membership. The membership function may be triangular, trapezoidal, parabolic etc. Fuzzy numbers are special convex and normal fuzzy sets, usually with single modal value, representing uncertain quantitative information. A triangular fuzzy number (TFN) is described by a triplet (, m, ), where m is the modal value, and are the right and left boundary respectively. 2.3. Fuzziness Fuzziness of a TFN (, m, ) is defined as: Fuzziness of TFN (F) = The higher the value of fuzziness, the more fuzzy is TFN 2.4. Membership function The membership function ( (x)) for TFN is defined as: (1)

(2)

Software Quality Assessment Based on Fuzzy Logic Technique


Figure 5: representation of TFN (,m, )

108

(x)

3. Proposed Model
In order to develop software quality assessment model, one must first identify factors that strongly influence software quality and the number of residual errors. Unfortunately, it is extremely difficult, to accurately identify relevant quality factors. Furthermore, the degree of influence is imprecise in nature. That is, although exact and discrete metric data are used, inference rules used may be fuzzy in nature. Suppose, for example, that an inspection team reported an inspection rate of over 380 LoC/h whereas typical inspection rate ranges from 150 to 200 LoC/h [22]. One can convincingly argue that such inspection rate significantly exceeds the reported average from industrial applications, and experts will most likely agree unanimously with the conclusion. However, such assessment is fuzzy because the term significantly cannot be precisely quantified. Moreover, if a team reports inspection rate of 275 LoC/h, experts are likely to differ in their opinions as to whether or not the inspection rate exceeded the industrial norm and by how much it exceeded. In other words, decision boundary is not well defined. Due to its natural ability to model imprecise and fuzzy aspect of data and rules, fuzzy logic is an attractive alternative in situations where approximate reasoning is called for. A prototype system can also be developed based solely on domain knowledge without relying on extensive training data. Furthermore, performance of the system can be gradually tuned as more data become available. A fuzzy logic-based prediction model is proposed as follows: Let I= Inspection rate. E=Error density. Complexity and Co-efficient matrix for Inspection Rate and Error Density are given as:
Table 1: Complexity and Co-efficient matrix of I
I 0-99 100-250 251 or more Complexity Low Medium High Co-efficient (Ri) 2 10 2

Table 2:

Complexity and Co-efficient matrix of E


E E< 25 25 E 35 E > 35 Complexity Low Medium High Co-efficient (Re) 5 10 20

Quality grades are defined as in Table 3, Higher the quality grade, higher the quality.

109
Table 3: Definition of quality grades
Marks(x) 0 x <.5 0.5 x < 1 1x<2 2x<3 3x<4 4x<5 5x<6 6x<7 7x<8 x8

Harish Mittal, Pradeep Bhatia and Puneet Goswami

Grade 1 2 3 4 5 6 7 8 9 10

Where, Marks of a module are defined as:

(3) Fuzzification: The complexity attributes low, medium and high of the two metrics inspection rate and error density are taken as triangular fuzzy numbers, for I 100 and 0 E 35. Ri for I<100 is obtained directly from the complexity table no.1, while Ri for I 100 is obtained by the process of fuzzification and defuzzification. Re for E>35 is obtained directly from the complexity table no.2, while Re for 0 E 35 is obtained by the process of fuzzification and defuzzification. The pictorial representation is given in Figures 6 and 7.
Figure 6: Fuzzy Pictorial representation of I.
(x)

0 Low

100

175 Medium

250 I=x High

Figure 7: Fuzzy Pictorial representation of E.


(x)

12.5 Low

25

30 Medium

35

E=x =k1

High

Defuzzification: We define: R i = *10 + (1 ) * 2 , 100 I 175 (4)

Software Quality Assessment Based on Fuzzy Logic Technique


, 0 E 12.5 * 5 * 5 + (1 ) *10 , 12.5 E 25 Re = *10 + (1 ) * 5 , 25 I 30 *10 + (1 ) * 20 , 30 I 3 5

110

(5)

4. Experimental Study
In order to measure the performance of our system, we have used the data given in table 4, taken from [21].
Table 4: Particulars of 25 software modules under study
Inspection meetinga 1 1 R 1 1 1 1 1 1 1 1 1 1 R 1 1 1 1 1 1 1 1 1 1 1 Inspection hours 1.25 2 1.5 2 2.25 2.25 1.5 0.5 2 0.75 1 2.5 1 1 1.5 1 2.5 3 0.5 1.8 0.5 2 0.3 1 0.8 Code lines 280 280 280 414 520 1200 240 80 440 85 81 330 250 440 350 240 570 400 80 200 36 370 40 120 140 Inspection rate (lines/h) 224 140 187 207 231 533 160 160 220 113 81 132 250 440 233 240 228 133 160 111 75 185 133 120 175 Defects 3 4 2 14 10 4 1 0 10 2 1 8 1 3 0 4 2 4 0 8 2 5 2 3 5 Errors per KLoC 10.7 14.3 7.1 33.8 19.2 3.3 4.2 0.0 22.7 23.5 12.3 24.2 4.0 6.8 0.0 16.7 3.5 10.0 0.0 40.0 55.6 13.5 50.0 25.0 35.7

PBX200 inspection records Module Component no name 1 DISP Function 2 Trans Type 1 3 Trans Type 1 4 Prog Keys 5 Status Disp 6 Trans Type 2 7 OPS 8 LCD-Service 9 Status Bus 10 LCD-Team 11 OPS 12 Status DMA 13 LCD-User 14 Status Bus 15 Wait Display 16 Active Display 17 Status Disk 18 Trans Type 4 19 Audible Alert 20 Chan Handler 21 Dial_0 and LDN 22 Directed Recal 23 DMA Handler 24 Aler/CON 25 Do Not Distub
a

1 and R stand for initial inspection and replicated inspection respectively.

Quality grades of various modules given in table 5 and their pictorial representation is in Figure 8

111
Table 5:
M. No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

Harish Mittal, Pradeep Bhatia and Puneet Goswami


Quality grades of various modules
Size in KLoC 0.280 0.280 0.280 0.414 0.520 1.200 0.240 0.080 0.440 0.085 0.081 0.330 0.250 0.440 0.350 0.240 0.570 0.400 0.080 0.200 0.036 0.370 0.040 0.120 0.140 I 224 140 187 207 231 533 160 160 220 113 81 132 250 440 233 240 228 133 160 111 72 185 133 120 175 Error Density 10.7 14.3 7.1 33.8 19.2 3.3 4.2 0 22.7 23.5 12.3 24.2 4 6.8 0 16.7 3.5 10 0 40 55.6 13.5 50 25 35.7 Quality Grade 3 3 5 1 2 3 5 10 2 1 1 5 1 2 10 1 5 3 10 1 1 3 1 1 1

Comparison of results: As per our model module numbers 4, 10, 11, 13, 16, 20, 21, 23, 24 and 25 having grade 1 are most error-prone. Pictorial representation of quality grades are given in Figure 8. As per results of [21], modules 4, 20, and 25 are classified as error prone. Module 23 is excluded being of very small size (40 LOC). The evaluation of quality grades is comparatively simpler than evaluation of error proneness used by [21].
Figure 8: Quality grades of 25 modules under study.
11 10 9 8 7 6 5 4 3 2 1

Quality Grade

0
1 2 3 4 5 6 7 8 9 10 11 12 13 1415 16 17 18 19 20 21 22 23 24 25 26

M.No.

5. Conclusion and Future Research


The proposed study proposes a fuzzy logic based precise approach to quantify quality of software. Software can be given quality grades on the basis of two metrics inspection rate/hr and error density.

Software Quality Assessment Based on Fuzzy Logic Technique

112

The prediction of quality of software is very easy by this approach. Precise quality grades can be given to any software. Software are graded on the quality grade basis in 10 grades. Modules having grade 1 are supposed to be most error prone, while those having quality grade 10 are considered satisfactory on the basis of quality. Triangular Fuzzy numbers have been used for inspection rate and error/kLOC. The methodology of fuzzy logic used for, in the proposed study, is sufficiently general and can be applied to other areas of quantitative software engineering [10, 23].

References
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] J. Barnard, A. Price, Managing code inspection information, IEEE Software 11 (1994) 5969. Bailey, J.W. and Basili, A Meta model for software development resource expenditure. Proc. Intl. Conf. Software Engineering, pp: 107-115, 1981. Boehm, B., Software Engineering Economics, Englewood Cliffs, NJ. Prentice-Hall, (1981). L.A. Zadeh, From Computing with numbers to computing with words-from manipulation of measurements to manipulation of perceptions, Int. J. Appl. Math.Comut.Sci., Vol.12, No.3,307-324., 2002. L.A. Zadeh, Fuzzy Sets, Information and Control, 8, 338-353, 1965. Roger S. Pressman, Software Engineering; A Practitioner Approach, Mc Graw-Hill International Edition, Sixth Edition (2005). E.P. Doolan, Experience with Fagans inspection method, Software Practice Experience 22 (1992) 173182. Emilia Mendes, Nile Mosley, Web Cost Estimation: An Introduction, Web engineering: principles and techniques, Ch 8, 2005. R.G. Ebenau, Predictive quality control with software inspection, in software inspection: an industry best practice, IEEE Computer Society Press, Silver Spring, MD, 1996, pp. 147156. Harish Mittal, Pradeep Bhatia, Optimization Criterion for Effort Estimation using Fuzzy Technique. CLEI EJ, Vol. 10 Num. 1 Pap. 2, 2007. Muslek, P., Pedrycz, W., Succi, G., & Reformat, M., Software Cost Estimation with Fuzzy Models. ACM SIGAPP Applied Computing Review, 8(2), 24-29, 2000. A. J. Albrecht, Measuring application development productivity, SHARE/GUIDE IBM Application development Symposium. V. R. Basili, K. Freburger, Programming Measurement and Estimation in the Software Engineering Laboratory, Journal of System and Software, 2, 47-57, 1981. M.E. Fagan, Design and code inspections to reduce errors in program develo1pment, IBM Systems J. 15 (1976) 182211. B. W. Boehm et al., Software Cost Estimation with COCOMO II, Prentice Hall, (2000). Lima O.S.J., Farias, P.P.M. Farias and Belchor, A.D., A Fuzzy Model for Function Point Analysis to Development and Enhancement Project Assessments, CLEI EJ 5 (2), 2002. Jones, C., 1996, Programming Languages Table, Release 8.2, March 1996 Chuk Yau, Raymond H.L. Tsoi, Assessing the Fuzziness of General System Characteristics in Estimating Software Size, IEEE, 189-193, 1994. Putnam, 1, and W.Myers, Measures of Excellence Yourdon Press G.W. Russell, Experience with inspection in ultra large-scale developments, IEEE Software 8 (1991) 2531. Sun Sup So, Sun Deok Cha, Yong Rae Kwon, Empirical evaluation of a fuzzy logic-based software quality prediction model, Elsevier, Fuzzy Sets and Systems 127, 199208, 2002 D.A. Wheeler, B. Brykczynski, R.N. Messon Jr., Software Inspection: An Industry Best Practice, IEEE Computer Society Press, Silver Spring, MD, 1996. Harish Mittal, Pradeep Bhatia, A comparative study of conventional effort estimation and fuzzy effort estimation based on Triangular Fuzzy Numbers, International Journal of Computer Science & Security, Vol. 1, Issue 4, 2007

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.113-127 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

A Comparison of Neural Network, Arima Model and Multiple Regression Analysis in Modeling Rice Yields
Ruhaidah Samsudin Department of Software Engineering, Faculty of Computer Science and Information System University Technology of Malaysia E-mail: ruhaidah@utm.my Tel: +607-5532228; Fax: +607-5565044 Puteh Saad Department of Software Engineering, Faculty of Computer Science and Information System University Technology of Malaysia E-mail: puteh@utm.my Tel: +607-5532228; Fax: +607-5565044 Ani Shabri Department of Mathematic, Faculty of Science University Technology of Malaysia E-mail: ani@utm.my Tel: +607-5532228; Fax: +607-5565044 Abstract Prediction of crops yield like wheat, corn and rice has always been an interesting research area to agro meteorologist and it has become an important economic concern. Several prediction techniques that include multiple linear regression (MLR), autoregressive integrated moving average (ARIMA) and artificial neural network (ANN), have been previously studied in the time series forecasting. The paper presents a new approach that uses a hybrid model combining a multiple linear regression, a linear ARIMA time series and a nonlinear ANN to forecast the rice yields in Malaysia. The data that were collected from Muda Agricultural Development Authority (MADA), Kedah, Malaysia ranging from 1995 to 2001 are used to build the models. This study compares the modeling of the three alternative approaches and their performances in modeling a set of rice yields data. Experimental results showed that the new approach outperforms other models in forecasting rice yield. Keywords: Artificial Neural Network (ANN); ARIMA model; Multiple Linear Regression (MLR) analysis; hybrid model; rice yields.

1. Introduction
Precision farming is a new method of crop management by which areas of land or crop within a field may be managed by different levels of input depending upon the yield potential of the crop in that particular area of land. Precision farming is an integrated agricultural management system

A Comparison of Neural Network, Arima Model and Multiple Regression Analysis in Modeling Rice Yields

114

incorporating several technologies such as global positioning system, geographical information systems, yield monitor and variable rate technology (Rains & Thomas 2002). Precision farming has the potential to reduce costs through more efficient and effective applications of crop inputs and it can also reduce environmental impacts by allowing farmers to apply inputs only where they are needed at the appropriate rate (Winder & Goddard 2001). Meanwhile, prediction can be considered as one of the oldest crop management activities (Safa et al. 2002). Prediction of crops yield like wheat, corn and rice has always been an interesting research area to agro meteorologist and it has become an important economic concern. Rice is the worlds most important food crop and a primary source of food for more than half of the worlds population (Khush, 2004). Almost 90% of rice is produced and consumed in Asia, and 96% in developing countries. In Malaysia, The Third Agriculture Policy (1998-2010) was established to meet at least 70% of Malaysias demand a 5% increase over the targeted 65%. The remaining 30% comes from imported rice mainly from Thailand, Vietnam and China (Loh, 2004). Raising level of national rice selfsufficiency has become a strategic issue in the agricultural ministry of Malaysia. The numerous problem associated with rise farming include monitoring the status of nutrient soil, maintaining irrigation infrastructures, obtaining quality seedlings, controlling pests, weeds and diseases, and many other problems that need to be addressed in order to increase productivity (MARDI, 2002). All these problems can be overcome with a good prediction system which can foresee rice yield in the near future. The ability to predict the future enables the farm managers to take the most appropriate decision in anticipation of that future. Several prediction techniques, which mainly include multiple linear regression (MLR), autoregressive integrated moving average (ARIMA) and artificial neural network (ANN), have been previously studied in the time series forecasting. These prediction methods have their own specialties. MLR is simple to understand and easy to be accepted by average engineers. However, it may be a little rough because non-linear relationships always exist in actual situations. MLR is usually used to predict the development trend of happenings. MLR is a very powerful statistical tool that can be used both as an analytical and predictive technique in examining the contribution of potential new items to the overall estimate reliability (Skitmore & Patchell, 1990). Although it is not appropriate when describing non-linear relationships, which are multidimensional, consisting of a multiple input and output problem (Tam & Fang, 1999). One of the most important and widely used time series models is ARIMA model. The popularity of the ARIMA model is due to its statistical properties as well as the well-known BoxJenkins methodology in the model building process. For its rapid forecasting speed, ARIMA is usually applied in the short-term prediction (Zhang, 2003). ANN are widely accepted as a technology offering an alternative way to tackle complex problems in actual situations. Much reported literature about ANN applications in the prediction time series that this technique is one of the most successful in forecasting areas. The advantages of ANN with respect to other models is their ability of modeling a multivariable problem given by the complex relationships between the variables by means of learning with training data. A number of research has been done to compare the performances of ANN models and traditional statistical models. For example, Chang & Su (1995) compared measurement error models for computer vision inspection systems based on the statistical regression method and an ANN method. Their experimental results had shown that the statistical regression method perform excellent tasks when the functions for models were carefully selected through statistical testing procedures. Desai et al. (1996) explored the ability of ANN and traditional techniques such as linear discriminant analysis and logistic regression, in building credit scoring models in the credit union environment and compared their performances with customized credit scoring models. Shtub and Versano (1999) described a cost estimating system based on a neural network. Their study revealed that the proposed system outperformed traditional linear regression analysis models used for cost estimation. Ainscough

115

Ruhaidah Samsudin, Puteh Saad and Ani Shabri

and Aronson (1999) examined ANN as an alternative to traditional statistical methods for the analysis of scanner data. The results of their study showed that ANN could be an effective alternative to regression for modelling and predicting the effects of retailer activity on brand sales. Prybutok et al. (2000) developed an ANN for forecasting daily maximum ozone levels and compared it with two conventional statistical models, regression and ARIMA. The results showed that the ANN model was superior to the regression and ARIMA models. Alon et al. (2001) compared ANNs and traditional methods including Winters exponential smoothing, ARIMA model, and MLR for forecasting aggregate retail sales. Their results indicated that on average ANN fared favourably in relation to the more traditional statistical methods, followed by the ARIMA model. Kim et.al. (2004) examined the performance of three cost estimation models based on MLR, ANN and case-based reasoning (CBR) of the data of 530 historical costs and found that the best ANN model gave more accurate estimation results than either the MRL or the CBR models. Yim and Mitchell (2005) looked at the ability of hybrid ANN models in predicting country risk rating. The hybrid ANN models were compared with traditional statistical techniques such as discriminant analysis, logit model, probit model and ordinary neural networks. Their results indicated that hybrid neural networks outperformed all the other models. Cao et.al. (2005) utilized ANN to predict stock price movement and compared the predictive power of linear models from financial forecasting literature to that of the univariate and multivariate neural network models. Their results showed that ANN outperformed the linear models compared. The above literature review clearly shows that ANN outperforms MLR or ARIMA in most situations. The purpose of this paper is to present a further comparison of ARIMA, ANN and MLR. We proposed the new approach that uses a hybrid model combining a linear ARIMA time series as the new predicate value in develop a nonlinear ANN. We compare their advantages and disadvantages as well as their differences of performance in modeling a set of rice yields data. The comparison made in this study can provide a reference for the choice of the three alternative approaches and their applications.

2. Methodology
Hybrid Model Development The hybrid model is developed in stages and involved a ARIMA model time series, multiple regression, and neural network. The best model for each stages is identified and then these models ware integrated into a hybrid model. 2.1. ARIMA model The BoxJenkins (Box & Jenkins, 1976) method was developed by G.E.P. Box and G.M. Jenkins is one of the popular linear models in time series forecasting almost three decades ago. Their approach for building a time series model is a method of finding, for a model (ARIMA) that adequately represents a given set of data. Development of an ARIMA model consisted of three stages: identification, estimation and diagnostic checking. In the identification stage, when the observed time series presented trend and seasonality, differencing and data transformation is often applied to data to remove the trend and stabilize the variance to make the time series is stationary. The autocorrelation function (ACF) and partial autocorrelation function (PACF) of the stationary series were used to obtain information about the seasonal and nonseasonal model operators for the monthly series. Once a tentative model is identified by analyzing both the ACF and PACF, the parameters of the model are estimated. The least-squares method was used to determine the parameters of the model. The last stage of model building is the diagnostic checking of model adequacy. The LjungBox statistic was used to investigate model adequacy, i.e., to ascertain that the residuals are white noise (zero mean, constant variance, uncorrelated process and normally distributed). If the model is not adequate, a new tentative model should be identified, which is again followed by the steps of parameter estimation and model verification. The model that gives the least mean squared error (MSE) iss chosen for forecasting. The

A Comparison of Neural Network, Arima Model and Multiple Regression Analysis in Modeling Rice Yields

116

forecasting model was then used to compute the fitted values and forecasts (Bowerman & OConnell, 1979). 2.2. Multiple regression Model The next stage of the hybrid model development involved an investigation of multiple regression analysis. Statistical regression is a model for analyzing and modeling of dependent variables as a function of one or more independent variables. The regression techniques were considered herein: multiple regression and stepwise regression. The simplest form of regression is multiple linear regression (MLR). The MLR has been one of the most popular methods during the second half of the twentieth century of making predictive models and is known as a conventional method. The objective of regression analysis is to predict a single dependent variable from the knowledge of one or more independent variable. MLR has been widely used to model the cause-effect relationship between inputs and outputs and can be generally expressed as Y = f ( X 1 ,..., X n :1 ,..., p ) + (1) where Y is a dependent variable (i.e., output variable), X 1 ,..., X n are independent or explanatory variable (i.e., input variables), 1 ,..., p are regression parameters, is a random error, which is assumed to be normally distributed with zero mean and constant variance 2 , and f is a known function, which may be linear or nonlinear. If f is linear, then (1) becomes a multiple linear regression model and can be expressed as Y = b0 + b1 X 1 + b2 X 2 + ... + bn X n + (2) where b0 is constant and called intercept. Different function forms decide different MLR models. The regression parameters 1 p or b1 bn are usually estimated using the least square method (LSM), which can be expressed as an unconstrained optimization problem.
Minimize J = (Yt f ( X 1 ,..., X m ;1 ,..., p )) 2
t =1 T

where t = 1,..., T represent T different sample points. Once the regression parameters are determined, the corresponding regression model can be utilized for prediction. Stepwise regression (STR) includes regression models in which the choice of explanatory variables is carried out by an automatic procedure. Usually, this takes the form of a sequence of Ftests, but other techniques are possible such as t-tests and adjusted R-square. The stepwise regression main approaches are: (1) Forward selection, which involves starting with no variables in the model, trying out the variables one by one and including them if they are statistically significant; and (2) Backward selection, which involves starting with all candidate variables and testing them one by one for statistical significance, deleting any that are not significant. In our case, we employed the forward selection procedure. 2.3. The Artificial Neural Network Model An artificial neural network (ANN) is a computer system that simulates the learning process of the human brain. ANN is widely applied in many fields such as corn and soybean yield, financial services, biomedical application, time series prediction, decision making and many others. The uniqueness of ANN lies in its ability to learn and generate interrelationships between input and output observed data without requiring any assumptions. ANN can be classified into different categories by their network architecture, transfer function and training algorithm. Generally, neurons in an ANN are arranged in input, hidden and output layers and linked to others with associated weights and biases, which will be adjusted to optimal values during the training. The initial weights were randomly selected from a

117

Ruhaidah Samsudin, Puteh Saad and Ani Shabri

uniform distribution between 1 and +1. The activation function is usually a sigmoid or hyperbolic tangent, which is a non-linear function. In our case, we used the hyperbolic tangent sigmoid function, which is a flexible, non-linear function and allows avoiding signal saturation. The back-propagation (BP) algorithm presented by Rumelhart et al. (1986) is used to develop the ANN model used in this research. The Neural Network Toolbox available in MATLAB is implemented in this study to design and train the BP. Before training, the input and output values were normalized between 0 and 1. BP is a form of supervised learning where the error rate is sent back through the network to alter the weights to improve prediction and to decrease the error. Training stops when the maximum number of epochs is reached or when either the MSE is minimized to arrive at thedetermined goal. The ANN architecture used in this study is shown in Figure 1.
Figure 1: The ANN architecture

One critical decision of ANN is to determine the appropriate architecture, that is, the number of inputs nodes, the number of hidden layers and the number of output nodes. The hidden layer and nodes play very important roles for many successful applications of neural networks. In general, networks with fewer hidden nodes are preferable as they usually have better generalization ability and less overfitting problem. In order to over come the over-fitting problem, some researchers have provided empirical rules to restrict the number of hidden nodes. These include using 2n +1, 2n, n and n/2 where n is the number of input nodes (Zhang, 2003). However none of these heuristic choices works well for all problems. The most common way in determining the number of hidden nodes is via experiments or by trial-and-error. The number of output nodes is relatively easy to specify as it is directly related to the problem under study. For a time series forecasting problem, the number of output nodes often corresponds to the forecasting horizon. The number of input nodes corresponds to the number of variables in the input vector used to forecast future values. For causal forecasting, the number of inputs is usually transparent and relatively easy to choose. In a time series forecasting problem, the number of input nodes corresponds to the number of lagged observations used to discover the underlying pattern in time series and to make forecasts for future values.

A Comparison of Neural Network, Arima Model and Multiple Regression Analysis in Modeling Rice Yields

118

3. Description of data
The data were collected from Muda Agricultural Development Authority (MADA), Kedah, Malaysia ranging from 1995 to 2001. There are 4 areas with 27 locations. With two planting season for each year, total of 14 seasons is generated. There are 35 parameters that affect the rice yield. The parameters were classified to 5 groups. There are 3 types of weed; grassy weed, nutseg and broadleaf weeds, 3 types of pests; rats, type of worms and Brown planthopper, 3 types of diseases; bacteria(Bakterial Leaf Streak and Bakterial Leaf Blight), narrow brown leaf spot and Sheath blight, one type of lodging and one type of wind paddy, making a total 11 input parameters. Out of 35 parameters, only 11 and parameters are chosen since these are the most significant ones that were recommended by the domain expert from MADA. The characteristics input parameter and output of rice yields prediction models was shown in Table 1. Dataset used in this study is not the time series prediction because the weather in Malaysia is not consistent. There are two types of season symptom that influenced the crop yield in Malaysia. There are drought season and raining season.
Table 1: haracteristics Input and Output of Rice Yields Prediction Models
Description Input V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 V11 O Name Grassy weed Nutseg Broadleaf weed Wind paddy Brown planthopper Worms Rats Bacteria Narrow brown leaf spot Sheath blight Type of Lodging Rice Yields Min. 0.1 0.1 0.1 0.1 0.3 0.1 0.1 0.1 0.1 0.1 0.1 51538.0 Max. 2119 1312 1858 423 455 1880 280 686 98 322 610 194179 Mean 323 156 99 13 66 128 61 112 11 21 17 101291 Standard Deviation 301.0 198.7 169.7 39.4 71.6 153.5 53.7 149.0 22.3 38.7 55.8 19192.6 Coefficient Variation 0.932 1.272 1.719 2.976 1.089 1.202 0.881 1.326 2.080 1.805 3.389 0.189

Output

Although there is no consensus on how to split the data for neural network applications, the general practice is to allocate more data for more model building and selection. Most studies in the literatures use convenient ratio of splitting for testing and forecasting such as 70:30%, 80:20%, or 90:10%. The paper selects the last one. We take the seasonality data from first season 1995 to first season 2001 as the in-of-sample data set with 351 observations for training and the reminder with 27 observations for testing purposes.

4. Performance evaluation criteria


The performances of all the models developed in this study are evaluated using a wide variety of standard statistical performance evaluation measures. These criteria include the sum of square error (SSE), mean square error (MSE), mean absolute error (MAE), root mean squared error (RMSE), and correlation coefficient. Among of them, RMSE, MAE and R are the most widely used performance evaluation criteria and will be used in this study. They are defined as follows:

RMSE = RMSE =

1 n ( oi f i ) 2 n i =1 1 n oi f i 100 n i =1 oi

119

Ruhaidah Samsudin, Puteh Saad and Ani Shabri

R=

(o o )( f f ) (o o ) ( f f )
n i =1 i i n n i =1 i i =1 i

where oi and f i are actual and fitted values respectively, and o and f are their average. The model with the smallest RMSE and MAE, is considered to be the best. The correlation coefficient is commonly used statistic and provides information on the strength of linear relationship between the actual and fitted values. A high R 2 value close to 1 indicates a good model fit with observed data. The value of R 2 describes the percentage of total variation contributed by the model.

5. Forecast Procedure
5.1 The selection of ARIMA model The plots in Fig. 1 indicate that the time series of rice yields are non-stationary in the mean and the variance. The transformed time series using the natural logarithm was taken, and then differencing was applied. The sample ACF and PACF for the transformed series are plotted in Fig. 2 and 3, respectively. The sample ACF of the transformed data revealed significant time lags at 1 and 27, while the PACF spikes at lag 1, 2 and 27. The sample ACF and PACF indicated that the rice yields have exhibited some pattern of seasonality in the series.
Figure 2: Rice Yields Series (1995-2001)

Figure 3: ACF and PACF for differenced series of natural logarithms

A Comparison of Neural Network, Arima Model and Multiple Regression Analysis in Modeling Rice Yields

120

The plots suggest that ARIMA model is appropriate. Several models were identified and the statistical results during training are compared in the following Table 2. The criterions to judge for the best model based on MAE, RMSE and R show that the ARIMA (0,1,1)X(1,0,1) is a relatively best model. This model has both non-seasonal and seasonal components.
Table 2:
Criterion MAE (%) RMSE (2,1,1)X(0,0,1) 0.010 0.1494 0.6557 (2,1,1)X(1,0,1) 0.0086 0.1291 0.7328

Comparisons of ARIMA models statistical results


ARIMA Model (0,1,1)X(1,0,1) 0.0085 0.1287 0.7344 (0,1,1)X(0,0,1) 0.0093 0.1381 0.6873 (2,1,0)X(1,0,1) 0.0088 0.1317 0.7295

5.2. Fitting multiple linear regression The MINITAB package were used develop the regression model. Multiple linear regression (MLR) models were developed and tested with the same data sets used for ANN development. The regression equations that were developed are referred to as trained models. These model were then validated with the same data sets used to test the ANN models, thus making the results comparable, and are referred to as validated models. The results of a multiple linear regression analysis data are given in Table 3.
Table 3: Results of multiple regression analysis

The regression equation is Rice Yields = 96585 + 5.01 v1 + 1.61 v2 - 2.76 v3 + 52.4 v4 + 60.4 v5 19.8 v6 + 32.6 v7 + 10.6 v8 - 317 v9 + 19.0 v10 - 19.9 v11 Predictor Coef SE Coef T P Constant 96585 1902 50.79 0.000* v1 5.011 4.342 1.15 0.249 v2 1.607 7.324 0.22 0.826 v3 -2.760 6.757 -0.41 0.683 v4 52.43 26.09 2.01 0.045* v5 60.41 15.09 4.00 0.000* v6 -19.799 6.918 -2.86 0.004* v7 32.56 18.25 1.78 0.075 v8 10.598 9.659 1.10 0.273 v9 -317.42 64.16 -4.95 0.000* v10 19.02 28.73 0.66 0.509 v11 -19.93 16.49 -1.21 0.228 S = 17113 R-Sq = 21.0% R-Sq(adj) = 18.4% Analysis of Variance Source DF SS MS F P Regression 11 26411041315 2401003756 8.20 0.000 Residual Error 339 99279515856 292859929 Total 350 1.25691E+11

In Table 3, the p-value in the analysis of variance section is less than 0.0001, showing that the regression is indeed significant, i.e. there does exist an influential relation between the dependent variable and the other independent variables selected here. Using the students t-distribution, eleven of variables are significant at the = 0.05 level (indicated by an * in the last column). The most important variables in this regression are the v4, v5, v6 and v9. The R 2 value is 21 percent showing that 21 percent of variability in the rice yields data is explained by the linear combination of the specific eleven independent variables. This percentage is not high enough to indicate that a linear relation could certainly be used as a crude approximation of the

121

Ruhaidah Samsudin, Puteh Saad and Ani Shabri

true relation and, at the same time, low enough to justify the investigation of nonlinear alternatives that might explain the remaining variability in the data. Chang (2003 & 2006) suggested that the predicate value from Winter Smoothing model should be considered in MLR as one of the independent variable. In this study, the predicate value form ARIMA model is used as the new independent variables. The results of the modified MLR on the data of Table 3 are given in Table 4. In Table 4, the p-values in the analysis of variance section remains less than 0.0001, showing that this modified regression is still significant, even with the predicate value from ARIMA model in the model MLR. The R 2 value is increase than before (54.3 percent), which means that the inclusion of the predicate value form ARIMA model did improve the model. This means that the modified regression with the new independent variables yields a more reliable and robust model.
Table 4: Results of modified multiple regression analysis

The regression equation is Rice Yields = 18973 + 1.34 v1 - 2.16 v2 - 1.09 v3 + 31.1 v4 + 16.7 v5 - 7.07 v6 + 8.1 v7 + 1.64 v8 - 85.0 v9 + 9.7 v10 5.2 v11 + 0.811 BJ Predictor Coef SE Coef T P Constant 18973 5160 3.68 0.000* v1 1.345 3.317 0.41 0.685 v2 -2.158 5.587 -0.39 0.700 v3 -1.093 5.151 -0.21 0.832 v4 31.10 19.93 1.56 0.120 v5 16.75 11.84 1.41 0.158 v6 -7.069 5.334 -1.33 0.186 v7 8.08 14.00 0.58 0.564 v8 1.639 7.384 0.22 0.824 v9 -85.02 51.10 -1.66 0.097 v10 9.73 21.91 0.44 0.657 v11 -5.24 12.60 -0.42 0.678 ARIMA 0.81124 0.05176 15.67 0.000* S = 13043 R-Sq = 54.3% R-Sq(adj) = 52.6% Analysis of Variance Source DF SS MS F P Regression 12 68193212449 5682767704 33.41 0.000 Residual Error 338 57497344722 170110487 Total 350 1.25691E+11

Table 5 shows the three MRA models obtained by using stepwise regression (STR) techniques. The stepwise procedure showed that ARIMA forecast, v9 and v4 were important to predict rice yields. The best single variable among eleven independent variables was v9 and the second best was v4. The performances of the MLR, MLR with ARIMA forecast and three STR models during training are presented in Table 6. Comparison of the RMSE, MAE and R value show the superiority of the MLR with ARIMA forecast (MLR1) model over that of the MLR without ARIMA forecast and STR model. The result shows the modification of multiple linear regression model with the new independent variables is needed.
Table 5:
Code STR1 STR2 STR3

MLR models for rich yields obtained by stepwise regression technique


Models Rice Yields =11761 + 0.887 ARIMA Rice Yields = 16221 + 0.851ARIMA 70.0 V9 Rice Yields = 16618 + 0.843ARIMA 69.0 V9 + 32.0 V4

A Comparison of Neural Network, Arima Model and Multiple Regression Analysis in Modeling Rice Yields
Table 6:
Criterion MAPE (%) RMSE R

122

Performances of the MLR, MLR1 and Stepwise Regression models


MLR 0.1345 16818.02 0.2010 MLR1 0.0979 12789.18 0.5393 STR1 0.0989 13014.20 0.5243 STR2 0.0993 12928.60 0.5319 STR3 0.0987 12875.85 0.5330

5.3. Neural Network design and architecture selection The ANN model is built with Neural Network Toolbox of MATLAB. In this investigation, we only consider the situation of one-step-ahead forecasting and then one output node of ANNs can be specified. Before the training process begins, data normalization is performed. In the paper, the following formula is used
xi = zi z max

where xi are the normalized input or output values, zi the original data, zmax, the maximum value. The network was trained for 5000 epochs using the BP algorithm with a learning rate of 0.001 and a momentum coefficient of 0.9. The activation function determines the relation between input and outputs of a node and a network. In the present work, a popularly used sigmoid function was employed. One of the most important tasks in developing a successful time series forecasting model is the selection of the input variables, which determines the architecture of the model. In this study, three different types of neural networks models have been developed that differ in the types of input values. 5.3.1. Model I (ANN1) The first type of ANN model (referred to as ANN1) performs a nonlinear functional mapping from the past observations ( X t 1 , X t 2 , ..., X t p ) to the future value X t , i.e.
X t = f ( X t 1 , X t 2 , ..., X t p , w) + et where w is a vector of all parameters and f is a function determined by the network structure and connection weights. ANN1 requires previous rice yield values as data input patterns and has the layered structure shown in Figure 3. This model is connected, since each input unit broadcasts its signal to each hidden unit. The ACF and PACF were used as a first step for the selection of useful variables. Figure 3 presents the ACF and PACF of data sets for the rice yields time series. The input variable selection for the ANN is selected from lags with high ACF and PACF. Based on these analyses, the maximum number of lags, 27, was identified suitable to use as inputs for the proposed ANN. The one only neuron in the output layer represented being modeled. All the data were normalized in the range 0 and 1. After the input and out variables were selected, the ANN architecture of 27-H-1 was explored for capturing the complex, non-linear and seasonality of rice yields data. Table 7 shows the performance of ANN during training with varying the number of neurons in the hidden layer (H).
Table 7: Performance Variation of a Three-Layer ANN with the number of neurons in the hidden layer for ANN1
3 16093 0.118 0.618 9 15733 0.129 0.599 15 15043 0.115 0.644 Number of neurons in the hidden layer 21 27 33 39 45 51 14263 14197 13794 13768 12863 13199 0.114 0.114 0.113 0.106 0.099 0.102 0.668 0.672 0.708 0.700 0.744 0.729 57 13334 0.103 0.725 63 12590 0.097 0.756 70 12791 0.101 0.744

Criterion RMSE MAE R

123

Ruhaidah Samsudin, Puteh Saad and Ani Shabri

It is observed that the performance of ANN is improved as the number of hidden neurons increases. However, too many neurons in the hidden layer may cause over-fitting problem, which results in the network can learn and memorize the data very well, but lacks the ability to generalize. If the number of neurons in hidden layer is not enough then the network may not be able to learn. So, a ANN with 63 neurons in the hidden layer seems to be appropriate. 5.3.2. Model II (Model ANN2) The ANN model (referred to as ANN2) proposed in this section used eleven independent variables as in the multiple regression analysis. The model we used in this section is based on a special case of a feed-forward neural network known as a multi-layer perception (MLP). An MLP neural network is a non-linear, non-parametric regression model commonly referred to as a function approximator. The ANN used in this study are fully connected, feed-forward MLP neural networks with three layers: an input layer, a hidden layer and an output layer. This study adopts the data from Table 1 for network training and testing. The same number of observed data set used for ANN also be used for an ANN analysis; there are n samples and each of the sample has a set of observed values for m + 1 independents variables. The formula created using ANN analysis is the following implicit expression (Shi et al., 2004): Ot = ANN (v1, v 2, ..., v11) where ANN is a non-linear function which cannot be expressed with a usual mathematical formula, but is just designated as being a knowledge base. Both multiple regression and ANN2 are based on a similar working procedure: first determine the calculation formula using observed values for the independent and dependent variables of the n known samples. The formula obtained can then be used to predict the unknown X value for any other sample. There is no standard formula to calculate the number of nodes needed in the hidden layer. Table 8 shows the performance of ANN2 during training varying with the number of neurons in the hidden layer. An ANN2 with 11- 22-1 gives the best prediction among several neural networks architecture trained.
Table 8:
Criterion RMSE MAE Ra 2 17472 0.139 0.620 4 17086 0.135 0.656 6 18310 0.159 0.641 8 16966 0.140 0.680 10 17019 0.136 0.662

Performance Variation of a Three-Layer ANN2 with the number of neurons in the hidden layer
Number of neurons in the hidden layer 12 14 16 18 16960 17333 16687 16562 0.132 0.145 0.134 0.135 0.668 0.666 0.688 0.697 20 16677 0.129 0.697 22 16509 0.134 0.703 24 17506 0.129 0.697 26 17356 0.148 0.690

5.3.3. Model III (Model ANN3) The forecasting method initiates with the basic time series data on rice yields. These data then enter the first stage that uses ARIMA model to account for a linear trend and multiplicative seasonality. The ARIMA forecast is then used as one independent variable in the multiple regressions to identify the best set of independent in the second stage. The ANN model attempts to integrate a seasonally adjusted time series component, a multiple regression and a neural network component to capture non-linear behavior. In this study, all of independent variables is used along with ARIMA forecast is used as input to develop a neural network (referred to as ANN3) forecast. The relationship between the output ( X t ) and the inputs have the following mathematical representation: X t = ANN (v1, v 2, ..., v11, ARIMA) The performances of ANN3 varying with the number of neurons in the hidden layer are shown in Table 9. As it can be seen from Table 9, the ANN3 with 22 neurons in the hidden layer produces the smallest RMSE and MAE, and the largest R than the others.

A Comparison of Neural Network, Arima Model and Multiple Regression Analysis in Modeling Rice Yields
Table 9:
Criterion RMSE MAE R 2 12911 0.099 0.855 4 13139 0.103 0.849 6 12958 0.100 0.854 8 12626 0.096 0.863

124

Different Structure Design of the ANN3


Number of neurons in the hidden layer 10 12 14 16 18 13398 12912 13064 13028 13806 0.105 0.098 0.097 0.098 0.108 0.841 0.855 0.862 0.853 0.827 20 12647 0.096 0.869 22 12484 0.096 0.867 24 13209 0.106 0.849 26 12625 0.096 0.865

6. Comparison of performances
Forecasting of rice yields is very important for its prevention and control. In our study, we compared the performance of the best forecasting methods (ARIMA, MLR, MLR1, ANN1, ANN2, and ANN3) during training by using a real data set in order to provide information on general tendency of data structure in data sets and help researchers to select best method for solving problems forecasting. The performances of the best models developed by ARIMA, MRL, MRL1, ANN1, ANN2 and ANN3 models for both training and forecasting data sets are summarized in Table 10. Figure 4 shows the comparison of the predicted rice yields of each of the six methods against the corresponding of the observed values for the 27 point-of-sample. As it can be seen from Table 10, ANN3 produces minimum RMSE and MAE errors, and the highest R. ANN1 ranked second, MRL1 ranked third, followed by ARIMA, ANN2 and MRL. Thus ANN3 is a suitable model to predict rice yields.
Table 10: Performances of six alternative models for rice yields
Performance criterion MAPE (%) RMSE R MAPE (%) RMSE R ARIMA 0.0989 13138.80 0.7260 0.1469 20072.59 0.4228 MRL 0.1345 16818.02 0.4584 0.1268 17812.95 0.4923 MRL1 0.0979 12789.18 0.7370 0.1140 15876.29 0.4711 ANN1 0.0972 12590.22 0.8697 0.1103 16782.406 0.3526 ANN2 0.1339 16508.96 0.7028 0.1035 16145.67 0.4628 ANN3 0.0960 124483.55 0.8670 0.0849 12158.98 0.5986

Testing Forecasting

125

Ruhaidah Samsudin, Puteh Saad and Ani Shabri


Figure 4: ARIMA, MLR, MLR1, ANN1, ANN2 and ANN3 prediction of rice yield

7. Conclusions
Rice is the worlds most important food crop and a primary source of food for more than half of the worlds population. In Malaysia, raising level of national rice self-sufficiency has become a strategic issue in the agricultural ministry of Malaysia. The numerous problem associated with rice farming include monitoring the status of nutrient soil, maintaining irrigation infrastructures, obtaining quality seedlings, controlling pests, weeds and diseases, and many other problems that need to be addressed in order to increase productivity. These problems can be overcome with a good prediction system that can predict rice yield given the input parameters. The ability to predict the future enables the farm managers to take the most appropriate decision in anticipation of that future. In this paper, we conducted a comparative analysis of three alternative approaches for predicting rice yields, which are neural network, the Box-Jenkins approach and multiple regression analysis. In the regression analysis, R = 0.458 ( R 2 = 21%) showing that 21 percent of variability in the rice yields data is explained by the linear combination of the specific eleven independent variables. In this study, when the predicate value form ARIMA model is used as the new independent variables, we

A Comparison of Neural Network, Arima Model and Multiple Regression Analysis in Modeling Rice Yields

126

observed that the ARIMA forecast play significant roles in the statistical model. The introduced the new independent variables has improved the predict rice yields from R = 0.458 to 0.737 for MRL1 and to 0.867 for ANN3. Based on the performance of six models from three approaches, it can be concluded that ANN3 is an effective method to forecast rice yields. The results show that by introducing ARIMA forecasts as an additional input to develop a multiple regression (MRL1) or a neural network (ANN3), the overall forecasting errors can be significantly reduced.

References
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] Alon, M. Qi and R.J. Sadowski, Forecasting aggregate retail sales: a comparison of artificial neural networks and traditional methods, Journal of Retailing and Consumer Services 8 (2001) (3), pp. 147156. Ainscough and Aronson, 1999 T.L. Ainscough and J.E. Aronson, An empirical investigation and comparison of neural networks and regression for scanner data analysis, Journal of Retailing and Consumer Services 6 (1999) (4), pp. 205217. Bowerman, B.L. & OConnell R.T. 1979. Time Series Forecasting: Unified Concepts and Computer Implementation. 2nd Edition. PWS-Kent Publishing Company, USA. Box, G.E.P. and Jenkins,G.M. (1976). Time Series Analysis: Forecasting and Control. San Francisco: Holden Day. Cao et al., 2005 Q. Cao, K.B. Leggio and M.J. Schniederjans, A comparison between Fama and Frenchs model and artificial neural networks in predicting the Chinese stock market, Computers and Operations Research 32 (2005) (10), pp. 24992512. Chang, C.A. and C.T. Su, A comparison of statistical regression and neural network methods in modeling measurement errors for computer vision inspection systems, Computers and Industrial Engineering 28 (1995) (3), pp. 593603. Khush, G.S., Harnessing Science and Technology For Sustainable Rice Based Production Systems, Conf. on Food and Agricultural Organization Rice Conference, 2004. Loh, F. F., Future of Padi in The Balance, The Star May 21, 2001, retrieved March 21, 2004, from Koleksi Keratan Akhbar Perputakaan Sultanah Bahiyah UUM. MARDI, Manual Penanaman Padi Berhasil Tinggi Edisi 1/2001, Malaysian Agriculture research and Development Institute. Malaysian Ministry of Agriculture, 2002. Prybutok,V.R., Yi, J. and Mitchell D. Comparison of neural network models with ARIMA and regression models for prediction of Houstons daily maximum ozone concentrations, European Journal of Operational Research 122 (2000) (1), pp. 3140. Rains, G.C., and Thomas, D.L., Precision Farming: An Introduction, The cooperative extension service, The University of Georgia College of Agricultural and Environmental Sciences, Bulletin 1186, 2002. Rumelhart et al., Rumelhart, D.E., McClelland,J. 1986. Parallel Distributed Processing. MIT Press, Cambridge. Safa, B., Khalili, A., Teshnehlab, M. and Liaghat, A., Prediction of Wheat Yield Using Artificial Neural Networks, in 25th Conf. on Agricultural and Forest Meteorology, 2002. Shtub and Versano, 1999 A. Shtub and R. Versano, Estimating the cost of steel pipe bending, a comparison between neural networks and regression analysis, International Journal of Production Economics 62 (1999) (3), pp. 201207. Skitmore R.M. & Patchell, B.R.T. 1990. Developments in contract price forecasting and bidding techniques. Cost Modelling. London: E & FN Spon; 53-84. Tam C.M. & Fang C.F. 1999. Comparative cost analysis of using high performance concrete in tall building construction by artificial neural networks. ACI Structural Journal 96(6): 927-936.

127 [17] [18] [19]

Ruhaidah Samsudin, Puteh Saad and Ani Shabri Winder, J. and Goddard, T., About Precision Farming, Agriculture, Food and Rural Development, Government of Alberta, 2001. Yim, J. and Mitchell,H. Comparison of country risk models: hybrid neural networks, logit models, discriminant analysis and cluster techniques, Expert Systems with Applications 28 (2005) (1), pp. 137148. Zhang G.P. 2003. Time Series Forecasting Using a Hybrid ARIMA and Neural Network Model. Neurocoumpting 50:159-175.

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.128-147 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

Modeling and Evaluating of Emotional Processes


Khalil Shihab Department of Computer Science, SQU, Box 36, Al-Khod, 123, Oman Haider Ramadhan Department of Computer Science, SQU, Box 36, Al-Khod, 123, Oman Abstract In this paper, we explain the emotional decision-making model. Furthermore, we explore and discuss some examples of the model in action. Firstly, we identified the emotional characteristics using questionnaires. These questionnaires were designed to explore peoples behavior in certain circumstances, while under specified emotional states. Special attention was given to the thought process and actions displayed in the hypothetical scenarios. Secondly, after we completed the collection of the questionnaires, we characterized thoughts and actions associated with each scenario and emotional state. Each particular action or proof of steps taken in the thought process was given a percentage value directly proportional to answers given by the test population. Finally, we combined and compared the results yielded from the questionnaire with the emotional decision making model.

1. Introduction
Computer Game Software (CGS) has become increasingly popular. Unlike before, todays games are geared toward an older demographic and as a result they have become much smarter and more complex. Players are constantly looking for challenging CGS and this is can be achieved due to the recent advances in Artificial Intelligence [1]. Over the last five years, games have become increasingly intelligent and intellectually demanding [2]. If we compare an older game to any of the current generation games, it will become apparent that these new games are much more difficult to play. Opponents in these games have also become smarter and now seem to exhibit what could be considered intelligent behavior. Some games even have agents that learn, to a certain degree, and adjust their decisions accordingly, even cooperating against you though even at this stage, they are by no means perfect. Agents still seem to exhibit strange behavior, such as walking into walls and using items inefficiently. Even though, to a certain degree, agents currently seem to act in an intelligent way and make intelligent decisions, there is still something lacking in their behavior. Their actions are although intelligent still seem quite robotic. Therefore, this work addresses this area of study. This paper introduces emotion as a factor in the decision-making process and actions taken by an agent. Human emotions play a large part in how an individual thinks and acts. For example, decisions made in anger can often be different from those made otherwise. Likewise, trying to perform an action like throwing a ball can also be affected by the mood an individual is in, which is governed by emotions. Emotions can be a driving force behind the types of decisions and actions and individual makes [3]. Depending on ones emotional state, the individual can make better or worst decisions and perform action more or less effectively [3, 4, 5]. Therefore to bring artificial intelligence to the next level, that is closer to human, emotions need to be incorporated in the decision-making process and

Modeling and Evaluating of Emotional Processes

129

actions of agents. If agents can be made to behave with emotion then they will appear more human, which is exactly what is wanted (computer controlled agents simulate a human opponent). Adopting this emotion approach to agent, artificial intelligence may not always, or rather should not always result in an optimal decision or action [6, 7, 8]. Rather it will result in the best possible decision or action given the agents emotional state. Human players get angry, nervous and frustrated and this affects the way they play. This should be no different for computer controlled agents as the aim of this thesis is the development of an agent that exhibits human like behavior, mistakes and all.

2. Background
Artificial intelligence (AI) has been growing and maturing in the passing years and the domain of video games has become an increasingly popular platform for artificial intelligence research [9, 10]. As games become more complex and realistic, so too does the AI that drives these games. Games may be simplified when compared to the real world but none the less they provide complex, dynamic environments and situations which even human players find challenging. Although AI in videogames has been constantly improving, it is still at a stage where inflexible and predictable behavior is exhibited. 2.1. Goal and Resource Using architecturE (GRUE) Gordon and Logan [10, 11] have proposed GRUE, which is a new architecture that aims at improving these weaknesses. It uses teleo-reactive programs (TPRs) which basically consist of a series of rules, with each rule containing some number of conditions and actions. Running a TRP, it evaluates all the rules and executes the actions of the first rule whose conditions evaluate to true when compared to the world model that is stored in the agents memory. The resulting actions can be said to be durative as they carry out as long as its conditions are true. In this architecture the agents use TPR to pre-define plans for achieving goals. Furthermore it is here that multiple actions are allowed to be executed during each cycle. Game agents may encounter situations where several items may be adequate in achieving a task or where objects come in quantities such as money and ammunition. GRUE is designed specifically for these types of situations and is built around the key concept of resources. GRUE allows the game agent to generate new top-level goals depending on the current game situation and assign priorities to these goals based on the current situation. For example, an agents goal may be to attack, but if it is injured it may then generate a new goal which would be to heal itself before continuing with previous goal of attacking. Here the goal of healing would be given a higher priority and the first goal of attacking would be given a lower priority. Once the agent has carried out the goal of healing it will then continue with the original goal. Multiple tasks can run actions in parallel during each cycle when possible. If the agents task is to search for ammunition then actions needed to carry out this task can be run in parallel during each cycle. Actions may include searching, defending, attacking or healing when hurt and so forth. A complete GRUE has been implemented for the Tileworld environment and the agent performs well, demonstrating that resource use with preferred properties is advantageous. A basic GRUE has also been implemented for the game Unreal Tournament and performs less impressively showing predictable behavior. However, the authors do believe that a complete GRUE agent will perform much better. 2.2. The Use of Influence Diagrams (IDs) In recent years, game theory and decision theory have had a profound impact of artificial intelligence in video games [13, 14]. Traditionally, multi-agent systems using game-theoretic analysis for decision making use a normative approach [2, 15]. It is here that decisions are derived rationally from the game

130

Khalil Shihab and Haider Ramadhan

description. However, this approach is believed to be insufficient and it does not capture the decision making process of real life agents. Real life agents (real people) may be partially irrational or may use models other than the real world (the game model) to make decisions [8, 16]. Also agents may be unsure about their opponents decision-making processes. Network Interface Diagram (NID), developed by Gal and Pfeffer [16], allows for situations in which agents have an incorrect mental model of how the world works and also allows for instances where a modeler has uncertainty about another agents model. The basic building blocks of a NID are influence diagrams (IDs). IDs consist of a direct graph with three types of nodes as described below: Chance nodes drawn as circles and represent random variables. Decision nodes drawn as rectangles and represent decision points Value node drawn as diamonds and represent the agents utility which is to be maximized. 2.3. Multi Agent Coordination Multi agent coordination is another important area in video game Artificial Intelligence. In many of todays games computer controlled agents must work together in an intelligent and believable way against the human player [17. In multi agent coordination, the aim is to find a satisfactory solution that is fair, stable and optimal to all agents [18]. In human society this often involves a trusted third party in the negotiating process among all agents to insure that all agents should cooperate and are committed. As with most Artificial Intelligence problems, this too will be modeled to work in the same way as the real world. Wu and Soo [18] described how a trusted third party can be involved in the negotiation of multi agent coordination to deal with many difficult and challenging game situations. This is done by asking guarantee from required agents and depositing it at the trusted third party to ensure that all agents keep their commitments, whilst offering compensation to allow the finding of a fair and compromising solution for all agents. Previous work completed by Axelrod [11] and Genesereth, Ginsberg and Rosenschein [19] shows that rational agents are able to coordinate and cooperate with a game theoretical deal-making mechanism even without communication. Currently researchers are trying to use Artificial Intelligence tools to beat games such as Connect Four, Norte and Crosses, Chess and so forth. Current CGS is much more complex, challenging, demanding, and as this software evolves, new, modified or existing AI techniques be used in the development process of this type of software. Games involve agents who try to defeat their human opponent (the player) by making intelligent, believable decisions and actions, some even requiring agent cooperation for this to be achieved. Throughout this literature review many models and methodologies have been presented. Models and methodologies that have been designed and created to insure that games exhibit these types of intelligent behavior, and as society progresses, these will only continue to mature and further evolve [20, 21, 22].

3. The emotional decision making model


There are many factors that influence a persons decision making process. This paper concentrates on emotion as a key factor, a driving force, behind decisions made and actions resulting in the decision reached. Below is the emotional decision making model.

Modeling and Evaluating of Emotional Processes


Figure 3.1: The Emotional Decision Making Model

131

3.Decision

1.Agent 4.Action 2.Emotion

5.Game Environment

6.Prior Actions/Decisions

7.Other agents Actions/Decisions

As shown in the above model, there are seven key stages in the emotional decision making model. These are numbered one through to seven respectively. Note that these numbers do not represent the process order or direction of navigation, rather, they are nothing more than identifiers which will aid us in the explanation of each of the parts that collectively make up the emotional decision making model. We begin at point (1), the game agent. The game agent represents any computer-controlled entity. This can be anything from an animal to an opposing character. In other words, a game agent is any thing that is not controlled by the player. This game agent will, at any given time, be in an emotional state. Depending on this emotional state, the agent will make a decision, which will trigger an action. This action can then further affect the agents current emotional state, therefore changing it. This process is recursive, in that it is continually cycling and constantly changing until the game agent ceases to exist. Moving on to point (2), we have the game agents emotional state, referred to as emotion. It is here that the agents current emotional state is stored, which will continue to change as the game progresses and the game agent makes decisions and performs actions. Actions performed by the game agent will be influenced by the emotion. This will be covered in greater detail throughout point (4). Note: that a game agent is in an emotional state at any given point in time, thus it is considered the heart and soul of this model. Next we have point (3), referred to as decision. Here with game agent will store all possible decision available while under a particular emotional state. The decision with the highest percentage value will always take precedence over decisions with lower percentage values, which will be executed. If there are two or more decisions with equal percentage values, the first decision in the list out of the possible decisions will be selected and executed. Decisions are stored as a list and are traversed until a suitable decision is found. Let us set up a scenario to illustrate the mechanics of this step. This scenario will require the game agent to decide on weather to attack an overwhelming opponent, or retreated from battle. Possible choices available to the game agent are referred to as decision candidates each decision has a percentage or weight attached to it. The game agent is in a scared emotional state. Bellow is the agents possible decisions that correspond to the emotion it is in. Decision Candidates. Attack 10%

132

Khalil Shihab and Haider Ramadhan

Retreat 90% As retreat has the highest percentage value the game agents decision will be to retreat from battle. This decision opens up possible actions that the agent may execute, which will be covered in the next section. Note that once a decision has been made decision candidates are cleared in preparation for the next iteration. It is important to note that this is a simplified accounting of how this section of the decision making model works. Sub decisions may be needed to properly select the best course of action. This such as health remaining, distance and so on could be taken into consideration, though this thesis will only cover simple, non-nested decisions. Point (4) is referred to as action and works in much the same way as point (3). It is important to note at this time that possible actions are provided by the decision selected. Here all possible actions available to the game agent will be stored in a list and the action with the highest percentage value will take precedence over lower valued actions. As before, actions with equal percentage values will be selected using the first-on-list method. As with decision, action acts in much the same way, in that a list of possible actions are provided and selected based on their percentage value. Possible actions available are provided by the decision made. Note that in this step the emotional state of the game agents is no longer relevant. This is because the previous step, decision was carried out while under the influence of emotion and thus the possible actions provided to action candidates will follow suit. It is important to remember that decisions made under the influence of a particular emotion will always lead to actions made corresponding to that emotion. In other words, decisions made in anger will lead to actions performed in anger. Below are possible actions provided by decision.
Action Candidates Retreat to area occupied by friendly game agents 40% Retreat to nearest safe location 30% Retreat to Base 30%

As in the above example the choice with the highest percentage will be fired and actions will be cleared in preparation for the next iteration. Now we reach what are known as outside effectors. Point (5) is the first of these and is referred to as game environment. During a game many things are simultaneously happening. Not only are the player and game agents performing actions that affect one another, but the game environment is constantly changing and also affecting the game agent. The game environment can be anything from rain in a game to a particular geographical stage structure, each of which will trigger selected emotions in the game agent, see Example 3.1. Next, we reach point (6) referred to as prior actions/decisions. Here previous actions that may trigger particular emotions are stored. Once a game agent makes a decision and performs an action, often, the action performed may trigger further emotional states. Again this will be explained in greater detail in Example 3.1. Finally, we reach the final point in the emotional decision making model, point (7). This is referred to as other agents actions/decisions. Many times in a game, there will be multiple game agents controlled by the computer. These agents will most likely interact with each other, thus having an effect on one-anothers emotional states. This allows for realistic teamwork and quarrels between game agents (i.e. if agent accidentally shoots team member, team member may fire back in anger). Now that we have covered all the parts that make up the emotional decision making model, we can now look at examples of how they work. Below we will illustrate how this process works with a simple game scenario example. Note: we will only use a simplified variation of the emotional decision making process. This model will exclude the outside effectors included in the full model. Before we begin, you will notice that each round of the emotional decision making model is represented as an iteration of the model. Iterations increment by one each round until the game agent is terminated. Example 3.1: The Emotional Decision Making Model (Emotional state = anxious) Scenario: Game agent must take a multiple choice exam. The agent is anxious and must complete the test while under this emotional state.

Modeling and Evaluating of Emotional Processes


Figure 3.2: First iteration

133

Decide on answer in multiple choice test that happens to be wrong, unbeknownst to the agent.

Agent Choose this answer in multiple choice test Anxious

Here we see that the game agent is anxious. As a result of this, the agent decides on choosing the wrong answer. Based on this decision, the agent selects the wrong answer and this affects the game agents emotional state. The second iteration now begins. Due to selecting the wrong answer in the multiple choice exam, the game agent has now become upset. Therefore all decisions made will now be under the influence of this emotional state.
Figure 3.2: Second iteration

Decide to not continue with the test

Agent Choose to not continue with the test Upset

Being upset, the agent has now decided not to continue with the test. As a result of this, the game agent performs its action, which in this case is to choose not to continue with the test. This action can then further affect its emotion state, or in our case the agent is terminated, thus ending the emotional decision making model cycle. Now lets look at this example in greater detail. In the first iteration the agent was feeling anxious. This resulted in the agent deciding on the wrong answer in the multiple choice test he/she was undertaking and thus chose the wrong answer. This then continued into a second iteration, in which the agents action affected the agents current emotional state, leading into further decisions and actions as illustrated in the second iteration. We did not however factor in the outside effectors, nor did we demonstrate the full operation of the decision and action steps of the emotional decision making model. In the next example all aspects of the model will be described using a detailed and complex scenario, with each section being discussed and explained. This will begin at the agents point of birth and will end at its time of death or termination. At birth/creation all parts of the emotional decision making model are empty, with the exception of emotion which is generated randomly at the agents point of creation.

134

Khalil Shihab and Haider Ramadhan

4. Model Evaluation
For our emotional decision making model to work and mimic realistic human behavior [23, 24, 25], we required data. We wanted to find out how real life agents reacted in certain situations and what processes the human mind runs through when thinking and acting upon certain situations. The easiest and most convenient way to collect this data was via a questionnaire and thus one was written up. This questionnaire was designed in such a way that it would give us valuable incite into the workings of human minds. The questionnaire created hypothetical scenarios, of which many of us have experienced before in our lives, and the participant is then required to write short answers on how he/she would act under this particular situation. To insure that the data collected via the questionnaire was of use, the hypothetical scenarios should be restricted to the subject. It should rather include the emotional state. Therefore successfully completing a questionnaire requires the subject to explain, in as much detail as possible, how he/she would act in the said scenario under normal circumstances, that is what is perceived to be a normal state of emotional being, and a specified emotional state provided. The differences between the two answers were then compared. Below is an example of a participants completed questionnaire. We will go through each answered section and explain how decisions in selecting data for our model were made. Questionnaire on emotions and actions/decisions exhibited while under different emotional states for use in the study of the decision making process of game agents. Please give a detailed example of your actions in a particular situation of your choice while in a normal emotional state and then again while in a given emotional state. Try to include actions and decisions made as well as thoughts occurring at that time.
Participant 1:Scenario 1 Use situation of your choice. 1st emotion = normal 2nd emotion = anxiety

I was going into a job interview feeling very confident. I knew I had all the relevant experience and appropriate qualifications. I answered all questions to the best of my ability and felt excited as I left the interview. I knew that I had a chance of receiving a call back and was extremely anticipating a response. I was going into a job interview feeling a little uncertain. I wasnt all that prepared and did not have all the relevant experience they were after. They were asking questions I was very nervous and couldnt think straight; therefore my answers were not highly regarded. I knew what I had to offer wasnt what they were looking for. As we can see from the above example, the participant used his/her prior experiences in a job interview to answer the questionnaire. We find that the outcome of this same scenario differs depending on the participant emotional state. Let us begin by first scrutinizing the first response. Notice that particular words are underlined. These words were considered important in determining the participants thoughts and actions and were used to then formulate a possible manner exhibited while under the specified emotional state. It is important to note, however, that there is no hard-and-fast system to picking out emotional traits from responses. A great deal of it is up for interpretation and thus many concussions can be derived. However conclusions made, for the most part, should all agree with each other. That is, a particular emotion should share many traits, regardless of who interpreted the written responses. What this means is all though there may be slight differences, all results determined should be very similar. In reading the first response we find the following words and phrases to be of interest: very confident relevant experience appropriate qualifications best of my ability felt excited extremely anticipating

Modeling and Evaluating of Emotional Processes

135

By looking at the above words and phrases we can make the following assumptions: While under a normal emotional state the agent is confident in what he/she is doing. Confidence promotes clear, logical thinking and results in logical, appropriate actions being made. The agent has all relevant experience required thus maintaining his/her confidence. Emotional state remains as is. (Note: there was potential for a change in the agents emotional state. This will be explained in the in the participant second response.) The agent had appropriate qualifications. As above, the agents emotional state remains the same, further promoting confidence, clear logical thinking and logical, appropriate actions. The agent performed at the best of his/her ability. While in a normal emotional state, said agent will act optimally, that is, to the best of the agents ability (note that two agents performing at optimal capacity may have differing results. This is because each agent is performing as best as they can. This doesnt mean that both agents are equal, as optimal capacity for one agent may be much higher than for the other, as is the case with real life agents). Here we find that the agent feels excited and thus we begin our first emotional transition. It can then be said that when and agent is performing well, he/she may feel excited with their performance. Finally the agent makes another emotional transition, this time in the form of extreme anticipation. It can thus be said that excitement leads to anticipation, or rather; such is the case in this example (should be deleted). In knowing this, we can not make an agent unique. This particular agent becomes anxious when excited. Other agents may exhibit different, unique emotional traits such as this. In the same manner as above, we will now look at this participant's answers while under the emotional influence of anxiety. In reading the first response we find the following words and phrases to be of interest: little uncertain wasnt all that prepared did not have all the relevant experience very nervous couldnt think straight answers were not highly regarded By looking at the above words and phrases we can make the following assumptions: While under an anxious emotional state, this participant felt uncertain. We noticed that this is the exact opposite of what he/she felt while under a normal emotional state. Uncertainty can lead to errors in decision-making and can thus lead to errors in action. The participant admits that he/she (you certainly know the participant, it should be either he or she) wasnt all that prepared for the task at hand. Consequently we can conclude that improper preparation may lead or be one of the possible causes of feeling uncertain, either in the task at hand or himself/herself. The participant admits that he/she did not have all the required and relevant experience for the task he/she was confronted with. This further supports the previous conclusion, that is, that improper preparation may lead to uncertainty. We now see the participants first emotional transition. The participant states that he/she now feels nervous, thus we may note that anxiety may be followed my nervousness. The participant could not think straight. Here we can conclude that nervousness may lead to unclear thinking, which in turn, leads to error prone decisions and incorrect actions. Looking at the above results, we can now represent the first participants emotional traits in the table below as follows:

136

Khalil Shihab and Haider Ramadhan

Table 4.1: First participants exhibited characteristics while under specified emotional state.
Participant 1 Emotion Normal Excitement Anxiety Nervousness Characteristics Confidence, clear thinking, performing at peek capacity Adequate performance, favorable outcome Uncertainty, unclear thinking, performing at a capacity below peek Inadequate performance, unfavorable outcome

By looking at a second response and scrutinizing it in the same fashion as above, we can identify similarities and discrepancies in answers we have collected and can thus make conclusions to base our emotional decision making model on. Participant 2: Scenario 1 Use situation of your choice. 1st emotion = normal 2nd emotion = anxiety I was undertaking my year 12 English exam and was thoroughly prepared as I had studied hard for it. I was able to think clearly and I didnt panic and therefore got a lot of work done. I felt that the outcome of this exam would be good and I was excited to receive my marks. Upon getting my results I was happy as I expected I would be. I was undertaking my year 11 mathematics exam and hadnt studied as much as I should of. I was nervous and knew I wouldnt do as well as I could of if I were properly prepared. I had also failed my last mathematics test so my confidence in this exam wasnt too high. As time ran out I began to panic and feel pressured and didnt know how to tackle certain problems. I couldnt think calmly and I didnt end up finishing much of the exam. The parts I did complete I knew I got wrong, I wasnt looking forward to my results. When my results finally came I knew they would be bad and they were. I had failed. This example shows that the participant also used his/her prior experiences to answer the questionnaire, in this case, high school exams. We find that the outcome of this same scenario once again differs depending on the participant emotional state. We will again begin by first scrutinizing the first response. Notice that particular words are underlined as before. These words and phrases were considered important in determining the participants thoughts and actions and were used to then (delete) formulate a possible manner exhibited while under the specified emotional state. However, again we must stress that there is no hard-andfast method to picking out emotional traits from responses. If a reader interprets these responses, he/she may reach to many conclusions. In reading the first response we find the following words and phrases to be of interest: studied hard think clearly didnt panic lot of work done outcome of this exam would be good excited happy expected I would be By looking at the above words and phrases we can make the following conclusions: While under a normal emotional state the agent is confident in what he/she is doing. The agent studied hard and was prepared for what was to come. Confidence promotes clear, logical thinking and results in logical, appropriate actions being made. The agent emphasizes clear thinking. Here we have evidence to support our first statement, that is, confidence promotes clear, logical thinking.

Modeling and Evaluating of Emotional Processes

137

The agent states that he/she didnt panic, even in a situation or environment that may cause panic, namely an exam environment. (Note: if panic did set in the cause would be a result be provided by the outside affecters in our emotional decision making model). By knowing this we can make an inverse assumption, that is, if clear thinking does not lead to panic then unclear thinking may lead to panic. The agent performed at the best of his/her ability and completed a majority of the work. While in a normal emotional state, said agent will act optimally, that is, to the best of the agents ability. (Note: two agents performing at optimal capacity may have differing results. This is because each agent is performing as best as they can. This does not mean that both agents are equal, as optimal capacity for one agent may be much higher than the other, as is the case with real life agents). Here we find that the agent feels good about the way he/she has performed and is expecting a positive outcome. When an agent is confidant and feels good about something, be it a decision or action, then all following decisions and subsequent actions have a good chance to following suit There is a possibility of the agents feelings being wrong. Such cases can lead to false confidence, which in turn could lead to bad decisions and actions or a series there of. We now find that this agent is in a state of excitement. This appears to be due to the agents positive assumption of his/her performance. This emotional transition seems to compliment positive feelings, that is, the agent feels positive about something and thus is excited about the outcome. We may once again make a inverse assumption, in this case, if an agent feels negatively about something then the accompanying or following emotion is nervousness, rather then excitement. The agents state of excitement and positive thinking has initiated yet another emotional change, this time, happiness. As above, it can be assumed that if excitement leads to happiness then nervousness can lead to sadness or depression. Finally we find that this particular agent received results he/she was expecting. Therefore, in this particular case, positive emotions lead to positing thinking and actions, finally leading to positive, near optimal results. In the same manner as above, we will now look at the second participants answers, while under the emotional influence of anxiety. In reading the first response we find the following words and phrases to be of interest:
hadnt studied nervous wouldnt do as well as I could of failed my last test confidence wasnt too high panic didnt know how to tackle certain problems couldnt think calmly felt pressured didnt end up finishing the parts I did complete I knew I got wrong wasnt looking forward to results failed

By looking at the provided words and phrases we can make the following conclusions: While under the emotional state of anxiety, the participant admits that he/she hadnt prepared for the task at hand. Therefore we can assume that this is a possible cause of anxiety. The participant makes an emotional transition to nervousness. We conclude that anxiety may lead to nervousness. The participant states that he/she did not perform at a satisfactory capacity. We can conclude that nervousness may lead to an unfavorable performance. The participant has failed his/her last test and it seems like this is affecting him/her. A characteristic such as this would be utilized by the previous actions/decisions in our emotional

138

Khalil Shihab and Haider Ramadhan

decision making model. Here we see that the agents previous decisions and actions can have a negative affect on his/her current performance. At this point the participants confidence is not too high and thus we have an emotional transition. The participant is now unconfident or lacks of confidence. Here the participant makes yet another emotional transition, this time in the form of panic. We conclude that un-confidence may lead to panic. We now find that the participant is not certain about how to tackle certain problems that have arisen. Thus we conclude that panic may lead to uncertain thinking, which will result in incorrect decisions and actions being made. As a result of the above point, we find that as expected, the participant has not performed favorably. In this case he/she has not completed the required task. Here we find that not only did the participant not complete the required task but also the parts that were completed were done so incorrectly. We conclude that not only does panic restrict ones performance; it also affects parts that should have been completed without problems under normal circumstances. The participant admits that he/she was not looking forward to the results of the task completed, thus we conclude that the participant has feelings of reservation. This signifies our next emotional transition. The participant failed, therefore receiving an unfavorable outcome. Looking at the above results, we can now represent the second participants emotional traits in Table 4.2.
Table 4.2: Second participants exhibited characteristics while under specified emotional state.
Participant 2 Emotion Normal Excitement Happy Space Anxiety Nervousness Panic Pressure Characteristics Clear thinking, performing at peek capacity Leads to the emotional transition below Adequate performance, receive predicted outcome, favorable outcome Uncertainty, unclear thinking Unclear thinking, performing at a capacity below peek Leads to emotional transition below. Also exhibits the characteristics of pressure Could not complete task, parts completed were incorrect, inadequate performance, unfavorable outcome

Finally, to illustrate similarities and differences in emotions and how they govern agents, we will look at the third and final example. This final example gives us a very different set of results and thus makes up our other percentages. This final example will show a significant set of differences in behavior and characteristics, therefore providing the variation we need to portray realistic, unique human behavior. Participant 3: Scenario 1 Use situation of your choice. 1st emotion = normal 2nd emotion = anxiety I received an engineering assignment. The task was to build a model bridge out of Popsicle sticks. The bridge had to be constructed using defined engineering principles and the construction was required to support a minimum amount of weight. I left the assignment to the last minute and was running very late. The pressure of completing it or failing gave me the wake up call I needed and I worked hard all night to complete the bridge. The pressure helped me focus on only the task at hand (no TV or games until I was finished) and I completed an excellent model. It was not only supported the required minimum weight quota but exceeded it 3 fold. I was very happy and received a HD.

Modeling and Evaluating of Emotional Processes

139

The next case was an engineering competition; it was similar to the above situation. Again I left it to the last minute, but knew from the last time that the pressure would help me get into gear. I was anxious to win. I finally started building my model but things were going wrong. I didnt have much time left and I hade to rush to finish. I made a critical mistake in my calculation early on. This lead to other calculations being off. When it came time to test my model at the competition my bridge collapsed with out much weight. I received a very bad outcome and a long lecture on the potential dangers of this happening in real life. I was very disappointed. After analyzing this final participants results while he was under a normal emotional state, we find the following words and phrases of interest: last minute running very late pressure of completing it or failing gave me the wake up call I needed worked hard completed task the pressure helped me focus complete an excellent model quota was exceeded very happy received a HD Using the above phrases we can make the following conclusions and assumptions: While under a normal emotional state, this participant left the task at hand to the last minute. We can assume that this is a result of confidence/over-confidence. Though this is only an assumption, we will make the emotional transition to over-confidence. The participant was running very late, thus we can assume that he/she assumes that the task can be completed in a minimal amount of time. The participant has now made another emotional transition. He/she now feels pressured. However this participant to his/her advantage uses pressure (here, what is generally perceived as a negative emotion is used in a positive way). The participant used this pressure to work hard and stay focused. So we can conclude that in this particular case, the emotional state of pressure leads to hard work and focus (this differs from the previous examples). Using the influence of pressure, this participant completed an excellent model. Here we conclude that pressure may lead to peek, in this case, more than peek performance. Again note how this drastically differs from previous responses. Here the participant makes an emotional transition from pressured to happy. We conclude that pressure leads to an exceptional performance, which leads to happiness. Finally, as with the previous two examples, we will now look at the third participants answers while under the emotional influence of anxiety. In reading the first response we find the following words and phrases to be of interest: last minute knew from the last time that the pressure would help me things were going wrong rush critical mistake lead to other calculations being off bridge collapsed very bad outcome potential dangers very disappointed Using the words and phrases above we can make the following conclusions and assumptions:

140

Khalil Shihab and Haider Ramadhan

While under an anxious emotional state, this participant left the task at hand to the last minute. We can assume that this is a result of confidence/over-confidence. By reading the outcome of the response, we can safely make the emotional transition to over-confidence. The participant knew the pressure would be of benefit to him, as per previous experience, thus we can assume that over-confidence can lead to a false sense of security. This previous experience would be represented in the past decisions/actions of our emotional decision making diagram. The participant states that things were going wrong. Particulars of this were not specified, so it is assumed that things of an outside nature were going wrong. These may include not having the required equipment and or materials needed to complete the task. Such events would be represented in our emotional decision making models by outside affecters. The participant rushed. We can assume that this time, the pressure of finishing in time was overwhelming and as a result the participant had to rush. This can lead to mistakes being made and thus affects performance. As assumed at the previous point, critical errors were made as a result of pressure. These errors lead to a chain of errors being made, thus having a negative affect on performance. The participants result was failure and consequently, a very unfavorable outcome was yielded. Therefore we may assume that in this case, overconfidence ultimately lead to a below peek performance and an un-favorable outcome of events. Table 4.3 represents the results of the third participants emotional traits.
Table 4.3: Third participants exhibited characteristics while under specified emotional state.
Participant 3 Emotion Normal Pressure Space! Anxiety Pressure Disappointment Characteristics Confidence Hard work, focus, peek performance, exceptional results Over-confidence, false sense of security Unclear thinking, error prone decisions and actions, below peek performance Failed task, unfavorable outcome, potential danger, regret

It is important to note that the above examples were only three results selected out of a population of thirty. By performing the above, for mentioned result analysis, we found that many agents exhibited very similar and very different actions in given situations. For this information to be useful, it should be converted into data, such that it can be applied to the emotional decision making model in an affective and believable way. Therefore the above collated data is converted into percentage form. In doing so we can find out what proportion of the population act in certain ways while under certain emotion states and how these differ from agent to agent. Participants

The sample consisted of 30 participants that were conveniently sampled via questionnaire. The questionnaires were administered to willing participants and were filled out and returned to the researcher. There was no criterion required in completing a questionnaire other then being able to respond to the questions in English. Of the 30 participants 15 were male (50%) and the other 15 were female (50%). Ages of participants ranged between 19 25 years. Materials

Instruments used in this study were a computer with MS Word, a printer and white A4 paper. Responses to the questionnaire were calculated and graphed using MS Excel.

Modeling and Evaluating of Emotional Processes

141

Procedure A questionnaire based on emotional characteristics and behaviors while under specified emotional states were distributed to willing participants. All participants were made aware of their participation, as voluntary and that there was no obligation to complete and return the questionnaire after its distribution. The investigator informed the participants of the objectives of the study and answered any questions regarding either the study or parts of the questionnaire. Once the participants were satisfied and all questionnaires were collected, participants responses were scrutinized and results were collated. Finally, tabular and graphical representations of all results were created and interpreted. Results Table 4.4 and Figure 4.1 show the percentage of emotional characteristics exhibited while under the normal emotional state in the total sampled population.
Table 4.4: Percentage of emotional characteristics
Normal Characteristics Confidence Clear thinking Performing at peek capacity Adequate performance Favorable outcome Predicted outcome Hard work Focus Exceptional results Efficiency Frequency 25/30 25/30 28/30 29/30 27/30 25/30 15/30 23/30 12/30 12/30 Percentage 83% 83% 93% 96% 90% 83% 50% 76% 40% 40%

Figure 4.1: Percentage of emotional characteristics exhibited while under the normal emotional state in the total sampled population.
Emotional Traits
Efficiency Exceptional results 40% 40% 76% Characteristics 50% 83% 90% 96% 93% 83% 83% 0% 50% 100% 150% Confidence Performing at peek capacity Clear thinking Population Predicted outcome Favorable outcome Adequate performance Focus Hard work

Looking at the results of the above graph we find that certain trends can be identified. While under the normal emotional state, we find that the majority of agents achieved an adequate performance. This is seems to be accompanied or as a result of performing at peek capacity. Doing so results in a favorable outcome in a large percentage of agents most of which showed evidence of clear thinking and confidence. There is a high rate of predictable outcomes and focus in the agent. Half of the total agents exhibited hard work in reaching their outcome and this resulted in efficiently completing tasks and achieving exceptional results in just under half of the total sampled agents.

142

Khalil Shihab and Haider Ramadhan

Table 4.5: Percentage of emotional characteristics exhibited while under the emotional state of anxiety in the total sampled population.
Anxiety Characteristics Uncertainty Unclear thinking Performance below peek Inadequate performance Unfavorable outcome Incomplete task Incorrectly completed tasks Over-confidence False sense of security Failure Regret Danger Misinterpretation of task Overlooking of key information Giving up / Quitting Frequency 24/30 29/30 29/30 28/30 29/30 26/30 20/30 11/30 11/30 13/30 20/30 1/30 9/30 19/30 2/30 Percentage 80% 96% 96% 93% 96% 86% 66% 36% 36% 43% 66% 3% 30% 63% 6%

Figure 4.2: Percentage of emotional characteristics exhibited while under the emotional state of anxiety in the total sampled population.
Emotional Traits
Giving up / Quitting Overlooking of key information 6% 63% 30% 3% 66% 43% Chatacteristics 36% 36% 66% 86% 96% 93% 96% 96% 80% Inadequate performance Performance below peek Unclear thinking 0% 50% 100% 150% Uncertainty Population False sense of security Over-confidence Incorrectly completed tasks Incomplete task Unfavorable outcome Regret Failure Misinterpretation of task Danger

Looking at the above graph we see that as large number of agents showed signs of unclear thinking, uncertainty, uncompleted tasks and incorrectly completed tasks while under the emotional state of anxiety. These, to a large extent, results show an inadequate performance, the agent performing at below peek capacity and achieving an unfavorable outcome. A significant portion of these agents seemed to have overlooked key information provided to them and ended with regret. A small portion of the total sample population showed signs of overconfidence, misinterpretation of the task and an even smaller portion of the population gave up the task that they were working on and quit. Just under half of the agents resulted in failure of their task with a very small portion achieving dangerous or possibly dangerous results.

Modeling and Evaluating of Emotional Processes

143

Table 4.6: Percentage of emotional transitions made while under the normal emotional state in the total sampled population.
Normal Emotion Excitement Happiness Pressure Confidence Neutral Frequency 14/30 25/30 9/30 22/30 15/30 Percentage 46% 83% 30% 73% 50%

Figure 4.3: Percentage of emotional transitions made while under the normal emotional state in the total sampled population.
Emotional Transition
Neutral Confidence Emotion Pressure Happiness Excitement 0% 20% 40% 46% 60% 80% 100% 30% 83% 50% 73%

Population

From Figure 4.3, it appears that the normal emotional state results in happiness most of the time. This is closely followed by confidence, which is again closely followed by agents feeling neutral. Just under half of the total population of sampled agents became excited with a minority feeling pressured.
Table 4.6: Percentage of emotional transitions made while under the emotional state of anxiety in the total sampled population.
Anxiety Emotion Nervousness Panic Pressure Disappointment Fear Worry Uninterested Frequency 26/30 17/30 19/30 6/30 2/30 21/30 3/30 Percentage 86% 56% 63% 20% 7% 70% 10%

144

Khalil Shihab and Haider Ramadhan

Figure 4.4: Percentage of emotional transitions made while under the emotional state of anxiety in the total sampled population.
Emotional Transition Un-interested Worry Emotion Fear Pressure Panic Nervousness 0% 20% 40% 60% 80% Population 7% 20% 63% 56% 86% 100% Disappointment 10% 70%

From Figure 4.4, we find that while under the emotional states of anxiety, most agents showed signs of nervousness. This is closely followed by evidence of worry and pressure. Just over half of the total population of sampled agents felt pressured with a minority of participants feeling disappointment, un-interested and evidence of fear. As demonstrated in our previous example, conclusions interpreting the tables and graphs above can be made. These conclusions serve as a basis in governing an agents behavior, while under the above emotional states. Values yielded from population of the above study should directly reflect the population of game agents. For example, if an agent is under what we call a normal emotional state, then 83% of all game agents should exhibit evidence of confidence, as depicted in the results above. Likewise, excitement should follow the agents normal emotional state in 66% of the game agent population. At this point it is important to discuss what exactly denotes confidence and excitement in a game agent. The above study has only given possible traits and emotional transitions a game agent should follow. How the agent chooses to demonstrate this is entirely dependent on the context of the game and situation at hand. The above results dictate that an agent under a normal emotional state should act with confidence, but such a statement can be exhibited differently in various types of games. It is up to the game developer to decide on what the agents task and situation are, and the specifics of acting confidently in this particular case. Two examples of possible scenarios will be illustrated below. One will depict an agent acting under normal emotions and the other will depict an agent acting under the influence of anxiety. It is at this point that game developers can get creative in their design of both scenarios and agents actions, though both of these should reflect the data yielded in the study above. Specifics of possible scenarios are given below: Example 1 Game Type: Survival Horror Scenario: Agent is in a room and blocked off by opposing agents Emotional State: Normal. Trait exhibited: Confidence. Emotional Transition: Excitement The agent has already defeated a number of enemy agents and is feeling very confident. He has enough ammunition and the appropriate weapon to dispatch of this threat. Confidently, the agent fires calmly, carefully and successfully neutralizes the threat. He enters the next room feeling excited for what lies ahead. Characteristics portrayed in this scenario should follow the results yielded in the above study, that is, 83% of game agents in the above situation or situations similar to it should exhibit confidence,

Modeling and Evaluating of Emotional Processes

145

83% should display signs of clear and calm thinking and 83% of all game agents should achieve a positive outcome. Finally, an emotional transition to excitement should occur in 46% of the total game agent population. Note how the above scenario plays out. Direct comparisons can be made between it and the results yielded by the questionnaire responses. Again it is important to take note of the scenario provided and the type of game being played. This is only one of a limitless amount of possible scenarios demonstrating confident acting agents while under a normal emotional state. Example 2 Game Type: Survival Horror Scenario: Agent is in a room and blocked off by opposing agents. Emotional State: anxiety Trait exhibited: Nervousness Emotional transition: Panic The agent has had trouble defeating enemy agents thus far in the game and is feeling uncertain. He has not got sufficient ammunition, nor does he have appropriate weapons to dispatch of this threat. The agent fires nervously as carelessly and misses often. The agent begins to panic and is finally overwhelmed by his attackers and dies. Characteristics portrayed in this scenario should follow the results yielded in the above study, that is, 80% of game agents in the above situation or situations similar to it should exhibit uncertainty, incorrectly completed tasks should be apparent in 66% of the game agent population (i.e. missing the enemy agent) and 96% of all agents should achieve a negative or unfavorable outcome. Finally, an emotional transition to panic should occur in 56% of the total game agent population. Finally, let us now apply the first of the above scenarios to our emotional decision making model. The emotional decision making model will show a graphical representation of how the above two scenarios play out, illustrating all decisions and actions made with every step or iteration.

5. Conclusion
This paper has attempted to address the possibility of incorporating emotion in game agents. It begins by proposing a model, the emotional decision making model, and then applying emotional data to drive our emotional decision making model. Emotional data was gathered via an emotional questionnaire aimed at identifying particular decisions and actions made while under certain emotional states. The emotional states explored were the normal emotional state and anxiety. The results of these were then studied and scrutinized and emotional traits were identified. The results achieved by the questionnaire were then applied to the emotional decision-making model and examples of it in action were explored. Future research in the field of emotional decision making for game agents could span into a various directions. Firstly, a thorough analysis of decisions and actions while under particular emotional states could be carried out. This paper only addresses four emotions. There are countless emotions, all present in our everyday lives that would benefit gaming and game agents. Secondly, a gender specific study on emotional characteristics and emotional transitions could be carried out. Males may be more susceptible or more likely to show evidence of particular emotional characteristics as opposed to females and vice versa, therefore doing such a study would help improve the believability of the game agents decisions and actions. Thirdly, the emotional decision-making model could be integrated with other decision-making models. This paper considers emotion as the key factor in decision making, however in reality there is a number of key factors that are involved. By combining these, a more realistic and advanced decision-making model could be developed. Finally, the emotional decision making model could be implemented in a game situation. The model and data are already available, implementation would further confirm the ideas explored in this thesis.

146

Khalil Shihab and Haider Ramadhan C. Bererton, State estimation for game AI using particle filters. In: D. Fu, S. Henke and J. Orkin, Editors, Challenges in Game Artificial Intelligence: Papers from the 2004 AAAI Workshop, AAAI Press, Menlo Park, CA (2004), pp. 3640 Technical Report WS-04-04. D. Fielding, M. Fraser, B. Logan and S. Benford, Reporters, editors and presenters: Using embodied agents to report on online computer games. In: N.R. Jennings, C. Sierra, L. Sonenberg and M. Tambe, Editors, Proceedings of the Third International Joint Conference on Autonomous Agents and Multi-Agent Systems (AAMAS 2004) vol. 3, IEEE, New York (2004), pp. 15301531. J. Orkin, Symbolic representation of game world state: Toward real-time planning in games. In: D. Fu, S. Henke and J. Orkin, Editors, Challenges in Game Artificial Intelligence: Papers from the 2004 AAAI Workshop, AAAI Press, Menlo Park, CA (2004), pp. 2630 Technical Report WS-04-04. Wright, I.; Sloman, A.; and Beaudoin, L. 1996. Towards a design-based analysis of emotional episodes. Philosophy Psychiatry and Psychology 3(2):101137. Abdennour El Rhalibi, Nick Baker and Madjid Merabti. 2005. Emotional agent model and architecture for NPCs group control and interaction to facilitate leadership roles in computer entertainment, ACM International Conference Proceeding Series; Vol. 265, Proceedings of the 2005 ACM SIGCHI International Conference on Advances in computer entertainment technology, Pages: 156 163. A. Sloman and R. Poli, sim_agent: A toolkit for exploring agent designs. In: M. Wooldridge, J. Mueller and M. Tambe, Editors, Intelligent Agents II: Agent Theories Architectures and Languages (ATAL-95), Springer-Verlag, Berlin (1996), pp. 392407. van Lent, M.; Laird, J.; Buckman, J.; Hartford, J.; Houchard, S.; Steinkraus, K.; and Tedrake, R. 1999. Intelligent agents in computer games. In Proceedings of the Sixteenth M. Leesa, B. L. and G.K. Theodoropoulos, Agents, games and HLA, Simulation Modelling Practice and Theory, Volume 14, Issue 6, 2006, Pages 752-767. Gordon, E., and Logan, B. 2004. Managing goals and real world objects in dynamic environments. In Davis, D., ed., Visions of Mind: Architectures for Cognition and Affect. E. Gordon and B. Logan, Game over: You have been beaten by a GRUE. In: D. Fu, S. Henke and J. Orkin, Editors, Challenges in Game Artificial Intelligence: Papers from the 2004 AAAI Workshop, AAAI Press, Menlo Park, CA (2004), pp. 1621 Technical Report WS-04-04. Robert Axelrod. 1984. The Evolution of Cooperation, Basic Books, Inc., New York, 1984. OBrien, J. 2002. A flexible goal-based planning architecture. In Rabin, S., ed., AI Game Programming Wisdom. Charles River Media. 375383. David Freeman. 2004. Creating Emotion in Games, New Riders Publisher, ISBN: 1592730078. M. Cavazza, S. Bandi and I. Palmer, Situated AI in video games: integrating NLP, path planning and 3D animation, Papers from the AAAI 1999 Spring Symposium on Artificial Intelligence and Computer Games, AAAI Press, Menlo Park, CA (1999), pp. 612 Technical Report SS-99-02. E. Gordon and B. Logan, A goal processing architecture for game agents, Proceedings of the Second International Joint Conference on Autonomous Agents and Multi-Agent Systems (AAMAS 2003), ACM Press, Melbourne (2003), pp. 998999. Y. Gal and A. Pfeffer. Modeling agents' beliefs using networks of innocence diagrams. Technical Report TR-06-03, Harvard University, 2003. Falk, Armin & Fischbacher, Urs, 2006. "A theory of reciprocity," Games and Economic Behavior, Elsevier, vol. 54(2), pages 293-315, February Wu, S. H. and Soo, V. W., Game Theoretic Approach to Multi-Agent Coordination by Negotiation with a Trusted Third Party, In Proceeding of the Third International Conference on Autonomous Agents, 1999.

References
[1] [2]

[3]

[4] [5]

[6] [7] [8] [9] [10] [11] [12] [13] [14]

[15] [16] [17] [18]

Modeling and Evaluating of Emotional Processes [19] [20]

147

[21] [22]

[23] [24] [25]

[26]

M. R. Genesereth, M. L. Ginsberg, J. S. Rosenschein: Cooperation without communication. In: Proc. AAAI-86, 1986, S. 51 57. J. Anderson, A generic distributed simulation system for intelligent agent design and evaluation. In: H.S. Sarjoughian, F.E. Cellier, M.M. Marefat and J.W. Rozenblit, Editors, Proceedings of the Tenth Conference on AI, Simulation and Planning, AIS-2000, Society for Computer Simulation International (2000), pp. 3644. J. Baxter and R.T. Hepplewhite, Agents in tank battle simulations, Communications of the ACM 42 (1999) (3), pp. 7475. D. Fielding, M. Fraser, B. Logan and S. Benford, Extending game participation with embodied reporting agents, Proceedings of the ACM SIGCHI International Conference on Advances in Computer Entertainment Technology (ACE 2004), ACM Press, New York, USA (2004), pp. 100108. A. Khoo and R. Zubek, Applying inexpensive AI techniques to computer games, IEEE Intelligent Systems 17 (2002) (4), pp. 4853. J.E. Laird and M. van Lent, Human-level AIs killer application: Interactive computer games, AI Magazine 22 (2001) (2), pp. 1526. M. Lees, B. Logan, T. Oguara, G. Theodoropoulos, Simulating agent-based systems with HLA: The case of SIM_AGENTPart II, in: Proceedings of the 2003 European Simulation Interoperability Workshop, European Office of Aerospace R&D, Simulation Interoperability Standards Organisation and Society for Computer Simulation International, 2003. Tak-Wai Chan, et al (Eds.): DIGITEL 2007, The First IEEE International Workshop on Digital Game and Intelligent Toy Enhanced Learning, Proceedings, 26-28 March 2007, Jhongli, Taiwan. IEEE Computer Society 2007.

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.148-156 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

Uncertainty Analysis of the Measurement Analogue Electronic Converters During the Design Stage
H. Mechergui ESSTT (University of Tunis), 5 AV Taha-Hassein Tunis, Tunisia Laboratory & Research groups: C.3.S E-mail: hafidmecher@yahoo.com I. Stantchev U.T.S : (Professeur) Universit Technique de Sofia E-mail : rds@tu-sofia.bg Abstract In this study, we present a metrological analysis in order to determine the errors which accompany the design stage of an electronic measurement converter. Indeed, according to the electronic structure of the system, we determine its conversion function. We evaluate respectively the instrumental and systematic errors while holding account of the electronic parameters i of the measuring converter. We design a Miller integrator with three frequency ranges, and then we treat the metrological errors which affect the latter. After the stage of calibration, we seek the principal component of the error. The latter is evaluated according to the parameters i which are subjected to the random influence quantities such as the temperature, ageing, and power supply disturbances.... The converter study is carried out in the frequency range where the converter has a conversion function independent of the frequency. The used calculation procedure can be exploited for the evaluation of the metrological errors in other electronic measurement systems. Keywords: Conversion function, Basic error component, random influence quantities, calibration method, Maximum sensitivity parameter, Secondary errors.

1. Introduction
The estimate of the metrological errors is a very significant stage when designing electronic measurement converters. It is noted that the studies presented in this field until now are insufficient [1] and this in spite of the great existing modern possibilities for the automation of the engineers work. Indeed, the work carried out is limited to the instrumental error analysis affecting the measurements [2,3,12,13] and do not take account of the large actuating quantities that are able to disturb the accuracy of an instrument. The general goal of this work is to present a detailed metrological analysis, to specify a measurement system or a measurement procedure and then to make a practical implementation of the various errors affecting the converter.

Uncertainty Analysis of the Measurement Analogue Electronic Converters During the Design Stage

149

We also hold account of several random influence quantities which affect the components, intervening in the design of the converter. In addition, to calculate the principal error component, we take account of the frequency variability of the quantities to be measured, of the environmental conditions and the measurement technique procedure. The errors, affecting each part of the measurement system, must be given when designing the electronic converter. We determine the principal component of the error by making recourse to the error methods calculations [1, 11]. The calibration of the analog electronic measuring converters is done by the regulation of variable parameters, for which we can adjust the desired output value.

The methodology to follow for the determination of the principal component of the error is described by the flow chart of the figure .1.
Figure.1: Flow Chart illustrating the converters principal error and its derivatives

2. Error evaluation method of electronic analog converters

with: is the principal component of the error, 0 is the component of the error where the converter conversion function is independent of the frequency. i is the remnant error, v is the ageing error, r components,

This last illustrates the components of the error intervening in the prediction of the converter principal error. This error is given by the following expression =0 + f (1)

is the residual error, m is the systematic error, t is the error due to the tolerance of the electronic

frequencies, h is the error due to the high frequencies, B is the error due to the noise, d is the shift

is the error component taking account of the frequency, b is the error due to the low

150

H. Mechergui and I. Stantchev

error at the output of the converter, r 0 is the remnant error while making a reset of the converter, iv

is the intrinsic error, T is the error due to the change of the temperature, A is the error due to the power supply variations. It is admitted that the frequency field of the converter is divided, respectively into low, average and high frequency. For the average frequency we suppose that the conversion coefficient of the converter is a real number. Indeed the converter can be represented by the block diagram of the figure.2. In sinusoidal mode the converter has a complex conversion function such as:
K ( jf ) = y = K (i , f )e j (i , f ) x

(2)

or
K ( i , f ) = Y X

With i electronic parameters of the converter and i = 1,2,3,...n . The equation (3) represents the conversion function module of the measurement system. This conversion coefficient depends on the electronic parameters i intervening in the converter design and on the frequency f .
Figure 2: Schematic block diagram of the converter

(3)

0 , independent of the frequency, and an error f depending on f . This error is written as: = 0 + f

For a normal operating conditions, the principal error can be represented as a sum of an error (4) (5)

We give also: K KN = KN

where K N is the nominal conversion coefficient and K is the real converter coefficient. For the average frequencies the conversion coefficient is noted K 0 and it is independent of the frequency, so the error will be: K KN 0 = 0 (6) KN Other that the average frequency we have an error of: K K0 K = = 1 (7) K0 K0 K If we put: M = we obtain: = M 1 , with M = f (i , f ) which represents the deformation K0 frequency coefficient. If we substitute (6) and (7) into (5) we obtain: (1 + ).K 0 K N K 0 K N = = + .(1 + 0 ) KN KN or:

Uncertainty Analysis of the Measurement Analogue Electronic Converters During the Design Stage

151

(8) From the expression (8), we can study the imperfections presented by the converter, which are generally due to the tolerances, the ageing of the components and the additional errors caused by the temperature and the voltage supply. The development of the basic error in two principal components is very convenient for the metrological analysis of the measurement analog electronic converters. Indeed, we can evaluate the metrological characteristics of the converters by taking account of the various random influence quantities. If we apply the rule of the differential logarithm, relating to the function (3), which contains several parameters [1, 2, 9, 12, 13, 14], we obtain the following equation: n K n K 0 K i = 0 = = i i = K K K q 0 q i =1 i q 0 i =1 i q (9) where
K i = 0 i K i 0

= 0 + + . 0 0 +

effect of the random influence quantities q . The addition of the errors is done according to the information of their type. For the random errors, we treat them in two ways: By the worst case method By an addition of the probabilities. Generally we dont know the distribution law of the random errors. In general we admit a regular law of distribution which gives the worst case. For the probability addition, we use the expression (11) [1]:
n q = k C i i i =1 i q 2

i are the coefficients illustrating the maximum variations of the parameters i under the

(10)

Where k = 1.1 is a coefficient for the confidence probability of p = 0.95 .

(11)

and v is the error of ageing. During the design stage, v has a random influence, because the sign of the relative variation of the time parameter is unknown. If we dont make the calibration of the converter (E.M.A.C), the initial error will have the following form: = M + t . Where M is the systematic error and t is the tolerance error. If we make the calibration of the converter using a standard method, then the conversion rate can be adjusted to its nominal value. Thus, the initial error is reduced to rem value, which represents the total error due to the calibration method: rem = et .

The principal error for the average frequencies can be represented by two components [1]: 0 = i + v ; where i is the initial error immediately after the manufacture of converter (E.M.A.C)

3 Principal error analysis


3.1 Residual error after resetting the measurement system The manufacturer gives in the catalogue the diagram of figure.3 for the canceling of the offset operational amplifier.

152

H. Mechergui and I. Stantchev


Figure 3: Schematic diagram of the amplifier zero offset

If the cancellation of the output is made using a digital voltmeter with a tolerance of 10 V , then for a voltage output of U sl = 0.157 V and a frequency of f = 20 Hz , the remnant error will be: (12) It is noticed that this error is very weak and it can be neglected. It is noted that during this measuring operation the input voltage must be maintained constant. 3.2 Calibration of the Measurement Converter We suggest making the calibration of the Miller integrator represented by the figure.4
Figure 4: Schematic diagram of the Miller integrator with three ranges

L0 =

U s 0 10.10 6 .100% = 100 = 0.0064% 0.157 U sl

and having the following three frequency ranges of: (20 200 ) Hz , (200 2000 ) Hz and (2000 20000 ) Hz , an input voltage of U im = 1V . We apply a sinusoidal signal to the input of the converter, because the measuring apparatus is more precise only by using sinusoidal signals. The input of the converter is controlled by a frequency meter and a digital voltmeter and its output is also controlled by a digital voltmeter. The calibration of the Miller integrator is done for the three ranges, because the various capacitors can have various accuracies. The calibration of the first range is done for a frequency of f = 50 Hz . For the others ranges, the integrator will be calibrated for the low frequencies of each range. The module of the Miller integrator conversion function, without taking account of the frequency errors, is given as:

Uncertainty Analysis of the Measurement Analogue Electronic Converters During the Design Stage
K F = 1 2RC

153

(13) (case of an ideal integrator). Thus by applying to the input a signal having an RMS value of: U i = 1V , with a frequency of: f = 50 Hz , for C = 1F and R = 7960 , the output voltage will be:
U so = Ui K F = 1 1 2 50.7960.1.106 V = 0.399887

For the second range at a frequency of and C = 0.1 F we have: 1 Uso = Ui KF = 1. = 0.999717 V 2 *200*7960 0.1.106 * . The same result is obtained for the calibration C = 0.01F . As it was already mentioned, after the calibration the initial error of the third range where of the electronic analog linear converter, is reduced to a remnant error. For a given basic error 0d , in
f = 200 Hz

the range of the average frequencies, the residual error r must satisfy the following condition:
r 0d
N ; N = 3 5 , where N [1,2,13] is a number giving the precision wanted versus the standard

instrument. According to the chosen calibration method, the instrumental error is determined by the accuracy of the used digital voltmeters (the frequency meter has a higher accuracy compared to the voltmeters and its error can be neglected). According to the method of the worst cases, the errors of both voltmeters are added and if we accept an accuracy class of 0.1%, the error will be: r = 0 = 0.1% + 0.1% = 0.2% . The use of only one digital voltmeter, with which we measure the input voltage and the output voltage, is not recommended because the stability of the generator is not guaranteed during the measurement time. Whats more, the voltmeter itself has an internal resistance which can change the impedance of the circuit when it is connected either at the input or the output of the converter.
Table 1: Design characteristics of the resistance R
Tolerance % 0.1 Ageing %1000h 0.1 TKP K-1 50.10-6 Power (mW) 350

Type TR161

Table 2:

Design characteristics of the capacitors


Type TGL5163 KWGeS90000 Tolerance % 0.5 0.5 Ageing %1000h 0.5 0.3 TKP K-1 -150.10-6 -150.10-6 Nominal voltage (V) 63 160

Designation C1, C2 C3

The calibration of the analog electronic measuring apparatus is done by the regulation of a variable parameter, for which we can adjust the desired output value. The value of the variable element is given for the greatest variation of a given parameter i by holding account of the two instrumental errors (ageing and the tolerance).
i i = i i max i v i (1 + a c ) t

with a c 0 and which constitutes a security coefficient. The conversion function of the ideal Miller integrator is:

(14)

154
& K F e 2 = 2fRC
j

H. Mechergui and I. Stantchev

(15)

The conversion rate module of (15) is: 1 K F = 2fRC The parameters which have a direct influence on the nominal conversion coefficient are
C . We have selected the resistor R of type TP161 with the data indicated in table.1.
R

(16) and

The possible maximum derivations, according to (14), with a safety reserve of a c = 50% will R R R = + (1 + a c ) = 0.1 + 0.1 (1 + 0.5) = 0.003 R max R c R t 100 100 be:
C C C 0.5 0.5 = + (1 + ac ) = + (1 + 0.5) = 0.015 C max C c C t 100 100

The capacitors C1 , C 2 , C3 are selected with the characteristics given in table.2.

The coefficients which represent the maximum sensitivity of each circuit element are given according to the formula as follows: for R we have:
1 =
K F R R 2 f RC 1 R = = 1 K 1 F 2 f CR 2 ,

2 = F = 1 C K F and for C we have .

Thus, the maximum value of the conversion rate will be:


K F = 1 R C 2 f R ' (1 ) C (1 ) C R

(17) The value of the resistance R', which gives the nominal conversion rate K F = K N , can be deduced from the expression (17): 1 R == R '= R C R C 2 f K F (1 ) C (1 ) (1 ). (1 ) C R C R (18) After the substitution in the equation (18) we determine the maximum value of the resistance: 7960 R' = = 8105.5 (1 0.003).(1 0.015) .

minimal value of the resistance will be: 7960 R = = 7818.9 . The variable part of the resistance is R" = R C (1 + 0.003)(1 + 0.015) 1 + 1 + R C determined by the difference between the maximum value and the minimal value: R = R' R" = 8105.5 7818.9 = 286.6 . We have chosen R = 390 with a tolerance of 10% . The constant value of fixed resistance is R = 7770 . The variable component does not have a good accuracy but it represents a rate of 4.7 % from the total resistance and its effect will be negligible.
3.3 Ageing error

The

According to the principle used in [1,11], the ageing error is defined by the following formula:

Uncertainty Analysis of the Measurement Analogue Electronic Converters During the Design Stage
v = 1 + 2 C v R v
R C

155

(19)

3.4 Determination of the principal error for the average frequencies [1,13,14] By considering the data of tables.1 and 2 and the initial error, the addition of the random errors gives the principal error, for an average frequency:
2 0 = 1.1 0i + 1

R C + 2 2 )2 2 R C = 1.1 (0.002) + (0.001 + (0.005) = 0.006 .

We admit a distribution permanent law of probability P=0.95. The obtained error is: 0 = 0.6% . This error is not imposed by the parameters of the converter. This value can be obtained without having recourse to components with high metrological characteristics. 3.5 Additional error due to the temperature This error is one among the additional errors of the measuring apparatus. Indeed, it can be most significant among the other errors. In fact, we determine it for an interval of temperature variation compared to its nominal value. Generally the interval of the temperature is of T = 10C. Mainly it is a systematic error, but during the design it can appear also as random error when the manufacturers of the precision resistors propose values of tolerance to double sign ( ) [1]. For a variation of T = 10C and the selected type of resistance TR161 we obtain: Rt = TKR.T = 50.10 .10 = 5.10 . The temperature coefficient of the capacitors of type TGL 5163 and KWG S90000 is negative and it is of
T KC = 150.10 6 / C.
=T .T = 150.10 6.10 = 1.5.10 3 Thus, for T = + 10C , We obtain: T (+) KC , and 6 3 =T .T = 150.10 .( 10) = 1.5.10 for T = 10C we have: T (+) KC With close calculation, we must add the systematic error with the random error. In fact in this case we make an algebraic sum and for 4 3 T = + 10C we obtain: T (+) = R.t (+) + T (+) = = 5.10 1.5.10 = 0.002 ou 0.2%

For T = 10C we have: T () R T() The shift error, due to the temperature, is also an additional error which appears under the influence of the temperature or a dissymmetry on the inputs of the operational amplifier. Its calculated also for T = 10C . If the input resistances are not equal then a drift current due to the temperature exists and it is value can be calculated [1, 11] such as: (20) Concerning the chosen, operational amplifier TLO81AC, the temperature coefficient of the bias current is of
I (T ) = 2.5 PA / C.
U i 0( I ) (T ) = R . Ii 0 .T +R I i 0 ( ) T R

= +

= 5.104 +1.5.103 = 0.002= 0.2%

Then, we calculate the dissymmetric coefficient current according to .


4

the following relation: By replacing in (20) we obtain:


U
i0(I )

I 5 I i 0(T ) = i 0 . I i (T ) = .2.5 = 0.42 PA / C I 30


12

( T ) = 7960 * 0 . 42 * 10

* 10 + 7960 * 5 . 10

12

* 5 . 10

3.345.10 8.V .

The shift relative error due to the temperature is: U i 0( I ) (T ) Ui 0 (T ) = .100% = 3.345.10 8100% = 3.3.10 6 % . This error can be neglected. U iN

156

H. Mechergui and I. Stantchev

4. Conclusion
The metrological analysis carried out in this work made it possible to determine the errors which accompany the design stage of a measurement converter. Indeed, we take account of the influence of all the converter design parameters. The errors due to imperfection of the converter and the adopted method depend on the several electronic elements which constitute the measurement system. The used procedure has given an error of 0 = 0.6 % . This good result is obtained without recourse to components of high metrological characteristics. Elsewhere, we note that each electronic component is affected by the random influence quantities such as the temperature, the ageing and even the variation of the power supply feeding the system. By holding account of these influence quantities we notice that the additional error due to the temperature is considerable, and the dissymmetry error of the amplifier, which is depending on the temperature, can be neglected.

Refferences
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] STANTCHEV I., 1994 lectroniques analogiques des appareils de mesure, Universit Technique de Sofia, 1994 (ISBN 954-438-094-9). Measurement Systems, Fourth edition, Application and Design, International edition 1990, Printed in Singapore, ISBN: 0-07-017338-9 Howard M. Berlin/Frank C.Getz,Jr Principles of Electronic Instrumentation and Meaurement, Merrill Publishing Company, 1995, ISBN 0 675 20449 6., printed in U.S.A. Dominique Barchiesi, Mesure physique et instrumentation, Ellipses Editions marketing 2003, ISBN 2-7298-1426-4. Franois Manneville, Esquieux Jacque Thorie du signal et composants, Dunod, paris 2000, ISBN 2 10 004812 0. Chevalier Raymond, Conte Ren, Elements de mtrologie, Les ditions la libert InC- Quebec, Erolles Editur, Paris 1978, ISBN : 0-88609-017-X Malvino N, Electronic principles, International Editions 1993, McGraw- Hill, ISBN : 0-02800845-6, printed in Singapore. C.D. McGillen, J.I Aunion, and K.Yu signals and noise in evoked brain potentials IEEE trans .BRomed .Eng, vol. BME-32, PP. 1012-1016 Dec .1986. Jerzy, Kolonko.A, Accurate measurement of power, energy, and true RMS voltage using synchronous counting, IEEE transaction s on instrumentation and measurement, vol. 42, No.3 June 1993. TT- Lang llectronique dans les techniques de mesures, technique lingnieur R430(1984). G;Ash et Coll. Les capteurs en instrumentation industrielle. Dunod, collection EAA, Paris 1998, 864 pages . http://www.google.com/search?hl=fr&q=cours+en+instrumentation+et+mesurer= http://www.gpa.etsmtl.ca/cours/gpa668/Acetates/Chap1_668_A05.pdf(1) http://www.google.com/search?q=calcul+d%27erreur+dans+les+syst%C3%A8mes+de+mesure &hl=fr&lr=&start=10&sa=N(3)

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.157-163 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

Word-Command and Ultrasonic Sensors as an Electric Wheelchair Controller


Mohamed Fezari University of Annaba, Faculty of Engineering Laboratory of Automatic and Signals Annaba E-mail: mohamed.fezari@uwe.ac.uk Nasr Eddine Debbache University of Annaba, Faculty of Engineering Laboratory of Automatic and Signals Annaba E-mail: ndebbache @yahoo.fr Karim Hamza University of Annaba, Faculty of Engineering Laboratory of Automatic and Signals Annaba E-mail: hamzakrimo@yahoo.fr Abstract The majority of electric wheelchair users are able to operate a joystick to control the chair, however many more quadriplegic users need some other means of controlling the wheelchair. The aim of this work is to implement an interesting application using small vocabulary word recognition system. The adopted model is based on grouping a microcontroller with a speech recognition development kit for isolated word and speaker dependent. The resulting design is used to control a wheelchair for a handicapped individuals based on a vocal command. In order to gain in time design, experiments have shown that the best way is to choose a speech recognition kit and to adapt it to the application. The input of the system are a set of eight Arabic words used to control the movement of an electric wheelchair, a vector of information on the context given by a set of sensors and a joystick for security actions; The output is a corresponding command. The system is developed in order to be installed on the wheelchair. Therefore it should be easy to carry, no bulky, with low power consumption, and easy in operation. Index Terms: Voice command system, microcontroller, ultrasonic sensors.

1. Introduction
With the exponential increase in computing power and shrinkage of size and cost, the RISC (Reduced Instruction Set Computer) component witch is microcontroller is finding its way into every aspect of human life. Its used as examples in a wide spectrum of applications such as auto assembly plant, data handling and acquisition systems, waveform generation, stepper motor control, robotic control, and smart sensor systems [1]. Moreover, speech recognition has a key role in many application fields [2][5]. Various studies made in the last few years have given good results in both research and

Word-Command and Ultrasonic Sensors as an Electric Wheelchair Controller

158

commercial applications. Also thanks to the fact that increasingly faster computers have become accessible for simulation and emulation of the new components to a growing number of users [6]-[8]. This paper proposes a new approach to the problem of the recognition of isolated words, using a speech recognition development kit from sensory and implements it for vocal command of a handicapped person wheelchair (HPWC) [9]-[12]. The increase in complexity as compared to the traditional approach is negligible, but the system achieves considerable improvement in the matching phase, thus facilitating the final decision. The study is part of a specific application concerning system control by simple vocal commands. It has to be implemented on a portable system and has to be robust to any background noise confronted by the system. The objective of this design is therefore the recognition of isolated words from a limited vocabulary in the presence of stationary background noise. This application is speaker-dependent. It should however, be pointed out that this limit does not depend on the overall approach but only on the method with which the reference patterns were chosen. So by leaving the approach unaltered and choosing the reference patterns appropriately, the application can be made speaker-independent. To enhance the designed system by avoiding obstacles and secure the wheelchair driver, a set of ultrasonic sensors for obstacle detection in addition to a speed engine sensor and a joystick were used [13]-[15]. The application to be integrated in this embedded system is first simulated using MPLAB, then implemented in a RISC architecture microcontroller adapted to a speech recognition development kit Voice Direct 364 (VD364). Experimental tests showed the validity of the new hardware adaptation. Implementation tests of the designed system gave good results within the laboratory experience area.

2. General Description of the System


The designed module as shown in Figure 1 is developed around the following components: The VD364, which is the heart of the vocal command system. A set of ultrasonic sensors to avoid collisions. A joystick to control a vocal misleading command of the wheelchair. And an interface card to control power circuits of the electric wheelchair. These components are controlled by a CMOS-RISC microcontroller from Microchip, a new generation of powerful computation, low-cost, low-power microcontrollers. The system is fed by a battery as a power supply regenerated by an alternator.
Figure1: Block diagram of the designed system.

159

Mohamed Fezari, Nasr Eddine Debbache and Karim Hamza

3. Practical Details
The control module is developed around the VD364 and a set of sensors controlled by the PIC18f252. For best performance, the system gives better results in a quiet environment with the speakers mouth in close proximity to the microphone, approximately 15 to 20 cm. 3.1. Voice Direct 364 (VD364) Voice Direct 364 (VD364) has more capabilities designed for embedded systems. It was designed for consumer telephony products and cost-sensitive consumer electronic applications such as home electronics, personal security, and personal communication. It includes award-winning RSC-series general-purpose microcontrollers plus a line of easy-to-implement chips which can be pin-configured or controlled by an external host microcontroller. The RSC family of microcontrollers are low-cost 8-bit designed for use in consumer electronics. All members of the RSC family are fully integrated and include a speech processor, A/D and D/A converters, ROM as program memory, and RAM circuitry on chip. The RSC-364 also include on chip pre- amplification. The module VD364 is based on: a special microcontroller RSC364, a program memory AT27C512 of EPROM type that holds the main program of word recognition, a reference word storage 24C65 of EEPROM type, and a parallel interface of 16 lines to generate the results of recognition as shown in figure 2. This type of module can perform a full range of speech or audio functions including speech recognition; Speaker verification, speech and music synthesis, and voice record or playback. 3.2. The microcontroller PIC18F252 As an interface between the power circuits of the HPWC and the vocal module VD364, a microcontroller with at least 16 input/output lines and minimum of 4 kilo instructions is needed. Therefore a better choice was the PIC18F252 from Microchip. Its main characteristics are: Program memory of 32 kilo instructions capacity, data memory of 256 bytes capacity, Random Access memory of 1536 bytes capacity, 3 timers to count internal or external events, 5 channel 10-bit A/D Converter, USART interface adapter, and 3 TTL type ports (A, B, and C) providing 23 digital I/O lines. The main function of the microcontroller is to get the information from the VD364 and latch a corresponding binary code on B port. It also detects the beginning and end of the word pronounced by the user. The A port is used to control the power circuits of the HPWC while the C port is used to get information from sensors and joystick. 3.3. Set of ultrasonic sensors In order to avoid and maintain a safe distance from obstacles, a set of ultrasonic sensors is installed around the wheelchair, the microcontroller reads the information from the set of sensors in order to get more knowledge on the environment. The set of ultrasonic sensors are based on Ultrasonic Sensors Modules (MSU05). The MSU05 is a module based on a microcontroller, an ultrasonic transmitter and an ultrasonic receiver sensor of 40 KHz type MURATA. The module is activated by a brief pulse; it sends a signal with frequency 40 KHz pulses. The pulses reach an obstacle and then come back. The module computes the travel time of the pulses; it then generates a pulse with a width proportional to the distance from the obstacle as shown in figure 2. Tow modules are placed in front of the wheelchair in such a way, that the area between 2-3 m in front of the vehicle is covered. And two other modules are placed in left and right side in order to control the left and right turn of the wheelchair. If there is any obstacle that leads to a lock situation in a left or right turn then system predicts this case and avoids taking an action in these cases.

Word-Command and Ultrasonic Sensors as an Electric Wheelchair Controller


Figure 2: Overview of Ultrasonic Sensor System

160

3.4. Joystick In order to avoid any disagreement in the vocal control of the wheelchair, the user can in emergency case use the joystick to stop the action.

4. Description of the Application


The application is based on the development of a vocal command for HPWC, by means of simple vocal messages. It therefore involves the recognition of isolated words from a limited vocabulary. The HPWC specifications are eight commands that are necessary to control the wheelchair: switching on and off the engine, forward movement, backward movement, stop engine, turn left, turn right, speed up the engine and speed it down. The vocabulary chosen to control the system contains a total of eight words. The number of words in the vocabulary was kept to a minimum both to make the application simpler and to make it easier for the user to use. However, this number can be increased if any improvement is necessary such as adding words to control a horn or lights installed on the HPWC. The selected eight Arabic words are from a vocabulary which is used in vocal control of an AGV and where the phonemes are quite different from a word to another. These words are: "Muharek": To switch the engine on or off, if it is on then it will be off and if it is off then it will be on. "Amam": To keep the movement upward. "Wara": To move backward, which means a turn of 180 degree. "Kif": To stop the movement. "Yamine": To make a right turn 90 degree. "Yassar": To make a left turn 90 degree. Sarian : To increase the speed of engine by a step. Batian : To reduce the speed of engine by a step. In order to run a wheelchair safely and comfortably by vocal commands, a set of sensors were added to detect obstacles and avoid misleading [14] and [15]. The developed system WS, the set of sensors, the microphone and the joystick will be installed as shown in Figure 3.

161

Mohamed Fezari, Nasr Eddine Debbache and Karim Hamza


Figure 3: Handicapped Person Wheelchair (HPWC).

5. System Operation
External noise affects the system since it is by nature in movement within the wheelchair. In designing the application, account was taken to reduce the affecting noise on the system at various movements. To do so, the external noise was recorded and spectral analysis was performed to study how to limit its effects in the recognition phase. However this is just done within the experience area. The vocal command system works in two phases: The training phase and the recognition phase or verification phase. In the training phase, the operator will be asked to pronounce say command words one by one. The first word will activate the first output; the second word will activate the second output and so on. During this phase, the operator might be asked to repeat a word many times, especially if the word pronunciation is quite different from time to time. The recognition phase represents the use of the system. In this phase, the system will be in a waiting state, whenever a word is detected. The acquisition step will be activated, and then the parameters of that word are extracted and compared to those of reference words. If there is any matching between a reference word and the user word, the likelihood rate is high, and then the appropriate command will be generated. However, the command taken should not put the user in dangerous position. The system might take a proper decision for example stopping the wheelchair or reduce the speed to avoid collisions of the HPWC (Figure 4). The joystick is used to avoid any misleading in vocal command, hens this input device has higher priority than sensors or voice command.
Figure 4: System phases flowchart.

Word-Command and Ultrasonic Sensors as an Electric Wheelchair Controller

162

6. Results of the Simulation


The PIC 18F252 program was simulated by MPLAB which is a Windows-based Integrated Development Environment (IDE) for the Microchip Technology Incorporated PIC micro microcontroller families, under windows XP as operating system. For a mono speaker, in the training phase, the speaker repeats two times each word to construct the database of referenced words. In the recognition phase, the application gets the word to be processed, treats it, then takes a decision if the word belongs to the eight command-words (referenced words) or not.
Figure 5: the effects of microphone distance on the designed module.
Recognoition rate function of microphone distance 10 8 rates 6 4 2 0
ou ha re Am k em e W ar Ya a m in e Ya ss ar Ki f Sa ria n Ba tia n

d=10 cm d=15 cm d=20 cm

command words

If so, then the corresponding bit on the port B of the PIC18F252 is set to one. Otherwise a bit on port A is set to one, lightning a red LED, which means, the word is not recognized. Many tests on the developed vocal command, were done and the results are shown in Figure 6.

7. Conclusion
In this paper, a hardware design of a special portable vocal command system for a handicapped person wheelchair is presented. The bulky and complex designs have, however, been overcome by exploring new speech recognition kits. Interfacing this special vocal microcontroller to the wheelchair was controlled by the PIC18F252. Thus the program memory capacity is improved in order to design more complex controls, and no need to an AD Converter. The application might be used to enhance AGV in robotics or other type of vocal command system. However, in order to increase the recognition rate, the training and recognition phase should be done in the same area of tests, which means that stationary noise has no effect on the recognition rate. In addition, the sensors types can be improved to play a secondary role in sharing the control of the HPWC.

163

Mohamed Fezari, Nasr Eddine Debbache and Karim Hamza Microchip manual, PIC18F252 Application notes, Microcontrollers, Microchip Technology Inc., 2003. M. R. Brent and J.M. Siskind, The role of exposure to isolated words in early vocabulary development, Cognition, vol. 81, pp. 3344, 2001. J. Glass, J. Chang, and M. McCandless, A probabilistic framework for feature-based speech recognition, In Proc. International Conference on Spoken Language Processing, pp. 2277 2280, 1996. R. A. Cooper, D. K. Jones, S. Fitzgerald, M. L. Boninger, and S. J. Albright, Analysis of position and isometric joysticks for powered wheelchair driving, IEEE Transactions on Biomedical Engineering, Vol 47, no. 7, pp. 902910, 2000. R. A. Cooper, L. M. Widman, D. K. Jones, and R. N. Robertson, Force sensing control for electric powered wheelchairs, IEEE Transactions on Control Systems Technology, vol. 38, pp. 112117, 2000. M. Mazo, F. Rodriguez, J. Lazaro, J. and Al., Wheelchair for physically disabled people with voice, ultrasonic and infrared sensor control, Autonomous Robots, vol. 2, pp. 203224, 1995. J. Huang, N. Ohnishi, N. Sugie, Sound localization in reverberant environment based on the model of the precedence effect, IEEE trans. on Instrumentation and Measurement, vol. 46, no. 4, pp. 842-846, 1997. V. Ramasubramanian and Amitav Das, Text-dependent speaker recognition: A survey and state of the art, IEEE International Conference on Acoustic Speech, and Signal Processing 2006, France. C. A. McLaurin and P. Axelson, Wheelchair standards: an overview, Journal of Rehabilitation Research and Development (Clinical Supplement), vol. 27, no. 2, pp. 100-103, 1990. K. Rao, Rose and A. Gersho, Deterministically Annealed Design of Speech Recognizers and its Performance on Isolated Letters, Proceedings IEEE ICASSP'98, pp. 461-464, 1998. R. D. Schraft, C. Schaeffer, Care-O-bot: The concept of a system for assisting elderly or disabled persons in home environments, Proc. of the 24th Annual Conference IECON98, vol. 4, pp. 2476-2481, 1998. Sensory Data sheet for RSC-364, Sensory Inc., 2001. H. Wang H., T. Ishimatsu, and J. Mian, Self-localization for an electric wheelchair, JSME International Journal, Series C- Mechanical SystemsMachine Elements and Manufacturing, vol. 40, no. 3, pp. 433438, 1997. S. L. Oviatt, P.R. Cohen, Multimodal interfaces that process what comes naturally, Communication of the ACM, Vol. 43, no. 3, pp. 45-53, 2000. R. C. Simpson, D. Poirot, F. Baxter, The Hephaestus smart wheelchair system, IEEE Trans. on Neural Systems and Rehabilitation Engineering, vol. 10, no. 2, pp.118-122, 2002.

References
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15]

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.164-186 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

Comparing the Accuracy of Simulation Model with Local Area Network, Wide Area Network and Test-Bed for Remote Data Transfers Measurement
Mohd Nazri Ismail Faculty of MIIT, University Kuala Lumpur, Malaysia Abdullah Mohd Zin Faculty of Computer Science, UKM, Malaysia Abstract We present a novel approach for the measurement of one-way delays and throughput between network nodes in heterogeneous environment. This research investigates performance evaluation of remote data transfers on heterogeneous services and technologies environment. We propose an enhanced equation to evaluate the performance of network traffic management via Little Law and Queuing theory to improve the evaluation algorithm. To get accuracy results on the performance of simulation model, we measure (verify and validate) data from lab experiment. We use network management tool to capture those data and Ping Plotter application (network analyzer) to generate traffic. As a result, this simulation model can provide a good approximation of the real traffic (oneway delays and throughput) observed in the real network environment such as Local Area Network (LAN) and Wide Area Network (WAN). Through laboratory and field experiments, it shows that the model via simulation is capable of approximating the performance of remote data transfers over heterogeneous services and techniques within a minimum error range.

1.0. Introduction
Considerable research has been conducted to model and quantify the performance of heterogeneous services and technologies (e.g [25], [26], [27]). Accurate measurements and analyses of network characteristics (remote data transfers) are essential for robust network performance and management. Queuing theory [3] has been used as an effective tool to model performance in several technical and social contexts. Evaluating the performance of a computer networking usually involves constructing an appropriate model to predict the heterogeneous environment behaviour via simulation model. The heterogeneous environment model is then analyzed and simulated using mathematical techniques. For example, several flow-level network traffic models have been proposed to describe/stimulate [21], [23], [24]. These models have been used to study fairness, response times, queue lengths and loss probabilities under different assumptions and using a variety of mathematical techniques. Queuing theory has been widely used to model and analyze the network performance of complex systems involving services, communication systems, computer networks and vehicular traffic. In contrast to other works in the literature (e.g., [7], [8], [9], [31]), we developed simulation model to measure the performance of heterogeneous environment. Our model can be used to generate representative packet traffic (one-way delays and throughput) in a live network environment or in a simulated environment.

Comparing the Accuracy of Simulation Model with Local Area Network, Wide Area Network and Test-Bed for Remote Data Transfers Measurement

165

The significant of this study was to develop a simulation model to measure the performance of one-way delays and throughput in heterogeneous network environment using Queuing theory. This model could assist network administrators to design and manage heterogeneous network systems. This simulation model can be used in various services and technologies to measure heterogeneous environment. Therefore, this simulation model is designed to: i) predict the performance of various services (e.g. video, audio, voice and message) in order to aid technology assessment and capacity planning; ii) predict the expected behavior of new services and designs through qualitative or quantitative estimates of network performance; iii) assist network administrator to prepare, propose, plan and design network topology more effective and systematic; and iv) conduct What-If analysis for evaluating heterogeneous network environment performance. Moreover, in the future, the integration of data and communication services, almost every Internet Ready device will be a communicable device [11]. With the availability of this infrastructure, users are now demanding and expecting more services [19], [20]. Convergence is pushing towards an environment that requires new investment in infrastructure and able to support the delivery of rich services (various services), applications and content [17], [21], [5]. Network deployment is growing increasing complex as the industry lashes together a mix of wired and wireless technologies into large-scale heterogeneous network architecture and as user applications and traffic continue to evolve [2]. The successful evolution of the Internet is tightly coupled to the ability to design simple and accurate models [6]. Many factors may contribute to the congestion of network interface, such as a heavy load in the network that usually generates higher traffic. Once the number of requests exceeds the maximum capability of network, many clients will not able to receive responses from the network [1]. Thus, this research is critical to be conducted in order to predict and measure of remote data transfers in heterogeneous environment.

2.0. Problem Statements


In the 21 century, a network infrastructure is based on multi-service implementation over convergence of network medium such as ISP, PSTN and GSM [12], [15]. Availability of various services has produced multi-traffic in network infrastructure. Therefore, multi-traffic in the network infrastructure has become more complex to observe and analyze [13], [16], [17]. Today, retrieving and sending information can be done using a variety of technologies such as PC, PDA, fix and mobile phones via the wireless, high speed network, ISDN and ADSL lines that are more prone to heterogeneous environment, but unfortunately the optimal capability of technologies are not fully realized. The main factors of network congestion are related to network design and bandwidth capacity [18]. Nevertheless, few studies have been conducted to evaluate the application of computer network technologies and services over heterogeneous environment especially in Higher Education Institutes. Algorithms for actively measuring network physical and available bandwidths have been researched for many years. Many tools have been developed, and only a few tools have successfully achieved a close estimation of network bandwidths [27]. Therefore, retrieving and sending information over heterogeneous environment using convergence of technologies in Higher Educational Institutes should be analyzed and evaluated via simulation model. We have setup a pilot test-bed (Lab environment) and real network environment to analyze and measure of network traffic utilization at University of Kuala Lumpur in Malaysia. This study posits several research questions: i) what is the performance level of the remote data transfers; and ii) Is the simulation model for evaluating and measuring the heterogeneous environment performance effective?

3.0. Methodologies
Whatever modeling paradigm or solution techniques in heterogeneous environment model development are being used, the performance measures extracted from a simulation model must be a

166

Mohd Nazri Ismail and Abdullah Mohd Zin

good representation of the real network environment. Inevitably, some assumptions must be made about the real network in order to construct the heterogeneous environment model. Figure 3.1 shows the overall framework of the simulation model. There are four performance techniques to validate the simulation model: i) graphical representation; ii) tracing; iii) parameter variability; and iv) predictive validation. In addition, there are two techniques to judging how good a model is with respect to the real network: i) it must ascertain whether the simulation model implements the assumptions correctly (model verification); and ii) assumptions which have been made are reasonable with respect to the real network (model validation). Comparison with a real network is the most reliable and preferred method to validate a simulation model (refer to Figure 3.2). Assumptions, input values, output values, workloads, configurations and network system behaviour should all be compared with those observed in the real network.
Figure 3.1: Simulation Model Development Methodology

Figure 3.2: Simulation Model Verification and Validation Methodology

Comparing the Accuracy of Simulation Model with Local Area Network, Wide Area Network and Test-Bed for Remote Data Transfers Measurement

167

4.0. Proposed Simulation Model Development for Remote Data Transfer


Many different types of modeling and simulation applications are used in various disciplines such as acquisition, analysis, education, entertainment, research and training [14]. In the Figure 4.1, theoretical model is based on a random distribution of service duration. Request defines the way clients use the computer network to request services, while, Response represents the way clients receive services from the server. Simulation model is divided as follows: i) to study physical of real heterogeneous network environment; ii) transform physical of real heterogeneous network environment into logical model; and iii) develop and implement the heterogeneous simulation model. 4.1. Physical Model of Real Heterogeneous Network Environment Before we start to develop simulation model of heterogeneous network environment, we need to define the situation of heterogeneous environment in real world. Figure 4.1 shows the network heterogeneous environment in real world. Then we need to transform from heterogeneous environment in real world into logical model. The logical model is the phase where mathematical techniques are used to stimulate heterogeneous environment.
Figure 4.1: Real Heterogeneous Network Environment at Main and Branch Campus

4.2. Logical Model of Heterogeneous Network Environment Figure 4.2 depicts the open queuing network based on M/M/1 will use to develop logical model of heterogeneous network environment for remote data transfers. Queuing theories are powerful enough to include many different combinations [1]. Parameters like bandwidth capacity, size of packet services and distances between two networks are used to characterize the application traffic. The logical model is the important area need to define which mathematical techniques should be used in development of heterogeneous environment.

168

Mohd Nazri Ismail and Abdullah Mohd Zin


Figure 4.2: Logical model of Heterogeneous Network Environment at Main and Branch Campus

4.3. Development of Heterogeneous Network Environment Model This section describes a simple analytical queuing and little law theories that capture the performance characteristics of remote data transfer operations. A link refers to a single connection between routers and hosts. The link bandwidth is the rate at which bits can be inserted into the medium. The faster bandwidth the more bits can be placed on the medium in a given time frame [22]. At this stage, we assume the data are transported between the two network sites (source and destination) as previously shown in Figures 4.1. Table 4.1 shows the parameters that have been used in the model development. In open queuing network, the throughput of the heterogeneous network environment is determined by the input rate in the system. Table 4.2 summarizes all the input and output parameters used in the model.

Comparing the Accuracy of Simulation Model with Local Area Network, Wide Area Network and Test-Bed for Remote Data Transfers Measurement
Table 4.1: Notations for Model Development
Model Parameters L R v n d CLAN dan CWAN P (P1,P2,P3,...Pm) P1 JLAN dan JWAN Meaning Size of packet services Bandwidth capacity Speed of Light 2x108 Total of node connected between two networks Distances between two networks Bandwidth of LAN and WAN interface ports Various services Client uses single service LAN and WAN distances Total size of packet services request by clients (traffic) Size of packet service request by client (traffic)

169

klient1

Jumlah

Trafik_P1 Trafik_Heter

Total size of packet services used by clients (traffic) Total size of various packet services in heterogeneous network environment used by clients (traffic)

Table 4.2: Input and Output Metrics for Model Development


Input Parameters Type of Services Size of packet services in bit per second (bps) Size of bandwidth in bit per second (bps) Total of nodes Distances in kilometres (KM) Output Parameters Throughput traffic in bit per second (bps) Total time taken (delay) in second (sec) due to transmission and propagation delay

The original theory [28] is defined as a throughput (variable name is Throughput) in equation 1. While [29], equation 2 is defined as a delay, time taken for packet transmission depends on size of packets and hop (variable name is Time). Equation 1 and 2 are derived based on logical model that has been designed to meet requirements for heterogeneous network environment. Logical model is derived and formulated in a single service (homogeneous concept) as in equations 3, 4 and 5. Then, the logical model is derived to the heterogeneous network environment in equations 6 and 7. (William Stallings, [28]): L Throughput = (1) d L + v R (Darren L. Spohn, [29]): L Throughput = (2) d L + v R Where L, d, v and R > 0 Equation 1 and Equation 2 are derived
Laluan _ Trafik _ Hop = L d L + (n + 1) v R

(3)

Client uses single service for remote data transfer from LAN to WAN interface
Trafik _ P1 =

P1 JLAN P1 ( )+( ( n + 1)) v C LAN

]+[

P1 J WAN P1 ( )+( ( n + 1)) v C WAN

(4)

170
Trafik _ P1 =

Mohd Nazri Ismail and Abdullah Mohd Zin

P1 JLAN P1 ( )+( ( n + 1)) v C LAN

]+[

P1 J WAN P1 ( )+( ( n + 1)) v C WAN

(5)

Client uses various services for remote data transfer from LAN to WAN interface in Heterogeneous Environment P1+ P2 + P3+..+ Pm P1+ P2 + P3+..+ Pm = _ Trafik Heter JLAN P1+ P2 + P3+..+ Pm JWAN P1+ P2 + P3+..+ Pm ) +( ) +( (n +1)) ( ( (n +1)) CLAN v v CWAN (6)

]+[

Where P1+P2+P3++Pm = Uklient1+Uklient2+Uklient3++Uklientm =


Trafik _ Heter =

[
(

JLAN v

Jumlah Jumlah (n + 1)) ] + [ ( J )+(


CLAN

WAN

Jumlah Jumlah (n + 1)) ] )+(


CWAN

jumlah

(7)

Figure 4.3 shows how the model has been formulated from real network environment to simulation model. The main valuable aspects of the simulation study is to explain and understand real world phenomena that are costly to perform in the laboratory or difficult to collect in field experiments. A successful simulation model that is able to provide a sufficiently credible solution that can be used for prediction. Since it is not feasible to construct a simulation model that represents all the details and behaviors of the real network, some assumptions must be made about the real network to construct a simulation model. Therefore, a simulation model is an abstract representation of real network environment.
Figure 4.3: Model and Simulation Development Phases

5.0. Simulation Model Architecture


A simulation model is set of assumptions concerning the operation of the system, expressed as mathematical, logical and symbolic expressions between the object of interests (entities) of the system. Performance modeling can be done using simulation models or analytical models. Performance modeling is typically used when actual systems are not available for measurement or, if the actual systems do not have test points to measure every detail of interest. Performance modeling may further be classified into simulation modeling and analytical modeling. Simulation models may further be classified into numerous categories depending on the mode/level of detail of simulation. Analytical models usually use probabilistic models, queuing theory, Markov models or Petri nets [4]. Figure 5.1 shows simulation model architecture, which is used to measure remote data transfers in heterogeneous network environment.

Comparing the Accuracy of Simulation Model with Local Area Network, Wide Area Network and Test-Bed for Remote Data Transfers Measurement
Figure 5.1: Simulation Model Architecture of Heterogeneous Network Environment

171

This simulation model allows fast evaluation of important performance measures, such as network delay and throughput, in terms of measurable or controllable parameters; it also can be used as a system management tool. Outputs of the simulation model represent an estimate of the real outputs for the physical real network. Network utilization rate is the ratio of current network traffic to the maximum traffic that the port can handle. It indicates the bandwidth use in the network. High network utilization rate indicates the network is busy whereas low utilization rate indicates the network is idle. Three sets of experiments were conducted in lab and real network environment with different scenarios at University of Kuala Lumpur. Table 5.1 and Table 5.2 show several variables bytes were performed from source (client) to destination (server) to transfer data. A congested network can be modeled by increasing the number of distances, reducing the bandwidth link, or by adding size of services.
Table 5.1: Input Parameters to Analyze Network Performance for Remote Data Transfers in Simulation Model
Simulation Model Input Parameters Audio 64 Kbps LAN 0.5 KM 100 Mbps 10 Mbps

Type of Services Size of Services Distances Size of Bandwidth

Video 1 Mbps

Voice 32 Kbps WAN 60 KM 8.7 Mbps 2 Mbps

Table 5.2: Type and Size of Services Parameters Using in Simulation Model and Real Network
Type of Services Video Audio Voice Message Data Transfer Flow From Source to Destination Over LAN and WAN Size of Services 1 Mbps (125000 Bytes) 64 Kbps (8000 Bytes) 32 Kbps (4000 Bytes) 8 Kbps (1000 Bytes)

Figure 5.2, shows simulation model interface and output for evaluating heterogeneous network environment performance. The output results depend on the input variables. Output of network delay and throughput that captured by simulation model is based on size of services and bandwidth link. In addition, this simulation model can also predict and estimate the variable parameters in graphical

172

Mohd Nazri Ismail and Abdullah Mohd Zin

output interface, (see Figure 5.3). This graphical output interface can provide simulation model is easier to analyze and measure the network performance.
Figure 5.2: Simulation Model Interface and Output for Remote Data Transfers in Heterogeneous Environment

Figure 5.3: Simulation Model Output in Graphical Interface

From the simulation results, Table 5.3 and Table 5.4 show the comparison of network delay and throughput performance using different type of variables bandwidth such as 10 Mbps, 100 Mbps, 2 Mbps and 8.7 Mbps (LAN and WAN). Low bandwidth link capacities via LAN and WAN interface port can affect network delay and throughput for accessing the network. When network utilization rate exceeds the threshold under normal condition, it may cause low transmission speed, intermittence and delay. Through analyzing and monitoring network delay rate, we will get an idea whether the network is idle, normal or busy. It also helps network administrator to set proper benchmark and troubleshoot network failures with the network delay rate.

Comparing the Accuracy of Simulation Model with Local Area Network, Wide Area Network and Test-Bed for Remote Data Transfers Measurement

173

Table 5.3: Analyze and Measure of Network Delay and Throughput in Simulation Model for LAN 100 Mbps and WAN 8.7 Mbps
Simulation Model Output (One Way Delay) LAN : 100 Mbps WAN: 8.7 Mbps Type of Services Throughput Delay Throughput Delay (bps) (second) (bps) (second) Video 2.4998x107 0.04 4.344x106 0.2301 7 Audio 2.4975x10 0.00256 4.263x106 0.01501 Voice 2.4951x107 0.00128 4.1795x106 0.007656 Total of 7.492x107 0.04384 1.278x107 0.2528 Heterogeneous Services and Technologies LAN and WAN Throughput Delay (bps) (second) 2.934x107 0.27018 2.9238x107 0.01757 2.9130x107 0.008938

Table 5.4: Analyze and Measure of Network Delay and Throughput in Simulation Model for LAN 10 Mbps and WAN 2 Mbps
Simulation Model Output (One Way Delay) LAN : 10 Mbps WAN: 2 Mbps Type of Services Throughput Delay Throughput Delay (bps) (second) (bps) (second) Video 2.4998x106 0.4 999700 1.0003 Audio 2.49976x106 0.0256 995334 0.0643 Voice 2.49951x106 0.0128 990712 0.0323 Total of 7.49925x106 0.43841 2.9857x106 1.0969 Heterogeneous Services and Technologies LAN and WAN Throughput Delay (bps) (second) 3.49968x106 1.4003 3.49509x106 0.0899 3.49022x106 0.045102

6.0.

Verification and Validation of Simulation Model with Real Network Experimental

In this section, we verify the little law and queuing theories for heterogeneous simulation model environment between two networks through experiments. The experiments are composed of Lab and real network environment. Several tests were performed to evaluate the tuned parameters and the values that better mimic the characteristics of the real networks. Lab experiment is based on ideal network in which there is no packet losses, no jitter in delays and network bandwidth is sufficient for all requirements. While, real experiment is based on real network and need to consider as follows: i) network bandwidth is limited and is not enough for all application and users at the same time; ii) delay due to the network overloads; and iii) packet losses. 6.1. Experimental of Laboratory and Real Network Setup We used a network management application to capture traffic between two networks link in real network environment. Figure 6.1 shows the experimental setup of real network used in our tests. The real network used switch with Gigabit Ethernet ports, Router ports and Ping Plotter application can be configured to insert size of packet services to generate traffic into the network interface (see Figure 6.2). By using varying number of clients and size of packet services, we are able to simulate network for remote data transfers. Ping Plotter application is based on round trip time (RTT) measurement.

174

Mohd Nazri Ismail and Abdullah Mohd Zin


Figure 6.1: Experimental Laboratory for Lab and Real Network Environment Setup

Figure 6.2: Ping Plotter Engine Setting for Size of Packet Services

6.2. LAB Experiment We have setup a Lab environment network of data transfer flow measurement that generates measurement data to analyze network performance at the main campus. The pilot test-bed LAB is based on local area network (LAN) and no traffic congestion occurs. In our pilot test-bed LAB, we used UTP CAT 5e cable to connect our equipment. The UTP CAT 5e cable can configure to support 100 Mbps and 1 Gbps bandwidths. Low bandwidth link affects the size of packet services and number of clients access to the network server. Number of hops occurs between source and destination (see Figure 6.1).Therefore, we run network management application to measure delay (propagation and transmission time) performance (see Figure 6.3). Four sets of experiments were conducted with different scenarios (see Table 5.1 and Table 5.2). We used the same input variables in simulation model (see Figure 6.4, Figure 6.5, Table 5.1 and Table 5.2) to estimate our data that must be closely resemble to lab experiment environment (see Table 6.1). Assume that we did not know the size of bandwidth link and distance between two networks and we will find the x value of bandwidth link connected between source and destination party in our lab experiments (see Table 6.1). We used several variables such as 1 Gbps, 800 Mbps and 400 Mbps to estimate our data that must be closely resemble to lab environment network. We conclude that base on our findings, the simulation model is able to predict and estimate data transfers for lab environment network (Table 6.1).

Comparing the Accuracy of Simulation Model with Local Area Network, Wide Area Network and Test-Bed for Remote Data Transfers Measurement
Figure 6.3: Lab Experiment Result Capture by Network Management Application

175

Then, we predict and estimate our data using simulation model and compare with Lab (testbed) network environment. We used several variables to estimate our data that must be closely accurate to real network environment. Figure 6.6 shows variables input and output results for LAN bandwidth link prediction such as 800 Mbps and 600 Mbps to define which variables is closely accurate to Lab experiments.
Figure 6.4: Prediction and Estimation of 1 Gbps Variables Using Simulation Model

Figure 6.5: Type and Size of Packet Services (bit per second) Variables

176

Mohd Nazri Ismail and Abdullah Mohd Zin


Figure 6.6: Prediction and Estimation of 600 Mbps and 800 Mbps Variables Using Simulation Model

Table 6.1: Prediction and Estimation of Lab (Test-bed) Environment


LAB Distances: 0.001 KM; Number of Hops: 1 Time Taken in millisecond (ms) Size of Bandwidth Video Audio Voice Tested (Mbps) (125000 Bytes) (8000 Bytes) (4000 Bytes) 5 0 0 x 10 1 1 10 400 25.6 12.8 200 20 1.28 0.64 400 10 0.64 0.32 600 6.6 0.4266 0.2132 800 5 0.32 0.16 1000 4 0.257 0.129

Real Network (Min) Real Network (Max) Simulation Simulation Simulation Simulation Simulation Simulation

Message (1000 Bytes) 0 0 3.2 0.16 0.08 0.0532 0.04 0.033

In our experiment using 10 Mbps, it shows that data transfer over various services from source to destination, is not closely to the maximum and minimum of LAB experiment results, see Figure 6.7. The reason is Lab experiment (pilot-test) and simulation model will capture data based on ideal network (no traffic congestion).

Comparing the Accuracy of Simulation Model with Local Area Network, Wide Area Network and Test-Bed for Remote Data Transfers Measurement
Figure 6.7: Comparison of Lab Experiment and Simulation Model Using 10 Mbps

177

As a result, it confirms that our simulation model is using 100 Mbps to 1 Gbps and 0.001 KM variables are closely resemble with lab experiment for video, voice, audio and message (see Figure 6.8 and Figure 6.9) based on ideal network (no traffic congestion). We will reject 10 Mbps experiment variable based on ideal network (no traffic congestion) and accept 100 Mbps or 1 Gbps experiment variable in our simulation model. Therefore, x value is 100 Mbps or 1 Gbps for bandwidth link connected between two networks in Lab experiment.
Figure 6.8: Comparison of Lab Experiment and Simulation Model Using 800 Mbps Variables

178

Mohd Nazri Ismail and Abdullah Mohd Zin


Figure 6.9: Comparison of Lab Experiment and Simulation Model Using 400 Mbps Variables

6.3. LAN Experiment to Real Network We have setup a Local Area Network, LAN (real network) environment of data transfer flow measurement that generates measurement data to analyze network performance at the main campus. Low bandwidth link affects the size of packet services and number of clients access to the network server. The data transfers from source (client: 10.5.1.252) to destination (server: 10.42.1.23) is based on Local Area Network (LAN) with traffic congestion from operational network (see Figure 6.10). Number of hops occurs between source and destination in real network is three hops (see Figure 6.1). Therefore, we run network management application to measure delay (propagation and transmission time) performance (see Figure 6.10).
Figure 6.10: LAN Experiment (Real Network) Using Network Management Application

Comparing the Accuracy of Simulation Model with Local Area Network, Wide Area Network and Test-Bed for Remote Data Transfers Measurement

179

Four sets of experiments were conducted with different scenarios (see Table 5.2). We used input variables in simulation model (see Figure 6.11 and Figure 6.12) to estimate our data that must be closely resemble to real network environment (see Table 6.2). We used several variables such as 1 Gbps and 100 Mbps to estimate our data that must be closely resemble to LAN (real network) environment. We conclude that base on our findings, the simulation model is able to predict and estimate data transfers for LAN (real network) environment (Table 6.2). In our experiment using 100 Mbps, it shows that data transfer over video service from source to destination, is not closely to the LAN (real network) environment (Figure 6.13 and Table 6.2). Small size of packet services such as audio, message and voice are closely resemble to the LAN (real network) environment (Figure 6.13 and Table 6.2).
Figure 6.11: Prediction and Estimation of 100 Mbps Variables Using Simulation Model for Remote Data Transfer

180

Mohd Nazri Ismail and Abdullah Mohd Zin

Figure 6.12: Prediction and Estimation of 1 Gbps Variables Using Simulation Model for Remote Data Transfer

Table 6.2: Comparison of Remote Data Transfer Using Various Services between Simulation Model and Real LAN Network
Type of Services Video Audio Voice Message LAN = 100 Mbps and 1 Gbps; Number of Hops = 3; Distances = 0.5 KM LAN Real Network Simulation (100Mbps) Simulation (1Gbps) 13 80 8 4 5.125 0.517 3 2.656 0.261 1 0.645 0.069

In real situation our server at main campus is connected with 1 Gbps. The result from our simulation model using 100 Mbps is higher than real network (LAN) compared to 1 Gbps variable (see Figure 6.13). The reason is simulation model will capture data based on ideal network (no traffic congestion); however in real network environment (LAN) the data may affect output result caused by traffic congestion from operational network. Simulation model with variable 1 Gbps has shown the result more closely resemble to real network (LAN) for all services (video, audio, voice and message) during data transfer (Table 6.2 and Figure 6.13). As a result, it confirms that our simulation model using 1 Gbps and 0.5 KM variables are closely resemble with real network environment (LAN) for video, voice, audio and message (see Figure 6.13). Therefore, we will reject 100 Mbps experiment variable and accept 1 Gbps experiment variable in our simulation model. We can conclude and predict that the average of data transfers from source to destination in real network (LAN) is using 1 Gbps bandwidth link.

Comparing the Accuracy of Simulation Model with Local Area Network, Wide Area Network and Test-Bed for Remote Data Transfers Measurement

181

Figure 6.13: Comparison of Simulation Model Using 100 Mbps and 1 Gbps Variables with LAN (Real Network) Environment

6.4. WAN Experiment to Real Network We have setup a Wide Area Network, WAN (real network) environment of data transfer flow measurement that generates measurement data to analyze network performance at the main campus. The data transfers from source (client: 10.5.1.252) to destination (router interface: 56.26.25.1) is based on Wide Area Network (WAN) with traffic congestion from operational network (see Figure 6.14). Number of hops occurs between source and destination in real network is four hops (see Figure 6.1). Therefore, we run network management application to measure delay (propagation and transmission time) performance (see Figure 6.14).

182

Mohd Nazri Ismail and Abdullah Mohd Zin


Figure 6.14: WAN Experiment (Real Network) Using Network Management Application

We predict and estimate our data using simulation model to define size of bandwidth and distance between two networks. We used two scenarios to measure and estimate our data as follows: i) data transfer over WAN using LAN bandwidth 100 Mbps; and ii) data transfer over WAN using LAN bandwidth 1 Gbps. Figure 6.15 shows an example of variables have used in simulation model to compare with real network environment. The simulation results must closely accurate with real WAN network interface port. We conclude all our findings in Table 6.3 and it shows all our testing in simulation model compare with real network.

Comparing the Accuracy of Simulation Model with Local Area Network, Wide Area Network and Test-Bed for Remote Data Transfers Measurement

183

Figure 6.15: Prediction and Estimation of 100 Mbps and 1 Gbps Variables for Remote Data Transfer Using Simulation Model

Table 6.3: Comparison of Remote Data Transfer between Simulation Model and WAN (Real Network)
Number of Hops to Wan Interface Port = 4; Estimate Size of Bandwidth = 100 Mbps, 1 Gbps (LAN) and 8.7 Mbps (WAN) Data Transfer Over Simulation Over LAN 100 Simulation Over LAN 1 Real WAN Interface Port WAN Mbps Gbps Video 540.38 468.376 544 Audio 35.15 30.5422 38 Voice 17.87 15.573 19 Message 4.922 4.347 6

In real situation our server at main campus is connected with 1 Gbps (LAN) and 8 Mbps (WAN) link to Internet. The result from our simulation model using 1 Gbps is lowest than real network compared to 100 Mbps variable (see Figure 6.16). The reason is simulation model will capture data based on ideal network (no traffic congestion); however in real network environment the data may affect output result caused by traffic congestion from operational network. Simulation model with variable 1 Gbps (LAN) and 8.7 Mbps (WAN) have shown the result more closely resemble to WAN (real network) for all services (video, audio, voice and message) during data transfer (Table 6.3 and Figure 6.16). As a result, it confirms that our simulation model using 1 Gbps (LAN) and 8.7 Mbps (WAN) variables are closely resemble with real network environment for video, voice, audio and message (see Figure 6.16). Therefore, we will reject 100 Mbps experiment variable and accept 1 Gbps experiment variable in our simulation model. We can conclude and predict that the average of data transfers from source to destination in real network is using 1 Gbps (LAN) and 8.7 Mbps (WAN) bandwidth link.

184

Mohd Nazri Ismail and Abdullah Mohd Zin


Figure 6.16: Comparison of Simulation Model Result and Real WAN Network Interface Port

7.0. Conclusion and Future Work


In this article, we have shown how an analytical queuing network model can be used to understand the behaviors of heterogeneous environment over Lab experiment and real network such as LAN and WAN. The most apparent aspect is the delay due to the propagation and transmission time. Our simulation model, has demonstrated that it can measure accurately the performance of heterogeneous services and technologies to transfer data between two networks. Through laboratory and real network (LAN and WAN) experiments, the simulation model is verified and validated for providing accurate performance information for various services. We believe the simulation modeling framework described in this study can be used to study other variations, tunings, and similar new ideas for various services and technologies. Network delay rate will directly affect the network performance. In network management, by monitoring and analyzing network utilization rate we can monitor the performance of the network, thus to study whether network is normal, optimal or overloaded. Network delay rate also plays an important role in benchmark setting and network troubleshooting. Future work is to develop a simulation model to analyze bandwidth capacity requirement for various services and technologies in heterogeneous environment.

Comparing the Accuracy of Simulation Model with Local Area Network, Wide Area Network and Test-Bed for Remote Data Transfers Measurement

185

References
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] J.kontio & R.Conradi, Evaluating the Performance of a Web Site via Queuing Theory Software Quality - ECSQ 2002: 7th International Conference, Helsinki, Finland, June 9-13, 2002, pp. 63-72. Springer-Verlag Berlin Heideberg. John Heidemann, Kevin Mills, Sri Kumar. 2001.Expanding Confidence in Network Simulation, IEEE computer, Vol. 15 (5), p.p 58-63. Ramon Puigjaner ,Performance Modelling of Computer Networks, IFIP/ACM Latin America Networking Conference 2003, October 3 - 5, 2003, La Paz, Bolivia. ACM 2003. Performance analysis of distributed information retrieval architectures using an improved network simulation model. Information Processing and Management 43 (2007) 204-224, Science Direct, 2006. Georges Nogueira. Measurement based validation of GPRS/EDGE Analytical Models Chadi Barakat, Patrick Thiran, Gianluca Iannaccone, Christophe Diot, Philippe Owezarski A flow-based model for Internet backbone traffic. Proceedings of the 2nd ACM SIGCOMM Workshop on Internet measurment, p.p: 35 47,2002, Marseille, France. S. Ben Fredj, T. Bonald, A. Proutiere, G. Regnie and J. Roberts, Statistical Bandwidth Sharing: A Study of Congestion at Flow Level, ACM SIGCOMM, August 2001. T. Bu and D. Towsley, Fixed Point Approximation for TCP behavior in an AQM Network, ACM SIGMETRICS, Jun. 2001. A.A. Kherani and A. Kumar, Performance Analysis of TCP with Nonpersistent Sessions, Workshop on Modeling of Flow and Congestion Control, INRIA, Ecole Normale Superieure, Paris, September 4-6, 2000. Osman Balci. Quality Assessment, Verification and Validation of Modeling and Simulation Applications. Proceeding of the 2004 Winter Simulation Conference. Simulation Conference, 2004. Proceedings of the 2004 Winter Vol. 1, Issue, 5-8 Dec. 2004 Page(s): - 129 Qigang Zhao; Xuming Fang; Qunzhan Li; Zhengyou He. 2005. WNN-based NGN traffic Prediction. ISADS 2005. Proceedings Autonomous Decentralized Systems: 230-234. Kyung-Hyu .L; Kyu-Ok .L; Kwon-Chul .P; Jong-Ok .L & Yoon-Hak .B.2003. Architecture to be deployed on strategies of next-generation networks. Communications ICC '03. The IEEE,Vol. 2, ms:819 822. Xianxin Jiang; Fangchun Yang; Hua Zou. 2003. A novel architecture to customer service management for the NGN. ICCT 2003. International Conference, 1: 123-126. David R.Gerhan & Stephen M. Mutula. 2005. Bandwidth bottlenecks at the University of Botswana, Published by Emerald Group, Vol. 23 (1), p.g 102-117. Jianqiang Li; Zhaohao Sun. 2004. Internet/Web technology in higher education in China. Advanced Learning Technologies, 2004. Proceedings. IEEE International Conference,:993 997. Binh Thai, Rachel Wan, Aruna Seneviratne, Thierry Rakotoarivelo.2003. Integrated Personal Mobility Architecture: A Complete Personal Mobility Solution.Kluwer Academic Publishers. Podhradsky, P. 2004. Migration scenarios and convergence processes towards NGN (present state and future trends). Electronics in Marine Proceedings Elmar. 46th International Symposium, :39-46. J. Curtis and T. McGregor, "Review of bandwidth estimation techniques, " in Proc. New Zealand Computer Science Research Students' Conf., vol. 8, New Zealand, Apr. 2001. C. Barakat, P. Thiran, G. Iannaccone, C. Diot, and P. Owezarski. Modeling Internet backbone traffic at the flow Level. IEEE Transactions on Signal Processing (Special Issue on Networking), August 2003. T. Bu and D. Towsley. Fixed point approximation for TCP behavior in an AQM network. In Proceedings of ACM SIGMETRICS 01, San Diego, CA, June 2001.

186 [21] [22] [23] [24]

Mohd Nazri Ismail and Abdullah Mohd Zin S. Fredj, T. Bonald, A. Proutiere, G. Regnie, and J. Roberts. Statistical bandwidth sharing: A study of congestion at flow level. In Proceedings of ACM SIGCOMM 01, San Diego, CA, August 2001. Sommers, Joel; Barford, Paul. Self-Configuring Network Traffic Generation, In Proceedings of ACM Internet Measurement Conference, October, 2004. Guojun Jin & Brian L. Tierney. 2003. System capability effects on algorithms for network bandwidth measurement. Proceedings of the 3rd ACM SIGCOMM conference on Internet measurement, p.g 27-38. Jing Cong & Bernd E. Wolfinger. 2006. A unified load generator based on formal load specification and load transformation, Proceedings of the 1st international conference on Performance evaluation methodolgies and tools, ACM International Conference Proceeding Series, Pisa, Italy,Vol. 180 (53). Kawasaki, S., Niwa, et. al. 2006. A Study on Formulation of the Ubiquitous Cloud Model, Mobile Data Management, 2006. MDM 2006. 7th International Conference, pg:148 148. A. Tsalgatidou, G. Athanasopoulos & et. al. 2006. Developing scientific workflows from heterogeneous services, ACM SIGMOD, Vol. 35 (2), pg: 22 - 28 Qingwen Liu, Shengli Zhou, et. al,. 2006. Cross-layer modeling of adaptive wireless links for QoS support in heterogeneous wired-wireless networks, Wireless Networks, Vol. 12 (4), Kluwer Academic Publishers. William Stallings. 2000.Data & Computer Communications, 6th Edition, pg 262- 516, Prentice-Hall, New Jersey. Darren L. Spohn. 1997.Data Network Design, 2 second edition, pg 694, McGraw-Hill, New York. Huseyin Simitci.An Analytical Throughput Model for Bulk Data Transfers over Wide Area Networks. IEEE International Symposium on Cluster Computing and the Grid, p.p 602-609, 2004.

[25] [26] [27] [28] [29] [30]

International Journal of Soft Computing Applications ISSN: 1453-2277 Issue 3 (2008), pp.187-205 EuroJournals Publishing, Inc. 2008 http://www.eurojournals.com/IJSCA.htm

On Estimating a Cure Fraction in a Population-Based Cancer Survival Analysis


Khalid A. Salah Mohd Rizam Abu Bakar Noor Akma Ibrahim Kassim Haron Abstract In population based cancer studies, cure is said to occur when the mortality (hazard) rate in the diseased group of individuals returns to the same level as that expected in the general population. The optimal method for monitoring the progress of patient care across the full spectrum of provider settings is through the population-based study of cancer patient survival, which is only possible using data collected by population-based cancer registries. The probability of cure, statistical cure, is defined for a cohort of cancer patients as the percent of patients whose annual death rate equals the death rate of general cancerfree population. Recently models have been introduced, so called cure fraction models, that estimates the cure fraction as well as the survival time distribution for those uncured. However, there are still problems of such models, one problem is that cure models do not seem to give a good fit when the survival drops rapidly soon after diagnosis or when the survival is too high. To overcome such problems, a semiparametric function with smoothing parameter will be considered. Keywords: Relative survival, Survival cure rate model, Cure fraction, population-based cancer. Mathematics Subject Classifications (2000): 62F15, 62M05, 62N01, 62P10

1. Introduction
An important way of analyzing the improvements in cancer treatment is to look at time trends in cancer patient survival. When analyzing time trends in cancer patient survival, the focus lies on estimating the change in net survival, which is the proportion of patients who would have survived up to that point if the cancer of interest was the only possible cause of death. Cause-specific survival and relative survival were used to estimate the net survival. Relative survival is the method mostly used when analyzing cancer patient survival, and the most common estimate for the net survival is the 5-year relative survival ratio (RSR). Cure models have been introduced that estimate the cure fraction and the survival for the uncured. Many countries today have population-based cancer registries. In USA, as well as the other modern countries, the Surveillance, Epidemiology, and End Results (SEER) Program of the National Cancer Institute (NCI) is an authoritative source of information on cancer incidence and survival in the United States. SEER currently collects and publishes cancer incidence and survival data from population-based cancer registries covering approximately 26 percent of the US population. The

On Estimating a Cure Fraction in a Population-Based Cancer Survival Analysis

188

registry holds data about the patient as age at diagnosis, sex and birth date as well as information about the tumor, anatomical location, histology, stage and basis of registration. The underlying cause of death is recorded for all cases, using death certificate information. Several approaches to modelling relative survival exist, section 2 briefly describes the most commonly used regression approaches and gives an outline of the theory for the fitting methods used. Cure fraction models with their link parametric functions will be discussed briefly in section 3. With most previous work concentrating on the mixture cure fraction models, we extend these modele to incorporate a semiparametric distribution function and a background mortality, providing estimates of the cure fraction and the survival function for the uncured patients in population-based cancer studies, this extension will present in details in section 4. An application on female breast cancer in section 5 followed by results and discussion.
Figure 1:

2. Relative Survival
Relative survival has become the method of choice for estimating cancer patient survival using population-based cancer registries although its utility is not restricted to studying cancer Dickman and Adami (2006). Estimating cause-specific mortality (and its analogue cause-specific survival) using cancer registry data is problematic because information on cause-of-death is often unreliable or unavailable Gamel and Vogel (2001). We instead estimate the net mortality associated with a diagnosis of cancer in terms of excess mortality. Relative survival is the observed survival among the cancer patients (when all deaths are considered as events) divided by the expected survival in a comparable group of the general population. The expected survival is usually estimated from nationwide population life tables stratified by age, sex, calendar time and where, applicable, race. Even though these tables include the mortality from the cancer of interest, it has been shown that this doesn't effect the estimations in practice. There are three different approaches for estimating the expected survival, Ederer I, Ederer II and the Hakulinen. See Ederer et al. (1961) and Hakulinen (1982). These three approaches give similar estimates for follow-up times up to 10 years, but for longer follow-up the Hakulinen method is slightly better. If the estimates are done separately for different age groups the methods give similar results even for follow-up beyond 10 years. When modelling it doesn't matter what method is used, but in practice Ederer II estimates are usually used. In many cancer treatment trials, the prognosis for the patients under study might be quite good and such patients may by cured after treatment and sufficient follow up. In these situations, a plateau typically occurs at specific level (point) in the survival curve, this point is called the cure point and the patients still alive are considered statistically cured as shown in Figure 1.

189

Khalid A. Salah, Mohd Rizam Abu Bakar, Noor Akma Ibrahim and Kassim Haron

Modelling Excess Mortality The relative survival model can be written as S (t | Z) = S E (t | Z) R(t | Z), (1.1) where S (t | Z) , S E (t | Z) and R (t | Z) are observed, expected and relative survival, t is time since diagnosis and z is the covariate vector. The mortality associated with relative survival is excess mortality. The hazard for a person diagnosed with cancer is modelled as h(t | Z) = hE (t | Z) v(t | Z), (1.2) where hE (t | Z) is the expected hazard, and v(t | Z) is the excess hazard due to the cancer. The extended covariate matrix including the interval variables is denoted by X. The interest lies in modelling the excess hazard component, v which is assumed to be a multiplicative function of the covariates, written as exp( X ) . The basic relative survival model is then written as h( X) = hE ( X) + exp( X ). (1.3) This means that the parameters representing the effect in each follow-up interval are estimated and interpreted in the same way as all the other parameters. Model (1.3) assumes proportional excess hazards, but non-proportional excess hazards can be modelled by including time by covariate interactions in the model. To estimate the model in (1.3), the method used is modelling excess mortality using Poisson regression. The relative survival model assumes piecewise constant hazards which implies a Poisson process for the number of deaths in each interval. Since the Poisson distribution belongs to the exponential family the relative survival model can then be estimated in the framework of generalized linear models using a Poisson assumption for the observed number of deaths. Model (1.3) is then written as log( j d ) = log( y j ) + X (1.4) j

where d is the expected and d j is the observed number of deaths for observation j and j
d j Pisson( j ) where j = j y j , j is the average hazard for an interval j, and y j is the person-

time at risk in the interval. Model (1.4) implies a generalized linear model with outcome d j , Poisson error structure, link log( j d ) and offset log( y j ) . The observations can be life table intervals, j individual patients or subject-bands. The advantage of the Poisson regression approach is that since it is a generalized linear model we have regression diagnostics and can assess goodness of fit.

3. Cure Models
Recently new methods have been introduced to estimate the cure fraction. These new methods extend the earlier cure fraction models to incorporate the ideas of relative survival. The cure fraction is of big interest to patients and is a useful measure when looking at trends in cancer patient survival. The most popular type of cure rate model is the mixture cure fraction model (mixture model) discussed by Berkson and Gage (1952). In this model, they assume a certain fraction of the population is "cured" and the remaining (1 ) are not cured. The survival function for the entire population, denoted by S (t ) for this model is given by S (t ) = + (1 ) S1 (t ), (2.1) where S1 (t ) denotes the survivor function for the non-cured group in the population. We shall refer to the model in (2.1) as the standard cure rate model. Model (2.1) can be extended to include relative survival. In that case the overall survival for the patient group is written as S (t ) = S E (t ){ + (1 ) S1 (t )}, where S E (t ) is the expected survival. Similarly the overall hazard is the sum of the background mortality rate and the excess mortality rate associated with the cancer of interest

On Estimating a Cure Fraction in a Population-Based Cancer Survival Analysis


h(t ) = hE (t ) +

190

(1 ) f1 (t ) , + (1 ) S1 (t ) where hE (t ) is the expected mortality rate and f1 (t ) is the density function associated with S1 (t ) . In terms of relative survival, the log-likelihood contribution for the ith subject with survival or censoring time ti and censoring indicator can be defined as

(1 ) f1 (t i ) log(Li () ) = i log hE (t i ) + (2.2) + (1 ) S1 (t i ) + log(S E (t i ) ) + log( + (1 ) S1 (t i ) ). S E (ti ) is independent from the model parameters and can be removed. Since hE (ti ) is assumed to be known the likelihood can be simply defined for any standard distribution given the density function f1 (t ) , and the survival function, S1 (t ) , for the uncured group. The second type of cure fraction model is the non-mixture cure fraction model (non-mixture model), which defines an asymptote for the cumulative hazard, and hence for the cure fraction. The non-mixture model assumes that after treatment a patient is left with N i metastatic-component' cancer cells. N i is assumed to have a Poisson distribution with mean . That gives the cure fraction as P ( = 0) . When is not equal to 0, let C j denote the time for the jth metastatic-component cell to produce a metastatic tumor with distribution function FC (t ) = 1 S C (t ). The survival function can be written S (t ) = FC (t ) = exp(log( ) FC (t ) ), (2.3) model (2.3) referred to as promotion time model. The hazard function is h(t ) = log( ) f C (t ), where f C (t ) is a probability density function corresponds to FC (t ) . To enable relative survival cure models to be fitted the overall survival can be expressed as the product of the expected survival and disease related (relative) survival S (t ) = S E (t ) FC (t ) = S E (t ) exp(log( ) log( ) FC (t ) ) (2.4) and the overall hazard rate as h(t ) = hE (t ) log( ) f C (t ). (2.5) Equation (2.4) can be rewritten as FC (t ) S (t ) = S E (t ) + (1 ) 1 which is a mixture model and thus the survival distribution of the uncured patients can also be obtained from a non-mixture model by a simple transformation of the model parameters. The log-likelihood contribution for the ith subject with survival or censoring time ti and censoring indicator i is for the non-mixture model written as log(Li () ) = i log(hE (t i ) + log( i ) f C (t i ) ) + log(S E (t i ) )

+ (log( i ) log( i ) S C (t i ) ). As for the mixture model the likelihood can be simply defined for any given standard parametric distribution given f (t ) and S (t ) . If the parameters in f C (t ) do not vary by covariates, equation (2.5) is a proportional hazards model. This is an advantage of the non-mixture model over the mixture model, as the mixture model does not have a proportional hazards model for the whole group as a special case. The survival function S1 (t ) for the non-cured group can takes the form of parametric or semiparametric distributions. Among the parametric models, lognormal (LN), loglogistic(LL), Weibull

191

Khalid A. Salah, Mohd Rizam Abu Bakar, Noor Akma Ibrahim and Kassim Haron

( X ) = (1 + exp{ T X ( ) }) T ( X ) = X ( ) T ( X ) = exp{ X ( ) }, where , , are victors of regression parameters, in model (2.1), covariates X can appear in
1

where denotes for normal function. The parameters ( , , ) may depend on the covariates as

(WB), and Gompertz (GP) distributions are widely used to model the survival time. after reparametrization, these survival functions can be expressed as log t LN , 1 1 log t , LL 1 + exp S1 (t | , ) = exp exp log t , WB (1 exp t exp GP ,

X ( ) , X ( ) , X ( ) simultaneously. Moreover, when ( X ) = 0, this model reduces to the standard parametric survival model. The survival function S1 (t ) can also be a semiparametric proportional hazards model,
S1 (t | X ) = S 0 (t )
T exp X

where the baseline S 0 (t ) is modeled by piecewise exponential distribution. A generalization of model (2.1) with a power function can be written as S (t ) = { + (1 ) S1 (t )} , where the power function ( x) = exp( T X ( ) ), which used in the estimation of completeness index of cancer prevalence.

4. A Semiparametric Distribution and Smoothing Parameter


One problem of the cure models is that these models do not seem to give a good fit when the survival drops rapidly soon after diagnosis and the survival is too high. One method to overcome this problem have been introduced by Lambert (2006) and works by fitting one function for the beginning where the mortality is high and another function for the rest of the follow-up where the mortality is low. In this section, following Chen et al. (1999), Ibrahim et al. (2001) and Kim et al. (2007) to overcome such problems, we introduce a dynamic semiparametric exponential function with a smoothing parameter. Analogue to promotion time model, and for Cl , (l = 1,..., N ) the random time for the lth carcinogenic cell to produce a detectable cancer mass, are assumed to be i.i.d. with a common distribution function F ( y ) = 1 S ( y ) independent of N . The time to event then can be defined as Y = min{C l , 0 l N )} . The survival function for Y is given by S ( y ) = P(no metastatic tumer cells by time y ) i! and then the cure fraction given by = lim S ( y ) = exp( ).
i =1 y

= exp( ) + S ( y )

exp( ) = exp(F ( y ))

(3.1)

(3.2)

On Estimating a Cure Fraction in a Population-Based Cancer Survival Analysis


N

192

In addition given N 1 , the conditional survival function of Y is S ( y | N 1) = [S ( y )] , and hence, the conditional pdf and the corresponding hazard function of Y are given by Nf ( y ) N 1 f ( y | N 1) = Nf ( y )[S ( y )] and h ( y | N 1) = S ( y) dF ( y ) where f ( y ) = dy . To enable relative survival cure models to be fitted, the overall survival can be expressed as the product of the expected survival and disease related (relative) survival, then Model (3.1) can be written as (3.3) S ( y ) = S E ( y ) exp(F ( y )) and the overall hazard rate as f ( y ) = exp(F ( y ))[S E ( y ) f ( y ) + f E ( y )] and h ( y ) = f ( y ) + hE ( y ). (3.4)

Thus, given N 1 , the conditional survival function of Y is S ( y | N 1) = [S E ( y ) S ( y )] , and hence, the conditional pdf and the corresponding hazard function of Y are given by N 1 f ( y | N 1) = N [S E ( y ) S ( y )] ( f ( y ) S E ( y ) + f E ( y ) S ( y ) ) (3.5) and h ( y | N 1) = N (h( y ) + hE ( y ) )
N

Moreover, we introduce covariates through , that is = exp( T X ), where X T = ( x1 , x2 ,..., x p ) is a vector of covariates and T = ( 1 , 2 ,..., p ) is the corresponding vector of regression coefficients. To incorporate a semiparametric function in model (3.3). Following Ibrahim et al. (2001), for the hazard function h(t ) corresponding to F ( y ) , we partition the time y i , for the subject i, i = 1,..., n , into J intervals (0, s1 ], (s1 , s 2 ],..., (s J 1 , s J ], such that 0 < s1 < s 2 < < s J , s J > yi for all i, we thus assume that the hazard function h( y ) is constant and equal to j for the jth interval. Under the piecewise exponential assumption the promotion time distribution in the jth interval is given by
j 1 F ( y ) = 1 exp j y s j 1 q sq sq 1 . q =1

) (

(3.6)

Using the properties of (3.3), (3.5) and (3.6) then the likelihood function for the complete data D can be written as N i ij j 1 n J L( | D) = S E ( yi ) exp j ( y s j 1 ) q (s q s q 1 ) q =1 i =1 j =1 (3.7) N i ( j + hE ( yi ) )

] } exp{N
i ij n i i =1

X i log( N i !) exp( T X i )}

where ij is a censored indicator equal one if the ith subject failed or was censored in the jth interval and zero otherwise, and hE ( yi ) is the expected hazard corresponds to the expected survival S E ( yi ). Since N is not observed latent variable, then by summing (3.7) over N we got the observed data likelihood as J L( | Dobs ) = in=1 exp i T X i Ai + ij log( j + hE ( yi ) ) (3.8) j =1 exp( T X i )(1 exp( Ai ) )}, where j 1 J (3.9) Ai = ij j ( yi s j 1 ) q (s q s q 1 ) log( S E ( yi )). j =1 q =1

193

Khalid A. Salah, Mohd Rizam Abu Bakar, Noor Akma Ibrahim and Kassim Haron To correlate the j 's in adjacent intervals, we consider a discrete-time martingale type process

Aslanidou et al. (1998). In particular, we let j = log( j ), and assume that where b j = exp( max{0, log s j },

j M j = c j ( j 1 M j 1 ) + w j ,

w j N (0, b jW ),
r (0 < r < 1)

(3.10) and are known constants, and


b = (b1 , b2 ,..., bJ )T ,

c j = 1+rb j ,

M j = E ( j ). Note that, the log-hazard function for the first interval is based on Gaussian prior, that is

1 N ( M 1 , b1W ). Let c = (c1 , c2 ,..., c J )T , c = (1 , 2 ,..., J ) T . Then we can rewrite j , as


j = M j + ck wl , with
l =1 j

M = ( M 1 , M 2 ,..., M J ) T ,

and

(3.11) ck = 1. k = j +1 k =l +1 we introduce a smoothing parameter in the prior for j , such that the model converges to a parametric survival model F0 (t | 0 ) , and let H 0 (t ) denote the corresponding cumulative baseline hazard function. We take M j and V j2 the expected and the variance values of j to be
H 0 ( s j ) H 0 ( s j 1 ) j 2 (3.12) M j = E ( j | 0 ) = log , and V j2 = Var ( j | 0 ) = lj=1 ck blW . s j s j 1 k =l +1 The parameters and r play an important role in the proposed model (3.8). Specifically, is a smoothing parameter that controls the degree of parametricity, and r is a correlation parameter, which introduces the correlation between j and j 1. Moreover, the incorporation of these parameters into

the model makes the posterior estimation of the j 's much more stable in the tail of the survival curve, in which there are fewer subjects at risk. In addition, the dependency of c j and b j on j through s j will greatly ease the implementation of the reversible jump algorithm of Green (1995). In this study we assume F0 ( | 0 ) have a Weibull distribution, that is F0 (t | 0 ) = 1 exp( 0 t 0 ), 0 = ( 0 , 0 ), then

Mj =

0 0 s 0 s1 j j

s j s j 1

. Furthermore, the correlated nature of the proposed models also allows us to assume J

to be random. To this end, we assume that the jump times s1 , s 2 ,... form a time-homogeneous Poisson process. With random J and s j , the number and positions of the jump times need not be fixed in advance. However, a random choice of J will lead to a posterior distribution with variable dimensions. In this regard, the posterior computation can be carried out via the reversible jump algorithm. Finally, from the properties of these models one can note that the correlation of j and j 1 is given by
1 Corr ( j , j 1 ) = 1 j b j 2 ( j 1) b l j 1 2 r (1+bk ) l =1 k =l +1 2 .
1

(3.13)

r Moreover, when 0 , Corr ( j , j 1 ) 2 , as j , Corr ( j , j 1 ) 1. For more details see Kim et al. (2007). Hence, the modified semiparametric model provides a great flexibility in controlling parametricity in the right tail of the survival curve as will as nonparametricity in the beginning and middle part of the survival curve. From (2.1), (3.1) and (3.2), the survival function for the non-cured population is given by exp(F ( y )) exp( ) . S1 ( y ) = (3.14) 1 exp( )

On Estimating a Cure Fraction in a Population-Based Cancer Survival Analysis Using the mathematical relations between (2.1) and (3.1), we can write S ( y ) = + (1 ) S1 ( y ),
1

194 (3.15)

where and S ( y ) are given by (3.2) and (3.14) respectively. Thus S ( y ) is a standard cure rate model. Model (3.15) can be extended to include relative survival. In that case the overall (all-cases) survival for the patient group is written as S ( y ) = S E ( y ) + (1 ) S1 ( y ) , (3.16) where S E ( y ) is the expected survival. Similarly the overall hazard is the sum of the background mortality rate and the excess mortality rate associated with the cancer of interest, that is (1 ) f1 ( y ) h ( y ) = hE ( y ) + + (1 ) S1 ( y )

where hE ( y ) is the expected mortality rate and f1 ( y ) is the density function corresponding to (3.14). This shows that every model defined by (3.1) can be written as a standard cure rate model with a specific family of survival function S1 ( y ) given by (3.13).
4.1. Prior and Posterior Specifications

We consider a joint prior distribution for ( , ,W , 0 , J ) . First, we assume that J and s j , are fixed. Then we specify the joint prior of these parameters as [ , ,W , 0 ] = [ ][ | W , 0 ][W ][ 0 ]
[ ]( Jj =2 j | j 1 ,W , 0 )[1 | W , 0 ][W ][ 0 ],

2 2 where N (0, I ), assumed to be large say (> 10 3 ),

| j 1 ,W , 0 ) N ( M ,V ) , where

M = M j + c j ( j 1 M j 1 ) and M = b jW , W is taken to follow inverse gamma distribution with

shape parameter aw

[ 0 ] = [ 0 |

, 0 [ 0 ], where 0 | 0 , 0 0 0 exp( 0 0 ), with 0 and 0 are specified

and scale parameter bw , that is W IG (a w , bw ). For F0 , we take

hyperparameters and 0 LogN (0,10 3 ). Finally, we assume that J and s j , are random variables. Then the time-homogeneous Poisson process assumption on the jump times implies that J ~ Pisson(a s max ) where smax is the maximum observed survival time. Given J, the martingale specification implies that | W N J ( M ,WC 1 ) , where the J J matrix C has all elements zero except for a11 =
c JJ =
1 bj

1 b1

2 c2 b2

, a jj =

1 bj

+ b jj +11 , +

c2

j = 2,..., J 1 ,

, j = 1,..., J 1 and c j +1, j =

c j 1 bj

, j = 2,..., J 1.

The joint posterior distribution of ( , ,W , 0 ) based on the observed data D conditional on J is given by [ , ,W , 0 | J , D] L( , | D)[ , ,W , 0 ]
in=1 exp i T X i Ai + Jj =1 ij ( j + log 1 + exp(log hE ( yi ) j ) ) exp( T X i )(1 e Ai ) W
J 2

{ (

])

T 1 ( M )T C ( M ) exp exp 2 2 2W

( a +1) W w

b exp w [ 0 ], W

where Ai is given by (3.8).

195

Khalid A. Salah, Mohd Rizam Abu Bakar, Noor Akma Ibrahim and Kassim Haron

4.2. Computational Methods and Sampling When the survival data are grouped and presented as a life table, the observed data are { X i , ti , Eij , nij , d ij , lij } , i = 1,..., n1 , j = 1,..., n2 , d ij is the number of deaths due to all causes during the jth interval in the ith stratum, and Eij = S E (t j | X i ) / S E (t j 1 | X i ) is the interval expected survival probability. By actuarial assumption that the censoring occurs uniformly throughout the interval (t j 1 , t j ) , the effective number of people at risk is nij = nij 1 lij . The number of people dying during 2
the interval d ij follows a binomial distribution, i.e., d ij B(nij ,1 pij ( )) with parameters nij and

= S A (t j 1 | xi ) S E (t j 1 | xi ) S (t j 1 | xi ) The loglikelihood function for the grouped survival data is L() =


i =1 n1

pij ( ) =

S A (t j | xi )

S E (t j | xi ) S (t j | xi )

{d
n2 j =1

ij

log(1 pij ( )) + (nij d ij ) log pij ( )} .

The individual data are presented as {X i , t i , i , i , i = 1,..., n}, where i is the expected hazard rate. Let f E (t | X ) be the density function of the expected survival. The expected hazard rate for the ith individual i = E (t i | X i ) = f E (t i | X i ) / S E (t i | X i ) is known and treated as a constant. Because S A (t ) = S (t ) S E (t ), then the density function for the observed survival is dS A (t ) dS (t ) dS (t ) = S E (t ) S (t ) E dt dt dt The loglikelihood function for the individual data is L() = in=1{ i log f A (t i | xi ) + (1 i ) log S A (t i | xi )} f A (t ) =
dS (t i | xi ) + (1 i ) log S (t i | xi ) = in=1 i log S A (t i | xi )i dt n + i =1 log S E (t i | xi ). For the semiparametric proposed model we consider sampling from the joint posterior distribution of the model parameters with random J as follows: Let denote the collection of parameters except for J. The reversible jump Metropolis-Hastings algorithm consists of three types of moves: birth move, death move, and updating move. In the birth move, a new jump time is generated, that is, we generate a new jump time s uniformly from the discrete set {yi : yi {s1 , s2 ,..., s J },1 i n}. Suppose s (s j 1 , s j ) . At the current point j , the new log-baseline

hazard levels j and j +1 are taken to be convex combination of j and j + u , and j u and j +1 , respectively. Specifically, we compute s s j 1 s s j = j 1 + j ( j + u ), s j s j 1 s j s j 1

j +1 , s j s j 1 s j s j 1 where u is uniformly in ( , ) for some > 0 . Further, the remaining log-baseline hazard levels and jump times are re-labeled as follows:

j +1 =

s s j 1

( j u ) +

s j s

i = i for 1 i j 1,

i + 2 = i +1 for j i J 1,

s j = s , si = si for 0 j i 1, and si+1 = si for j i J .

On Estimating a Cure Fraction in a Population-Based Cancer Survival Analysis

196

In the updating move, all parameters in are updated for a given value of J, that is, when the update move is selected, it does not involve dimension change and the update is accomplished by the usual Gibbs sampling steps. The complete conditional posterior distributions for a fixed J are given by T [ | ,W , 0 , J , D] exp in=1 i T X i exp T X i 1 e Ai exp , 2 2 n J [ | ,W , 0 , J , D] i =1 exp{ i ( j =1 ij ( j + log 1 + exp(log hE ( yi ) j ) ) Ai )

)(

)}

1 ( M )T C ( M ), + exp( T X i Ai ) exp 2W T 1 [W | , , 0 , J , D] a1w + J +1 exp bw + 2 ( M ) C ( M ), W 2W 2 [ 0 | , ,W , J , D] exp 1 ( M )T C ( M ) [ 0 ]. 2W And in the death move, a randomly chosen jump time is removed, that is, we choose an index j uniformly from a discrete set, { ,..., J 1}, and the corresponding jump time s j then is removed. The 1 proposed new point is the proper labeling of the jump times and the log-hazard levels and is given by si = si for 0 i j 1, and si = si +1 for j i J 1

and a new log-baseline hazard level j is obtained by combining j and j +1 . The probabilities for choosing each type of the moves are denoted u J , bJ and d J , respectively, so that u J + bJ + d J = 1 . We take bJ + d J = 0.7 . We assume that random variables u and v have appropriate dimensions, where the dimension of ( , u ) is same as the dimension of ( , v) . Further, the proposal point is obtained using a one-to-one transformation ( , v) = g ( , u ) . An acceptance ratio R is given by | D q 2 (v ) R= J ( , u ) , [ | D]q1 (u )

where [ | D] is the posterior distribution, J ( , u ) =


q1 (u )
2 j j +1 2j

g ( , u ) ( , u )

is the Jaccobian, is a new state and


and q 2 (v) are the densities of u and v , respectively. Therefore, the Jaccobian in the birth move
,

then can be defined as


1 2

for the proposed parameter and J = J + 1, where q1 (u ) taken to be

I ( < u < )

and v not required.

The acceptance probability is then defined as * = min{1, R} . An acceptance ratio for death move is the inverse of the ratio for birth move. It can be shown that a sufficient condition to preserve reversibility is that the acceptance probability for the death move is given by 1 death = min{1, Rbirth }. Finally, the reversible jump Markov chain Monte Carlo algorithm operates as follows. Step 1: Initialization, set ( (0) , J (0) ) and i = 0, Step 2: Generate u from uniform [0,1], If u < bJ ; perform a birth move, else; If bJ u < bJ + d J ; perform a death move, else; perform update move u bJ + d J . Step 3: Increase i by one and return to step 2.

197

Khalid A. Salah, Mohd Rizam Abu Bakar, Noor Akma Ibrahim and Kassim Haron

5. Application
5.1. Aim of the Study The purpose of this study is to analyze time trends in breast cancer patient survival. The interest lies in survival after diagnosis of cancer, and how the survival has changed over time. The focus lies on analyzing time trends using mixture cure models with different link functions. This done by applying cure models to real data from the Incidence - SEER 17 Regs Public-Use, Nov 2005. Recently developed methodology and new SEER*Stata and CanSurv software commands created by National Cancer Institute are used to estimate the cure fraction for many types of cancer. The aim is to evaluate in which cases the cure models work and when they do not, and to see what kind of information about the survival can be obtained using cure models that is not available using standard methods. 5.2. Data description The SEER Program collects cancer incidence and survival data from population-based cancer registries across the United States. These data are distributed in the SEER Public-Use databases. The SEER Registries routinely collect data on patient demographics, primary tumor site, morphology, stage at diagnosis, first course of treatment, and follow-up for vital status. The SEER Program is a comprehensive source of population-based information in the United States that includes stage of cancer at the time of diagnosis and survival rates within each stage. In this study we are interesting to include all female patients diagnosed with breast cancer between 1973 and 2003. The survival time is the time between diagnose and death, in this application, survival times are grouped into two-annual intervals. The maximum follow-up time is 20 years, so the interval takes a value from {1, 10}. When a patient is still alive at the end of the study or at the time the patient is lost to follow-up, then her survival time is censored. After excluding all death certificate only and autopsy only observations, since they have zero survival time 521,391 observations were left. These were divided into 7 age groups, less than 30 years (<30), (30-39) years, (40-49) years, (50-59) years, (60-69) years, (70-79) years, and 80 years and over (80+) and the data were stratified upon these age groups. Moreover, three covariates were used in this study; race(all, White, Black, Other), Marital status(All status, Married, Single, Divorced/Separated, Widow/Other) and stage, SEER uses a staging scheme; "SEER historic stage" which categorizes stage at diagnosis into (localized, regional, distant) and unstaged based on the extent of the cancer at the time of diagnosis. 5.3. Analysis and numerical results Both relative and cause-specific survival were been used for the net survival, the results were almost the same. Only relative survival will presented here. Using the SEER Stat software, for each age group, frequency tables including number of patients alive at start, died, lost to follow-up, also observed, expected, relative, SE observed and SE relative survival for different variables were be calculated. The results are presented in Table 1. These tables will be used as input data files in the rest of our analysis using CanSurv and S-Plus software. In order to look at survival by age groups over a long period of time, the analysis was done separately for these groups to see if the improvements in survival over time were different for different age groups. We fit the standard survival models (assumed no cure present) and cure models to the data. Table 2 shows the parameter estimates for the standard survival models include the Weibull model and the Cox proportional hazards model. The relative risk (hazard ration) of dying of breast cancer is exp( ) for the Cox model and exp( / exp( )) for the standard Weibull model. For example, the risk of breast cancer death for the age group [40 49] relative to (< 30) age group is exp(2.830413) exp(2.195392) = 1.8871 from the Cox model and exp(3.216395 / exp(0.187371)) exp(2.713979 / exp(0.321583)) = 2. 0121 from Weibull model. The

On Estimating a Cure Fraction in a Population-Based Cancer Survival Analysis

198

median survival time for the Weibull model is exp( )(log 2) which presented in the last column of Table 2.
Table 1:
Interval <2 [2 4) [4 6) [6 8) [8 10) [10 12) [12 14) [14 16) [16 18) [18 20]

Relative Survival. SEER 17. Female Breast Cancer Includes Cases Diagnosed in 1973-2003
Alive at start 521,391 392,234 277,340 214,631 165,056 125,043 92,170 70,090 51,960 37,573 Died 52,106 41,137 27,577 19,886 14,945 11,283 8,272 6,494 4,728 3,445 Lost to Follow-up 77,051 73,757 35,132 29,689 25,068 21,590 13,808 11,636 9,659 7,224 Observed Interval 89.2% 88.4% 89.4% 90.0% 90.2% 90.1% 90.3% 89.9% 90.0% 89.9% Cum 89.2% 78.9% 70.5% 63.5% 57.3% 51.6% 46.6% 41.9% 37.7% 33.9% Expected Interval 95.8% 95.5% 95.1% 94.6% 94.2% 93.8% 93.4% 93.0% 92.7% 92.4% Cum 95.8% 91.4% 86.9% 82.3% 77.6% 72.8% 68.0% 63.2% 58.5% 53.8% Relative Interval 93.1% 92.6% 94.0% 95.2% 95.8% 96.1% 96.7% 96.7% 97.1% 97.3% Cum 93.1% 86.3% 81.1% 77.2% 73.8% 70.9% 68.5% 66.3% 64.4% 62.9% SE Obs Interval 0.0% 0.1% 0.1% 0.1% 0.1% 0.1% 0.1% 0.1% 0.1% 0.2% Cum 0.0% 0.1% 0.1% 0.1% 0.1% 0.1% 0.1% 0.1% 0.1% 0.1% SE Rel Interval 0.0% 0.1% 0.1% 0.1% 0.1% 0.1% 0.1% 0.1% 0.1% 0.2% Cum 0.0% 0.1% 0.1% 0.1% 0.1% 0.1% 0.1% 0.2% 0.2% 0.2%

Table 2:

Parameter estimates of Cox and weibull standard models


Cox model

Parameter Intercept 0 [30 39] 1 [40 49] 2 [50 59] 3 [60 69] 4 [70 79] 5 (80+) 6


2.714 2.908 3.216 3.106 3.048 3.093 3.013

Weibull model


2.195 2.491 2.830 2.725 2.715 2.681 2.189

SE( )
0.0540 0.0210 0.0150 0.0132 0.0143 0.0180 0.0234

SE( )
0.0531 0.0203 0.0165 0.0151 0.0172 0.0299 0.0691


0.3216 0.24371 0.1874 0.1786 0.1390 0.1467 0.3182

SE( )
0.0297 0.0109 0.0078 0.0073 0.0083 0.0131 0.0271

Median 15.09 18.34 24.94 22.34 21.07 22.05 20.35

The parameter estimates from the Weibull mixture cure model are listed in Table 3, all the covariates are significant ( p < 0.0007) , it is included in all parameters ( , , ) . In the last two rows the cure rates and the median survival times for uncured patients for each age group are calculated from the parameter estimates. After fitting the standard models to the data without modeling covariates, Figure 2 shows a comparison between the observed and estimated survival curves from the standard Cox semiparametric model, it is clear that Cox model fits the observed survival curves well and a plateau occurs in its tail. For all age groups, after fitting the Weibull mixture cure model to the data without modeling covariates, results shown in Figure 3. Except the oldest age group, the model seems to give a good fit of the data, and also the cure fractions for each group were presented. Moreover, the standard Weibull model assumes no cure, hence the estimated survival decreases until zero. The Wald 2 test was used as part of our exploratory data analysis, in order to identify of which covariates correlate with subsequent survival and then cure fraction and the parameters and . As shown in Table 4, all covariates were found to be significant and affect the parameter in the Weibull cure model. These are the covariates associated with a p-value less than 0.05 . For the parameter all covariates were found to be significant except the stage (distant) with p-value equal 0.986953 . Also, the loglikelihood value was calculated.

199
Table 3:

Khalid A. Salah, Mohd Rizam Abu Bakar, Noor Akma Ibrahim and Kassim Haron
Parameter estimates, Cure rate (%) and Median survival time of Weibull mixed cure model
Parameter

Intercept 0.116 0.051

[30 39] 0.343 0.021

[40 49] 0.659 0.019

[50 59] 0.543 0.022

[60 69] 0.195 0.058

[70 79] -2.733 4.316

(80+) -16.955 3656.1

Cure( )

SE( )

SE( ) SE( )

1.072 0.040 -0.169 0.034 52.21 2.92

1.212 0.018 -0.190 0.013 58.33 3.36

1.377 0.019 -0.172 0.011 65.76 3.96

1.405 0.022 -0.144 0.011 63.72 4.08

1.785 0.051 -0.037 0.014 55.41 5.96

2.999 0.393 0.141 0.030 5.72 20.08

3.013 0.069 0.319 0.027 0.00 20.35

Cure(%) Median

Figure 2: Comparison between Cox standard models and life table for different age groups.

(<30)

30 39

40 49

50 50

60 69

(80+) Age group

On Estimating a Cure Fraction in a Population-Based Cancer Survival Analysis


Figure 3: Comparison between Weibull mixture cure models and life table for different age groups
(<30) 30 39 40 49

200

50 50

70 79

(80+) Age group

Table 4:

Estimates of the parameter covariate coefficients of Weibull mixed cure model


Regression Variable <30 30-39 40-49 Coefficient -0.415762 -0.207584 0.095111 0.011508 0.018963 0.024411 -0.254608 1.153424 -2.171440 -0.433691 -0.146504 0.109338 -0.152731 -0.061440 0.044694 -0.428422 0.137656 SE 0.010778 0.004300 0.003283 0.003076 0.003323 0.004274 0.006559 0.004384 0.002905 0.002378 0.004269 0.002441 0.004325 0.003322 0.002129 0.004158 0.006127 Wald- 2 -statistic 1487.906089 2330.464807 839.093590 14.001497 32.558119 32.627903 1506.819555 69208.919938 558620.455400 33269.358469 1177.636218 2007.052395 1246.846845 342.142541 440.654292 10615.830149 504.741342 P-value 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

Age Group

50-59 60-69 70-79 80+ Localized

Histic Stage

Distant Regional Single Married Sep/Div Wid/Unkn White

Marital status

Race

Black Other

Log-Likelihood Value =-7592515.8

A big problem with cure models, is that these models do not fit the data and work well when the survival is too high. to clarify this problem, for each age group the data is stratified into localized, regional and distant stages, Figure 4 shows observed and estimated survival curves from the Cox mixture cure model, it doesn't seems to give a good fit specially in the stages (distant) and (localized), since the survival drops rapidly soon after diagnosis in the first stage, and the survival is too high in the second stage. To overcome this problem, the proposed semiparametric exponential function described in Section 4 were applied with the following specifications: Four covariates were used, race ( x1 ) , martial status ( x 2 ) , age at diagnosis ( x3 ) and histic stage ( x 4 ) . Then
= ( 0 , 1 , 2 , 3 , 4 )
T

X = ( x1 , x 2 , x3 , x 4 ) T

and

covariates.

is the vector of regression coefficients corresponding to an intercept and the four is taken to be random with mean 25 and truncated in the interval 1 to 75 then a specifies

201

Khalid A. Salah, Mohd Rizam Abu Bakar, Noor Akma Ibrahim and Kassim Haron

to be 25 / s max , we take a w = 1.2 , bw = 1, for examining the sensitivity of the posterior estimates various values were taken for the parameters and r , we notice that best fit was when = 0.2 and r = 0.6.
0 = 1 and 0 = 10 . The posterior estimates of the model parameters Also, we assume with random J 's are presented in Table 5, the results are quite robust, and the HPD intervals for all covariates do not include zero, which indicate that these covariates are potentially important prognostic factors for predicting survival in breast cancer. Moreover, we will evaluate the performance of the proposed semiparametric model by conducting a survival analysis for individual patients. for this purpose, we stratify the data according to histic stage into three stratums (distant, localized, regional) and the proposed model is fitted to each stratum. The results is presented in Figure 5, it is clear that this model fit the data and work well. Moreover, the cure fraction is estimated for each stratum. In Summary, Cure modelling was carried out using both standard and mixture cure fraction model. Both methods gave similar results. For the oldest age group cure models don't seem to give a good fit, also these models don't work well when the survival drops rapidly soon after diagnosis and when the survival is too high. In these cases A Semiparametric distribution with smoothing parameter was applied. 2 = 10 4 ,
2

Figure 4: Comparison between Cox mixture cure models and life tables of different age groups for stage.

(<30) Distant

(<30) Localized

(<30) Regional

50 50 Distant

50 50 Localized

50 50 Regional

(80+) Distant

(80+) Localized

(80+) Regional

On Estimating a Cure Fraction in a Population-Based Cancer Survival Analysis


Table 5:

202

Posterior estimates of the proposed semiparametric model parameters for =.2, r=.6 and random J.
Parameter Mean 5.0371 -0.2172 0.0678 -3.6582 -1.7616 0.9116 -1.4922 0.5588 S.D. 0.3883 0.0143 0.0111 0.4045 0.0794 0.2207 0.3773 0.2913 95% HPD interval (4.255, 5.724) (-0.247, -0.188) (0.046, 0.090) (-4.492, -2.907) (-1.918, -1.643) (0.503, 1.225) (-2.184, -0.816) (0.127, 1.107)

0 1 2 3 4 0 0
W

Figure 6: A comparison between the proposed semiparametric survival function for non-cured patients and life table with random J.

(<30) Distant

(<30) Localized

(<30) Regional

50 50 Distant

50 50 Localized

50 50 Regional

(80+) Distant

(80+) Localized

(80+) Regional

Conclusion
This paper contains a full discussion of modeling, estimating and application of the survival cure models which is shown to be useful and easy to apply in the population-based cancer survival analysis. The relative survival is used as the measure of net survival, however, the computation for causespecific survival can be regarded as a special case. The SEER*Stat and CanSurv softwares were used for the models parameter estimation. For the proposed semiparametric model, Bayseian approach with modern MCMC sampler methods were used. In this study, all plotting routines were carried out using CanSurv and S-Plus software. In all the computations, 40,000 Gibbs samples for random J were used to compute all posterior estimates, including posterior mean, posterior standard deviation and 95% HPD, using a burn-in of 16,000 samples. The convergence of the Gibbs sampler was checked using several diagnostic procedures. All HPD intervals were computed using a Monte Carlo method developed by Chen et al. (1999). From the results in section 5 we note that there are still problems with cure models. One problem is that cure models don't seem to give a good fit when the survival drops rapidly soon after diagnosis as is seen for the stage (distant) for female breast cancer. One solution to overcome these

203

Khalid A. Salah, Mohd Rizam Abu Bakar, Noor Akma Ibrahim and Kassim Haron

problems was introduced in this paper by incorporating a semiparametric model with smoothing parameter and the results were amazing. Despite the problems associated with cure models, as long as these models are used with a critical mind and the results are compared with other estimates as life table estimates they give very interesting information. Most important when using cure models is that statistical cure can be assumed. Even when statistical cure is not reasonable. The benefits of using cure models when analyzing trends in cancer survival is that the cure fraction is not influenced by lead-time, that is usually a big problem in cancer patient survival analysis, and that looking at both the cure fraction and the survival of the 'uncured' can reveal a lot of information that looking at only one estimate can not.

Acknowledgement
The authors gratefully acknowledge the Surveillance, Epidemiology, and End Results (SEER) Program (www.seer.cancer.gov) SEER*Stat Database: Incidence - SEER 17 Regs Public-Use, Nov 2005 Sub (1973-2003 varying), National Cancer Institute, DCCPS, Surveillance Research Program, Cancer Statistics Branch, released April 2006, based on the November 2005 submission.

On Estimating a Cure Fraction in a Population-Based Cancer Survival Analysis

204

References
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] Aslanidou, H., Dey, D. K., Sinha, D. (1998). Bayesian analysis of multivariate survival data using Monte Carlo methods. Canad J Stat, 26, 33--48. Brenner, H. and T. Hakulinen. (2005). Substantial overestimation of standard errors of relative survival rates of cancer patients. Am J Epidemiol, 161(8), 781-786. De Angelis, R., Capocaccia, R., Hakulinen, T., S derman, B. and Verdecchia, A. (1999). Mixture Models for Cancer Survival Analysis: Application to Population-Based Data with Covariates. Statistics in Medicine, 18, 441-454. Chen, M. H., Ibrahim, J. G., Sinha, D. (1999). A new Bayesian model for survival data with a surviving fraction. J Am Stat Assoc 94:909919 Dickman, P. W., Adami, H. O. (2006). Interpreting trends in cancer patient survival. Journal of Internal Medicine, 260, 103-117. Dickman, P. W., Sloggett, A., Hills, M. and Hakulinen, T. (2004). Regression models for relative survival. Stat Med, 23(1), 51-64. Ederer, F., Axtell, L. M. and Cutler, S. J. (1961). The Relative Survival Rate: A Statistical Methodology. National Cancer Institute Monograph, 6, 101-121. Farewell, V. T. (1982). The use of mixture models for the analysis of survival data with longterm survivors, Biometrics, 38, 257---262. Feuer, E.J., Kessler, L., Baker, S. G., Triolo, H. E. and Green,D.T. (1991). The impact of breakthrough clinical trials on survival in population based tumor registries. J. Clin. Epidemiol, 44, 141-153. Gamel, J. W. and Vogel, R. L. (2001). Non-parametric comparison of relative versus causespecific survival in Surveillance, Epidemiology and End Results (SEER) programme breast cancer patients. Statistical Methods in Medical Research, 10(5), 339-352. Green, P. J. (1995). Reversible jump Markov chain Monte Carlo computation and Bayesian model determination. Biometrika, 82, 711732 Hakulinen, T. and Tenkanen, L. (1987). Regression Analysis of Relative Survival Rates. Applied Statistics, 36, 309-317. Hakulinen, T. (1982), Cancer Survival Corrected for Heterogeneity in Patient Withdrawal. Biometrics, 38, 933-942. Ibrahim, J. G., Chen, M. H., Sinha, D. (2001). Bayesian semi-parametric models for survival data with a cure fraction. Biometrics 57:383388 Kim, S., Chen, M. H., Dey, D. K. and Gamerman, D. (2007). Bayesian dynamic models for survival data with a cure fraction. Lifetime Data Anal, 13, 17-35. Lambert, P.C., Thompson J. R., Weston, C. L. and Dickman, P. W. (2006). Estimating and modelling the cure fraction in population-based cancer survival analysis. Biostatistics, doi:10.1093/biostatistics/kxl030. Mariotto, A., Capocaccia, R., Verdecchia, A., Micheli, A., Feuer, E.J., Pickle, L. W., Clegg, L. (March 2002). Projecting SEER cancer survival rate to the US: an ecological regression approach, Cancer Causes Control, 13 (2), 101-111. Mathsoft S-Plus 2000, Guide to Statistics 2, Data Analysis Products Division of MathSoft, Seattle, WA, 1999. Surveillance, Epidemiology and End Results Program, The Portable Survival System/Mainframe Survival System, National Cancer Institute, Bethesda, 1999. Weller, E.A., Feuer, E.J., Frey, C.M. and Wesley, M.N. (1999). Parametric relative survival regression using generalized linear models with application to Hodgkin's lymphoma. Appl. Stat., 48 (1), 79-89. Yakovlev, A.Y., Tsodikov, A. D., Boucher, K. and Kerber, R. (1999). The shape of the hazard function in breast carcinoma: Curability of the disease revisited. Cancer, 85, 1789--98. Yu, B., Tiwari, R.C., Cronin, K. and Feuer, E. J. (2004). Cure fraction estimation from the mixture cure model for grouped survival data. Stat. Med. 23, 1733-1747.

205 [23]

Khalid A. Salah, Mohd Rizam Abu Bakar, Noor Akma Ibrahim and Kassim Haron Yu, B., Tiwari, R.C., Cronin, K. A., McDonald, C. and Feuer, E. J. (2005). CANSURV: A windows program for population-based cancer survival analysis. Computer methods and programs in biomedicine,. 80, 195-203.

Das könnte Ihnen auch gefallen