Computational Intelligence and Modern Heuristics
III
Computational Intelligence and Modern Heuristics
Edited by
Al-...

Author:
Al-Dahoud Ali

This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!

Computational Intelligence and Modern Heuristics

III

Computational Intelligence and Modern Heuristics

Edited by

Al-Dahoud Ali

In-Tech

intechweb.org

IV

Published by In-Teh In-Teh Olajnica 19/2, 32000 Vukovar, Croatia Abstracting and non-profit use of the material is permitted with credit to the source. Statements and opinions expressed in the chapters are these of the individual contributors and not necessarily those of the editors or publisher. No responsibility is accepted for the accuracy of information contained in the published articles. Publisher assumes no responsibility liability for any damage or injury to persons or property arising out of the use of any materials, instructions, methods or ideas contained inside. After this work has been published by the In-Teh, authors have the right to republish it, in whole or part, in any publication of which they are an author or editor, and the make other personal use of the work. © 2010 In-teh www.intechweb.org Additional copies can be obtained from: [email protected] First published February 2010 Printed in India Technical Editor: Goran Bajac Cover designed by Dino Smrekar Computational Intelligence and Modern Heuristics, Edited by Al-Dahoud Ali p. cm. ISBN 978-953-7619-28-2

V

Preface The chapters of this book are collected mainly from the best selected papers that have been published in the 4th International conference on Information Technology ICIT 2009, that has been held in Al-Zaytoonah University/Jordan in the period 3-5/6/2009. The other chapters have been collected as related works to the book’s topics. “Heuristics are criteria, methods, or principles for deciding which among several alternative courses of action promises to be the most effective in order to achieve some goal - Pearl 1984 The term computational intelligence has become increasingly fuzzy, as the words “intelligent” and “smart” are used for everything from clever design of cell phones, appliances, computers, to pet robots, cars, and missiles. This collection of chapters will take its readers on a stunning voyage of computational intelligence heuristics research and applications. Computational intelligence techniques, ranging from neural networks, fuzzy logic, via genetic algorithms to support vector machines, case based, neighborhood search techniques, ant colonies, and particle swarm optimization are effective approaches with applications where problem domain knowledge exists. Clearly the use of heuristic is one time honored form of an information based strategy to circumvent the learning process. Modern heuristics criteria, methods represent a set of principles that though may not guarantee, are in practice proven to lead to “good quality” solutions or methods for deciding which among several alternative courses of action promise to be the most effective in order to achieve a specified goal. Collection of chapters of this book will elaborate different ideas in support of quantitative modeling heuristics on suite of applications including Computational Intelligence & Modern Heuristics in: Artificial Neural Network, Cryptography, Encryption, Dependability Evaluation, E-learning, GIS, Modeling, Optimization Problem, Security, Cryptosystems, Social process Design, Web, and Web Architectures.

Al-Dahoud Ali

VI

Dr. Al-Dahoud, is an associated professor at Al-Zaytoonah University, Amman, Jordan. He took his High Diploma form FON University Belgrade 1986, PhD from La Sabianza1/Italy and Kiev Polytechnic/Ukraine, on 1996. He worked at Al-Zaytoonah University since 1996 until now. He worked as visiting professor in many universities in Jordan and Middle East, as supervisor of master and PhD degrees in computer science. He established the ICIT conference since 2003 and he is the program chair of ICIT until now. He was the Vice President of the IT committee in the ministry of youth/Jordan, 2005, 2006. Al-Dahoud was the General Chair of (ICITST-2008), June 23–28, 2008, Dublin, Ireland (www.icitst.org). He has directed and led many projects sponsored by NUFFIC/Netherlands: His hobby is conference organization, so he participates in the following conferences as general chair, program chair, session’s organizer or in the publicity committee: - ICITs, ICITST, ICITNS, DepCos, ICTA, ACITs, IMCL, WSEAS, and AICCSA Journals Activities: Al-Dahoud worked as Editor in Chief or guest editor or in the Editorial board of the following Journals: Journal of Digital Information Management, IAJIT, Journal of Computer Science, Int. J. Internet Technology and Secured Transactions, and UBICC. He published many books and journal papers, and participated as keynote speaker in many conferences worldwide.

VII

Contents Preface 1. Services net modeling for dependability analysis

V 001

Wojciech Zamojski and Tomasz Walkowiak

2. Service based information systems analysis using task-level simulator

017

Tomasz Walkowiak

3. Modelling equipment deterioration vs. maintenance policy in dependability analysis

029

Jarosław Sugier and George J. Anders

4. Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

043

Fredrick Mtenzi

5. Modelling Access Control with Dynamic Role Binding

061

Al-Dahoud Ali and Dr.K.Chitra

6. On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

075

Mircea Neagoe, Dorin Diaconescu, Codruta Jaliu, Sergiu-Dan Stan, Nadia Cretescu and Radu Saulescu

7. Effective knowledge acquisition by means of teaching strategies

099

Marek Woda

8. Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

107

M. Reza Mashinchi and Ali Selamat

9. A Variation of Particle Swarm Optimization for Training of Artificial Neural Networks

131

Masood Zamani and Alireza Sadeghian

10. Resilient Back Propagation Algorithm for Breast Biopsy Classification Based on Artificial Neural Networks

145

Fawzi M. Al-Naima and Ali H. Al-Timemy

11. SIMD Architecture Approach to Artificial Neural Networks Realisation Jacek Mazurkiewicz

159

VIII

12. Smart RFID Security, Privacy and Authentication

175

Mouza A. Bani Shemaili, Chan Yeob Yeun and Mohamed Jamal Zemerly

13. Security and Privacy of Intelligent VANETs

191

Mahmoud Al-Qutayri, Chan Yeun and Faisal Al-Hawi

14. New Classification of Existing Stream Ciphers

219

Khaled Suwais and Azman Samsudin

15. Intelligent Exploitation of Cooperative Client-Proxy Caches in a Web Caching Hybrid Architecture

241

Maha Saleh El Oneis, Mohamed Jamal Zemerly and Hassan Barada

16. Smart Web Based Programming Contests Management Tool

255

Ahmed Bentiba, Mohamed J. Zemerly and Mohamed Al Mansoori

17. Heuristics of social process design

265

Gilbert Ahamer

18. Heuristics and pattern recognition in complex geo-referenced systems

299

Gilbert Ahamer, Adrijana Car, Robert Marschallinger, Gudrun Wallentin and Fritz Zobl

19. Complexity of Instances for Combinatorial Optimization Problems

319

Jorge A. Ruiz-Vanoye, Ocotlán Díaz-Parra, Joaquín Pérez-Ortega, Rodolfo A. Pazos R. Gerardo Reyes Salgado and Juan Javier González-Barbosa

20. Dependability Evaluation Based on System Monitoring Janusz Sosnowski and Marcin Król

331

1

Services net modeling for dependability analysis Wojciech Zamojski and Tomasz Walkowiak

Wroclaw University of Technology Poland

1. Introduction Network technologies are being developed for many years. Most of large technical systems could be seen as a kind of network, for example: information, transport or electricity distribution systems. Networks are modelled as directed graphs with nodes, in which commodities and information media are being processed, and arcs as communication links (telecommunication channels, roads, pipelines, conveyors, etc.) for media transportation. Resources of networks could be divided into two classes: services (functionality resources) and technical infrastructures (hardware and software resources). We propose to analyse the network system from the functional and user point of view, focusing on business service realized by a network system (Gold et al., 2004). Users of the network system realise some tasks in the system (for example: send a parcel in the transport system or buy a ticket in the internet ticket office). We assume that the main goal, taken into consideration during design and operation, of the network system is to fulfil the user requirements. Which could be seen as some quantitative and qualitative parameters of user tasks. Network services and technical resources are engaged for task realization and each task needs a fixed list of services which are processed on the base of whole network technical infrastructure or on its part. Different services may be realized on the same technical resources and the same services may be realized on different sets of technical resources. Of course with different values of performance and reliability parameters. The last statement is essential when tasks are realized in the real network system surrounded by unfriendly environment that may be a source of threads and even intentional attacks. Moreover, the real networks are build of unreliable software and hardware components as well. In (Avižienis et al., 2000) authors described basic set of dependability attributes (i.e. availability, reliability, safety, confidentiality, integrity and maintainability). This is a base of defining different dependability metrics used in dependability analysis of computer systems and networks. In this paper we would like to focus on more functional approach metrics which could be used by the operator of the network system. Therefore, we consider dependability of networks as a property of the networks to reliable process of user tasks, that is mean the tasks have to perform not only without faults but more with demanded performance parameters and according to the planned schedule.

2

Computational Intelligence and Modern Heuristics

We propose to concentrate the dependability analyse of the networks on fulfilling the user requirements. Therefore, it should take into consideration following aspects: specification of the user requirements described by task demands, for example certainty of results, confidentiality, desired time parameters etc., functional and performance properties of the networks and theirs components, reliable properties of the network technical infrastructure that means reliable properties of the network structure and its components considered as a source of failures and faults which influence the task processing, process of faults management, threads in the network environment, measures and methods which are planned or build-in the network for elimination or limitation of faults, failures and attacks consequences; reconfiguration of the network is a good example of such methods, applied maintenance policies in the considered network. As a consequence, a services network is considered as a dynamical structure with many streams of events generated by realized tasks, used services and resources, applied maintenance policies, manager decisions etc. Some network events are independent but other ones are direct consequences of previously history of the network life. Generally, event streams created by a real network are a mix of deterministic and stochastic streams which are strongly tied together by a network choreography. Modelling of this kind of systems is a hard problem for system designers, constructors and maintenance organizers, and for mathematicians, too. It is worth to point out some achievements in computer science area such as Service Oriented Architecture (Gold et al., 2004; Josuttis, 2007) or Business Oriented Architecture(Zhu & Zhang, 2006) and a lot of languages for network description on a system choreography level, for example WS-CDL (Yang et al., 2006), or a technical infrastructure level, for example SDL (Aime et al., 2007). These propositions are useful for analysis of a network from the designer point of view and they may been supported by simulation tools, for example modified SSF.Net simulator (Zyla & Caban, 2008), but it is difficult to find a computer tools which are combination of language models and Monte Carlo (Fishman, 1996) based simulators. The chapter presents a step to a creation of a verbal and formal model of a net of services. It presents a generic approach to modelling performability (performance and reliability) properties of the services net. The Petri Nets will is used for the task realization process modelling. Moreover, an example of service net– the discrete transport system analysed by an event-driven simulator is presented.

2. Service network – overview We can distinguish three main elements of any network system: users, services and technical resources. As it presented in the Figure 1 users are generating tasks which are being realized by the network system. The task to be realized requires some services presented in the system. A realization of the network service needs a defined set of technical resources. In a case when any resource component of this set is in a state "out of order" or "busy" then the network service may wait until a moment when the resource component

Services net modeling for dependability analysis

3

returns to a state "available" or the service may try to create other configuration on the base of available technical resources. Therefore, following problems should be taken into consideration:

RESOURCES

SERVICES

TASKS IN

OUT

FIFO Mapping A TASK SERVICES

into

Mapping A SERVICE into RESOURCES

THREATS

Fig. 1. Task mapping on business services and technical resources description and mapping a service net on existed net resources for each moment of its using; a prognoses process of the service net behaviour in a real life conditions – definition and selection of measures; finding relations between measures/criteria and functional, performance and reliability parameters of the service net; evaluation methods of choose measures of the service net; decision process of maintenance organization - decision steps as a reaction on appeared events, specially on threats; definition of measures and criteria of decision steps - risk of threats, and evaluation of decision risk and its cost. An illustration of problems connected with functional – dependability modelling of services networks is shown in Figure 2.

3. Functional – dependability models The ST model (State - Transition model) is the most popular and useful methodology used in modelling of systems. The system is considered as a union of its hardware, management system and involved personnel (administrators, users, support services etc.), so the system states depend on the states of all these elements. The system transitions are consequences of events connected

4

Computational Intelligence and Modern Heuristics

with execution of system tasks and jobs, system faults and system reactions to them, incidents, attacks and system responses etc., i.e. system events are observable occurrences which change states of the system. Infrastructures Clients tasks requirements

Reactions

Threats

Service Infrastructure

System reactions functional maintenance

Functional Infrastructure

Attacks/Faults Metrics definitions permissible values

Technical Structure reactions elements maintenance

Technical Infrastructure

Failures/Faults Users

Designer/Organizer

FUNCTIONAL – DEPENDABILITY MODEL Fig. 2. Basic terms and a functional - dependability model of a services network (Zamojski, 2009) The functional – reliability model (Zamojski, 2005) of computer system SC is a configuration of hardware H, software SP, men M, management system (operating system) MS, tasks (functions) J and system events ES

SC H SP J M MS E S

(1)

The system events includes those connected with tasks realization, occurrence of incidents (faults, viruses, and attacks) and system reactions to them (hardware and information

Services net modeling for dependability analysis

5

renewals). The system events are very often described by their time parameters which are collected in so called a chronicle of the system. A functional configuration S C(i ) of the computer system is a set of hardware and software resources that are allocated to realize i-th task j (i ) ;

j

(i )

J SC(i ) SC

and SC(i ) H (i ) SP(i ) j (i ) M (i ) MS (i ) ES(i )

(2) (3)

where superscript (i) fix subsets of system resources needed for execution i-th task. A functional – reliability model in the system engineering is regarded as a structured representation of the functions, activities or processes, and events generated inside of the considered system and/or by its surroundings. The system events may be divided into two main classes: functional events and reliable (together with maintenance) events. In practice this classification is very often difficult to be made because a system reaction on an event may involve a lot of functional or/and maintenance reactions. Therefore, it is better to create one common class of functional–reliable events, so called performability events (Zamojski & Caban, 2006). Because of these reasons considered model of services network will be called performability model or functional-dependability model (Zamojski & Caban, 2007). If the functional – reliability model is built as the ST model then the set of the system states is determined by the states of all resources involved in tasks realized at the moment. The system resource allocations are dynamic, modified due to the incoming tasks, occurring incidents and system reactions (especially reconfiguration).

Fig. 3. Exemplar choreography

4. Formal model of a service net 4.1 A service net A services net is a system of business services that are necessary for user (clients) tasks realization process. The services net are built on the bases of technical infrastructure

6

Computational Intelligence and Modern Heuristics

(technological resources) and technological services which are involved into a task realization process according to decisions of a management system. The task realization process may include many sequences of services, functions and operations which are using assignment network resources - in the computer science this process of assignments and realization steps is called as a choreography. An example of choreography for web service is presented in Figure 3. The functional – dependability model of a services network has to consider specificity of the network: nodes and communication channels, the ability of dynamic changes of network traffic (routing) and reconfiguration, and all other tasks realized by the network. The service network could be defined as a tuple:

SNet J , BS , TR, MS , C , where:

J J (i ) ; i 1, 2, ... – a set of tasks generated by users and realized by the service network,

BS BS ( b ) ; b 1, 2, ... – a set of services which are available in the considered network,

(4)

TR TR ( r ) ; r 1, 2, ... – technical infrastructure of the network which consists of technical resources as machines/servers, communication links etc, MS – management system (for example - operating system),

C c t ; t 1, 2, ... – a network chronicle, defined by a set of all essential moments in a “life” of the network.

4.2 Tasks The task J (i ) is understood as a sequence of actions and works performed by services network in a purpose to obtain desirable results in accordance with initially predefined time (i ) (i ) schedule and data results. In this way a single task J (i ) J IN , J OUT

may be defined as an

(i ) ordered pair of so called input task J IN , which is described by the input parameters (i ) (postulated results and prognosis time schedule) and the corresponding output task J OUT

(real results and real time schedule). The input task is define as the triple: (i ) J IN R P( i ) , A( i ) , C P( i ) ,

(5)

where:

R P(i ) - postulated results of the i-th task execution,

C P(i ) - postulated chronicle of the task realization,

A(i ) A(i ) RP(i ) , C P(i )

- a sequence of actions and works necessary to obtain

postulated results in planned time.

Services net modeling for dependability analysis

7

The A (i ) may be described by a flowchart of actions and works, and its realization depends on an availability of network services and technical resources. The output task is define as the pair: (i ) (i ) (i ) , J OUT Rreal , , C real

(6)

where:

(i ) Rreal - real results of the i-th task execution,

(i ) C real - real chronicle of the task realization.

The postulated results and chronicles are defined with assumed tolerance intervals ( R P( i ) R P( i ) R P( i ) and C P( i ) C P( i ) C P( i ) ) and when the real results and chronicles are inside (i ) (i ) the intervals ( Rreal R P( i ) , R P( i ) and C real C P( i ) , C P( i ) ) then the task is assumed to be correctly realised.

4.3 Services The term service is understood as a discretely defined set of contiguously cooperating autonomous business or technical functionalities. Of course, a special mechanism to enable an access to one or more businesses and functionalities should be implemented in the system. The access is provided by a prescribed interface and is monitored and controlled according to constraints and policies as specified by the service description1. The service BS (b) is defined as a sequence of activities described by a set of capabilities (functionalities) (b) BS IN

F

(b) k ,

k 1,2,... , a set of demanded input parameters of data and/or media

(b) and a set of output parameters BS OUT :

BS ( b )

F

(b) k ;k

(b) (b) . 1, 2,... , BS IN , BS OUT

(7)

Because the services have to cooperate with other services than protocols and interfaces between services and/or individual activities are crucial problems which have a big impact on the definitions of the services and on processes of their execution. A service may be realized on the base of a few separated sets of functionalities

F

( b) k1 ,

F

k1 1,2,... ,

(b) k2 ,

k 2 1,2,... … with different costs which are the consequences of

using different network resources. 4.4 Technical infrastructures Hardware is considered as a set of hardware resources (devices and communication channels) which are described by their technical, performance, reliability and maintenance parameters. The system software is described in the same way. OASIS Organization for the Advancement of Structured Information Standards Home Page. http://www.oasis-open.org/home/index.php 1

8

Computational Intelligence and Modern Heuristics

4.5 Management system The management system of service network allocates the services and network resources to realized tasks, checks the efficient states of the services network, performs suitable actions to locate faults, attacks or viruses and minimize their negative effects. Generally the management system has two main functionalities: monitoring of network states and controlling of services and resources, creating and implementing maintenance policies which ought to be adequate network reactions on concrete events/accidents. In many critical situations a team of men and the management system have to cooperate in looking for adequate counter-measures, for instance in case of a heavy attack or a new virus. The maintenance policy is based on two main concepts: detection of unfriendly events (attacks, faults, failures) and network responses to them. In general the network responses incorporate the following procedures: detection of incidents and identification of them, isolation of damaged network resources in order to limit proliferation of incident consequences, renewal of damaged services, processes and resources. It is hard to predict all possible events (for example all new demands for a task realization) or incidents (for example failures, faults, attacks or an end of a renewal procedure) in the services network, especially it is not possible to predict all possible attacks or men faults, so system reactions are very often "improvised" by the management system, by its administrator staff or even by expert panels specially created to find a solution for the existing situation. The time, needed for the renewal, depends on the incident that has occurred, the system resources that are available and the renewal policy that is applied. The renewal policy is formulated on the basis of the required levels of system dependability and on the economical conditions (first of all, the cost of downtime and cost of lost achievements) (Zamojski & Caban, 2006; Zamojski & Caban, 2007). Maintenance policy is based on maintenance rules that are understood as chains of decisions about allocation of services and network resources (hardware, software, information and service staff) that are undertaken to keep the system operational after an incident. These rules are very often connected with small fragments of the system, for example; replacement of a machine (a processor) or communication links. These local operations may have impact on the whole network, e.g. if a communication channel is down for a few minutes, then rates of medium (data) traffic of the network may violently change (Zamojski & Caban, 2007). 4.6 Chronicles The set of system events is created by events connected with tasks realization, incidents occurrence (faults, viruses, and attacks) and system reactions (hardware and information renewals).

Services net modeling for dependability analysis

9

4.7 A process of the task realization The task realization process is supported by two-level decision procedures connected with selection and allocation of the network functionalities and technical resources. There are two levels of decision process: services management and resource management. The first level of decision procedure is connected with selection suitable services and creation a task configuration. Functional and performance task demands are the base for suitable services choosing from all possible network services. The goal of the second level of the decision process is to find needed components of the network infrastructure for each service execution and the next allocate them on the base their availability to the service configuration. If any component of technical infrastructure is not ready to support the service configuration then allocation process of network infrastructure is repeated. If the management system could not create the service configuration then the service management process is started again and other task configuration may be appointed. These two decision processes are working in a loop which is started up as a reaction on network events and (i ) is mapped on the accidences. On the beginning of a task realization procedure the task J IN

network services and a subset of services BS s( i ) necessary for the task realization according to (i ) BS s( i ) . Next, a demand of technical resources for its postulated parameters is created; J IN

each service realization is fixed: BS s( i ) Rn( i , s ) . In a real services network the same task is very often realized on the base of various service subsets and the same service may involved different technical resources. Of course, this possible diversity of task realization is connected with the flowcharts A(i ) and the availability of network resources is checking for each service. In this way a few task configurations service configurations, additionally described by appropriately defined cost parameters, may be fund for the i-th task realization.

5. The Petri net model Petri Nets (Zhou & Kurapati, 1999) are a powerful and often used modelling tool. They allow to represent two aspects of a modelled system static and dynamic (thanks to the token evolution). A common definition of the Petri net is formulating as a triple:

PN P, T , A

(8)

where: P - set of places that represent deterministic states of processes, tasks, services, resources etc. of the considered system. The places are often complemented by tokens that are modeled abilities of these places. T – set of transitions that represent net events characterized by conditions necessary to come them into firing. The transitions are often described by firing time and other probabilistic characteristics etc. A – set of arches (directed and inhibited) that models routes on which events represented by tokens are passed by the net.

10

Computational Intelligence and Modern Heuristics

t1-TASK PICK UP

P1-MANAGER

FIFO

SERVICES

P2-SERVICE SET

t4-TASK START

RESOURCES t2-SERVICE ALLOCATION

t3-RESOURCE VERIFICATION P3-FUNCTIONAL CONFIGURATION

t5-RENEWAL

P5CONFIGURATION FAULT

P4-TASK END

P4-TASK REALIZATION t5-RENEWAL Fig. 4. The Petri net model of a task realization in a services network

A state of the net, described by marking (tokens localization in the places) represents sufficient conditions for arising new events of a net’s life. Net’s events may be divided into many classes, for example functional, reliable or maintenance events, deterministic or probabilistic ones etc. The mention classification depends on assumed criteria. The Petri net model of the ith task realization ( J (i ) ) is shown in the Figure 4. It is assumed (i ) ) is taken from the stack of waiting tasks (transition t1 and its firing time the input task ( J IN

T(i1) ). The choice of the task may be based on the strategy FIFO (as it is illustrated on the Figure 2) and it is conditioned by ending of previously task (the transition t1 is guarded by inhibited arc from the place P6 (end of the task). The place P1 represents the management

Services net modeling for dependability analysis

11

process of mapping the input task into a set of necessary services ( BS (b ) ) and when the services are ready then the transition t2 is fired (time T( i2) ). After checking if the chosen services may be activated on the base of needed efficient technical resources then a functional configuration of the task (place P3) is created (transition t3 with time T( i3) ) and at this moment the manager may take a decision about start of the task process realization (transition t4). There is a build-in system of monitoring and detection of unfriendly accidences like faults and failures (place P5). When such unfriendly accidence is discovered then a renewal process of the functional configuration is started (transition t5 and renewal time T( i5) ) and the task realization process is broken (the inhibited input of the transition t6) till the end of renewal operations. The firing process of each transition is described by conditions (tokens in input places for the transition) which may occur with probabilities, for example a probability of a machine failure, and time duration of transition firing may be a probabilistic function, too. Of course a transition may be many times fired during a task realization, because net events may need to repeat bigger or smaller loops of the net. The Petri net model shown in the Figure 4 is reduced and presented only to show the main idea of the proposed modelling method which may be useful for evaluation of dependability measures of services networks. ) that is modelled as a stochastic timed Petri net with Real time of the ith task realization TJ(ireal k transitions and l loops and sub loops may be evaluated as: ) TJ( ireal

Pre

(i ) l

lL

1

Pr f k

(i ) T k ,l

1 T k ,l ,

(9)

where:

el( i ) 1 - an event (for example, a new task, an allocation a technical resource to the i-th task, an end of a renewal process etc.) which is started a loop or a sub loop in the Petri net model ascribed to the ith task realisation,

f T( ik),l 1 - an event; the k transition is fired during l loop connected with the i-th

task realization. Such dependability measures as a probability that the real time duration of the i-th task may be defined and evaluated on the base of the Petri net models as:

(i ) (i ) ) ) M Depend ( J IN ) Pr TJ( ireal TJ( iOUT .

(10)

6. Discrete transport system – service net case study An example of service net could be a DTSCNTT - Discrete Transport System with Central Node and Time-Table (Walkowiak et al., 2007). This is a simplified case of the Polish Post transport system. Following the definition (4) each elements of service net could be described as follows.

12

Computational Intelligence and Modern Heuristics

The business service (BS) provided the Polish Post and therefore DTSNTT service net is the delivery of mails. The technical infrastructure (TR) consists of a set of nodes placed in different geographical locations and set of vehicles and timetable. There are bidirectional routes between nodes marked by lines. There is distinguished one node called central mode. Mails are distributed among nodes by vehicles. Each vehicle is described by following functional and reliability parameters: mean speed of a journey, capacity – number of containers which can be loaded, reliability function and time of vehicle maintenance. Management system (MS) is defined by time table since vehicles distributing mails among system nodes operate according to the time-table exactly as city buses or intercity coaches. The time-table consists of a set of routes (sequence of nodes starting and ending in the central node, time of approaching each node in the route and the recommended size of a vehicle). The number of used vehicle, or the capacity of vehicles does not depend on temporary situation described by number of transportation tasks or by the task amount for example. It means that it is possible to realize the journey by completely empty vehicle or the vehicle cannot load the available amount of commodity (the vehicle is to small). Timetable is a fixed element of the system in observable time horizon, but it is possible to use different time-tables for different seasons or months of the year. To reduce the complexity of the model we have decided to model the containers not separate mails (Walkowiak & Mazurkiewicz, 2009). Therefore, the tasks (J) of sending mails is modelled as a random process of containers generation. Each generated container has a destination address. The central node is the destination address for all containers generated in the ordinary nodes. Where containers addressed to in any ordinary nodes are generated in the central node. The generation of containers is described by Poisson process. In case of central node there are separate processes for each ordinary node. Whereas, for ordinary nodes there is one process, since commodities are transported from ordinary nodes to the central node or in opposite direction. Postulated result of any task is to transport a container to the destination node within a given time limit. The process of any task realization could be described as follows. The container is generated in some node at a given time (according to Poisson process) and stored in the node waiting for the vehicle to be transported to the destination node. Each day a given time-table is realized, it means that at a time given by the time table a vehicle, selected randomly from vehicles available in the central node, starts from central node and is loaded with containers addressed to each ordinary nodes included in a given route. The loading is done in a service point. This is done in a proportional way. Since the number of service points is limited (parameter of the central node) and loading takes some time is there is no free service point vehicles has to wait in a queue. After loading the vehicle goes to a given ordinary node - it takes some time according to vehicle speed - random process and road length. After approaching the ordinary node the vehicle is waiting in an input queue if there is any other vehicle being loaded/unloaded at the same time. The containers addressed to given node are unloaded and empty space in the vehicle is filled by containers addressed to a central node. The operation is repeated in each node on the route and finally the vehicle is approaching the central node when is fully unloaded and after it is available for the next route. The process of vehicle operation could be stopped at any moment due to a failure (described by a random process). After the failure, the vehicle waits for a maintenance crew

Services net modeling for dependability analysis

13

(if it is not available due to repairing other vehicles), is being repaired (random time) and after it continues its journey (Walkowiak & Mazurkiewicz, 2009). As suggested in the introduction the simulator tool for analysing DTSCNTT service net was developed. The tool was adopting the event simulation approach, which is based on a idea of event, which could be described by time of event occurring, type of event (in case of DTSCNTT it could be a vehicle failure) and element or set of elements of the system on which event has its influence. The simulation is done by analyzing a queue of event (sorted by time of event occurring) while updating the states of system elements according to rules related to a proper type of an event. (Walkowiak et al., 2007) We proposed for the case study analysis an exemplar DTSCNTT based on Polish Post regional centre in Wroclaw. We have modelled a system consisting of one central node (Wroclaw regional centre) and twenty two other nodes - cities where there are local post distribution points in Dolny Slask Province. The length of roads were set according to real road distances between cities used in the analyzed case study. The intensity of generation of containers for all destinations were set to 4,16 per hour in each direction giving in average 4400 containers to be transported each day. The vehicles speed was modelled by Gaussian distribution with 50 km/h of mean value and 5 km/h of standard deviation. The average loading time was equal to 5 minutes. There were two types of vehicles: with capacity of 10 and 15 containers. The MTTF of each vehicle was set to 2000. The average repair time was set to 5h (Gaussian distribution). (Walkowiak & Mazurkiewicz, 2009) The simulation time was set to 100 days and each simulation was repeated 10.000 times. We have calculated the dependability measure defined by (10), the probability that the duration time of a task (delivery of some container) will be longer then a given time limit using Monte-Carlo approach (Fishman, 1996). The achieved results are presented in Figure 5.

Fig. 5. The probability of containers to be transported within a given limit time

7. Conclusion We have given a verbal and formal model of a service net. The formal model consists of a tuple mathematical model and the Petri Nets one. We hope that the proposed Petri net model will be very useful in the synthesis process of the service net. Of course there are a lot

14

Computational Intelligence and Modern Heuristics

problems with building the Petri net model of the real services net in which exist a large number of services and technical resources that are mapped to many concurrent realized tasks. We have also presented an exemplar case study of service net a discrete transport system service net – a simplified case of Polish Post transport system. It was analysed by a usage of a discrete transport system simulator. We plan to develop a simulation tool for a generic service nets with a functionality similar to presented discrete transport system simulator or BS.SSF simulator (Walkowiak, 2009) together with graphical tool for modelling and simulation. We also plan to use high level languages like for examples Business Process Modeling Notation (White & Miers 2008) for a graphical representation for specifying business processes in a workflow. We hope that it could be possible to map BPMN into a Petri net model or a general purpose service net simulator allowing to perform a service net dependability analysis.

8. References Aime, M.; Atzeni, A.; Pomi, P. (2007). Ambra - Automated Model-Based Risk Analysis, Proceedings of the 3rd International Workshop on Quality of Protection, pp. 43-48, Alexandria, ACM, New York Avižienis, A. ; Laprie, J. ; Randell, B. (2000). Fundamental Concepts of Dependability. Proceedinggs of 3rd Information Survivability Workshop, Boston Fishman, G. (1996). Monte Carlo: Concepts, Algorithms, and Applications, Springer-Verlag, New York Gold, N.; Knight, C. ; Mohan, A.; Munro, M. (2004). Understanding service-oriented software. IEEE Software, Vol. 21, 71– 77 Josuttis, N. (2007). SOA in Practice: The Art of Distributed System Design, O’Reilly Walkowiak, T. (2009). Information systems performance analysis using task-level simulator, Proceedings of International Conference on Dependability of Computer Systems, pp. 218225, Brunow, IEEE Computer Society Press, Los Alamitos Walkowiak T. ; Mazurkieiwicz, J. (2009), Analysis of critical situations in discrete transport systems, Proceedings of International Conference on Dependability of Computer Systems, pp. 364-371, Brunow, IEEE Computer Society Press, Los Alamitos Walkowiak, T. ; Mazurkiewicz, J.; Kaplon, K. (2007). Functional analysis of discrete transport system realized by SSF simulation tool. Advances simulation of systems. Proceedings of the XXIXth International Autumn Colloquium, pp. 103-108, Sv. Hostyn, MARQ, Ostrava White, S. A Miers, D. (2008). BPMN Modeling and Reference Guide, Future Strategies Inc., Lighthouse Pt Yang, H.; Zhao, X.; Qiu, Z.; Pu, G; Wang, S. (2006). A Formal Model for Web Service Choreography Description Language (WS-CDL). Proceedings of the IEEE international Conference on Web Services, IEEE Computer Society, Washington Zamojski, W. (2005). Functional-reliability model of computer-human system. Computer engineering, pp. 278-297, Eds. Wojciech Zamojski, WKL, Warszawa (in Polish) Zamojski, W. (2009). Dependability of services networks. Proceedings of the Third Summer Safety and Reliability Seminars, pp. 387-396, Gdnask-Sopot, Polish Safety and Reliability Association, Gdansk

Services net modeling for dependability analysis

15

Zamojski W.; Caban D. (2006). Introduction to the dependability modelling of computer systems. Proceedings of International Conference on Dependability of Computer Systems, pp. 100 – 109, Szklarska Poreba, IEEE Computer Society Press, Los Alamitos Zamojski, W.; Caban, D. (2007). Maintenance policy of a network with traffic reconfiguration. Proceedings of International Conference on Dependability of Computer Systems, pp. 213 – 220, Szklarska Poreba, IEEE Computer Society Press, Los Alamitos Zhu, J.; Zhang, L. Z. (2006). A Sandwich Model for Business Integration in BOA (Business Oriented Architecture). Proceedings of the 2006 IEEE Asia-Pacific Conference on Services Computing, pp. 305-310, IEEE Computer Society, Washington Zhou, M.; Kurapati, V (1999) Modeling, Simulation, & Control of Flexible Manufacturing Systems: A Petri Net Approach. World Scientific Publishing Zyla, M.; Caban, D. (2008). Dependability Analysis of SOA systems. Proceedings of International Conference on Dependability of Computer Systems, pp. 301–306, Szklarska Poreba, IEEE Computer Society Press, Los Alamitos

16

Computational Intelligence and Modern Heuristics

2

Service based information systems analysis using task-level simulator Tomasz Walkowiak

Wroclaw University of Technology Poland 1. Introduction Complex information systems (CIS) are nowadays the core of a large number of companies. And therefore, there is a large need to analyze various system configuration and chose the optimal solution during design and even operation of the information system. In this paper we propose a common approach (Birta & Arbez, 2007) based on modelling and simulation. The aim of simulation is to calculate some performance metrics which should allow to compare different configuration taking into consideration technical (like performance) and economical (like price) aspects. There is a large number of event driven computer network simulators, like OPNET, NS-2, QualNet, OMNeT++ or SSFNet/PRIME SSF(Liu, 2006; Nicol et al., 2003). However, they are mainly focused on a low level simulation (TCP/IP packets). It is obvious that increasing the system details causes the simulation becoming useless due to the computational complexity and a large number of required parameter values to be given. On the other hand a high level of modelling could not allow to record required data for system measure calculation. Therefore, the level of system model details should be defined by requirements of the system measure calculation (Walkowiak, 2009). Modelling and simulation based on TCP/IP packets level results in a large number of events during simulation and therefore in a long simulation time. It is a very good approach if one plans to analyze the influence of the traffic on the network performance. However in modern information systems high speed local networks are used. In a result for a large number of information systems (except media streaming ones) the local network traffic influence on the whole system performance is negligible. Therefore, we want to propose a novel approach based on a higher level then TCP/IP packets. We will focus on a business service realized by an information system (Gold et al., 2007) and functional aspects of the system, i.e. performance aspects of business service realized by an information system (like buying a book in the internet bookstore). We assume that the main goal, taken into consideration during design and operation of the CIS, is to fulfil the user requirements, which could be seen as some requirements to perform a user tasks within a given time limit. Therefore, the presented in the chapter modelling and simulation will be focused on a process of execution of a user request, understand as a sequence of task realised on technical services provided by the system.

18

Computational Intelligence and Modern Heuristics

The structure of the chapter is as follows. In Section 2, a model of information system is given. In Section 3, information on simulator implementation is given, next exemplars information system is analysed and simulation results are presented. It is followed by information on graphical user interface. Finally, there are conclusions and plans for further work.

2. Computer information system modelling As it was mentioned in the introduction we decided to analyze the CIS from the business service point of view. Generally speaking users of the system are generating tasks which are being realized by the CIS. The task to be realized requires some services presented in the system. A realization of the system service needs a defined set of technical resources. Moreover, the services has to be allocated on a given host. Therefore, we can model CIS as a 4-tuple (Walkowiak, 2009):

CIS Client, BS , TI , Conf

Client BS

Conf

– – – –

(1)

finite set of clients, business service, a finite set of service components, technical infrastructure, information system configuration.

During modelling of the technical infrastructure we have to take into consideration functional aspects of CIS. Therefore, the technical infrastructure of the computer system could be modelled as a pair:

TI H , N

(2)

where: H - set of hosts (computers); N – computer network. We have assumed that the aspects of TCP/IP traffic are negligible therefore we will model the network communication as a random delay. Therefore, the N is a function which gives a value of time of sending a packet form one host (vi) to another (vi). The time delay is modelled by a Gaussian distribution with a standard deviation equal to 10% of mean value. The main technical infrastructure of the CIS are hosts. Each host is described by its functional parameters: server name (unique in the system), host performance parameter – the real value which is a base for calculating the task processing time (described later), set of technical services (i.e. apache web server, tomcat, MySQL database), each technical service is described by a name and a limit of tasks concurrently being executed. We have distinguished a special kind of technical service witch models a load balancer (Aweya et al., 2002). A load balancer is described by its name and a limit of tasks (like all technical services) and additionally by a list of technical services, it sends requests to.

Service based information systems analysis using task-level simulator

19

The BS is a set of services based on business logic, that can be loaded and repeatedly used for concrete business handling process (i.e. ticketing service, banking, VoIP, etc). Business service can be seen as a set of service components and tasks, that are used to provide service in accordance with business logic for this process (Michalska & Walkowiak, 2008). Therefore, BS is modelled as a set of business service components (BSC), (i.e. authentication, data base service, web service, etc.), where each business service component is described a name, reference to a technical service and host describing allocation of business service component on the technical infrastructure and a set of tasks. Tasks are the lowest level observable entities in the modelled system. It can be seen as a request and response form one service component to another. We have distinguished two kinds of task: local and external. If request is send to service component and this component is able to respond without asking other service component than this tasks is assumed to be local. If request is send to service component and this component must ask another service component for response then than this tasks is assumed to be external. Each task is described by its name, task processing time parameter and in case of external task by a sequence of task calls. Each task call is defined by a name of business service component and task name within this business service component and time-out parameter. System configuration (Conf) is a function that gives the assignments of each service components to a technical service and therefore to hosts since a technical set is placed on a given host. In case of service component assigned in a configuration to a load balancing technical service the tasks included in a given service component are being realised on one of technical services (and therefore hosts) defined in the load balancer configuration. The client model ( Client ) consist of set of users where each user is defined by its allocation (host name), replicate parameter (number of concurrently ruing users of given type), set of activities (name and a sequence of task calls) and inter-activity delay time (modelled by a Gaussian distribution).

Fig. 1. Task and business services interaction

20

Computational Intelligence and Modern Heuristics

Summarising, a user initiate the communication requesting some tasks on a host, it could require a request to another host or hosts, after the task execution hosts responds to requesting server, and finally the user receives the respond. Requests and responds of each task gives a sequence of a user task execution as presented on exemplar Fig. 1. The user request execution time in the system is calculated as a sum of times required for TCP/IP communication and times of tasks processing on a given host. The request is understood as correctly answered if answers for each requests in a sequence of a user task execution were given within defined time limit (time-out parameter of each request in BS model) and if a number of tasks executed on a given technical service is not exceeding the limit parameter (parameter of TI model). The user request execution time in the system is calculated as a sum of times required for TCP/IP communication (modelled by a random value) and times of tasks processing on a given host. The task processing time is equal to the task processing time parameter multiplied by a number of other task processed on the same host in the same time and divided by a the host performance parameter. Since the number of tasks is changing in simulation time, the processing time is updated each time a task finish the execution or a new task is starting to be processed. with some execution time Let 1 , 2 ,..., e be a time moments when a task ( t ij )

( executiontime t ij ) is starting or finishing processing on a host h allocation (t ij ) . Let

number( h, ) denotes a number of task being processed at time on host h. It is not taking into account tasks which requests tasks on other hosts and waits for responses. Therefore, the time when task

t ij finishes its execution e has to fulfill a following rule: e

k 2

k

k 1

performance( h ) executiontime t ij number( h, k 1 )

.

(3)

Having above notation the task processing time is equal to: pt ( t ij ) e 1 .

(4)

3. Task-level simulator Once a model has been developed, it is executed on a computer. It is done by a computer program which steps through time. One way of doing it is so called event-simulation. Which is based on a idea of event, which could is described by time of event occurring, type of event (in case of CIS it could be host failure) and element or set of elements of the system on which event has its influence. The simulation is done by analyzing a queue of event (sorted by time of event occurring) while updating the states of system elements according to rules related to a proper type of event. As it was described in section 2, the network connections are modelled as a random delays. Therefore, we were not able to use mentioned in the introduction computer network simulators but we have to develop a new one (Walkowiak, 2009). The event-simulation

Service based information systems analysis using task-level simulator

21

program could be written in general purpose programming language (like C++), in fast prototyping environment (like Matlab) or special purpose discrete-event simulation kernels. One of such kernels, is the Scalable Simulation Framework (SSF) (Nicol et al., 2003) which is a used for SSFNet (Nicol et al., 2003) computer network simulator. SSF is an object-oriented API - a collection of class interfaces with prototype implementations. It is available in C++ and Java. SSF API defines just five base classes: Entity, inChannel, outChannel, Process, and Event. The communication between entities and delivery of events is done by channels (channel mappings connects entities). For the purpose of simulating CIS we have used Parallel Real-time Immersive Modeling Environment (PRIME) (Liu, 2006) implementation of SSF due to much better documentation then available for original SSF. We have developed a generic class (named BSObject) derived from SSF Entity which is a base of classes modeling CIS objects: host and client which models the behavior of CIS presented in section 2. Each object of BSObject class is connected with all other objects of that type by SFF channels what allows communication between them. In the first approach we have realized each client as a separated object. However, in case of increasing of the number of replicated clients the number of channels increases in power of two resulting in a large memory consumption and a long time for initialization simulation objects. Therefore, we have changed the implementation, and each replicated client is represented by one object. The developed simulator is called SSF.BS (from SSF – the simulation framework and BS – business service).

4. Computer information system simulation analysis 4.1 First case study For testing purposes of presented CIS system model (section 2) and developed extension of SSF (SSF.BS, section 3) we have analysed a case study information system. It consists of one type of client placed somewhere in internet, firewall, three hosts (Figure 2), three technical services and three business service components. An interaction between a client and tasks of each business service component is presented on UML diagram in Figure 1. The CIS structure as well as other functional parameters were described in a DML file (see example in Figure 3). The Domain Modeling Language (DML) (Nicol et al., 2003) is a SSF specific text-based language which includes a hierarchical list of attributes used to describe the topology of the model and model attributes values.

22

Computational Intelligence and Modern Heuristics

Fig. 2. Case study system overview Net [ Host [ Name DNS-Server Service [ Name DNSService Limit 110 LocalTask [ Name GetDnsAddress Time 0.01]]] … Client [ Name Client Replicate 1000 Sleep 10.0 Activity [ Name WWWRequest TaskCall [ Host DNS-Server Service DNSService Task GetDnsAddress ] … Fig. 3. Exemplar CIS description in DML file In the presented information system we have observed the response time to a client request in a function of number of clients. The achieved results are presented in Figure 4.

Service based information systems analysis using task-level simulator

23

Fig. 4. Response time to users requests in a function of number of concurrent users 4.2. Simulator performance analysis Next, we have tested the SSF.BS simulator performance and scalability. We calculated the time of running one batch of simulation of the exemplar IS described in previous chapter on a 2.80 GHz Intel Core Duo machine. We have compared the performance results with PWR.SSF.Net simulator (Zyla & Caban 2008) developed in Java. The CIS model used in PWR.SSF.Net differs from SSF.BS mainly in a method of calculation a task performance time and therefore the results of simulating cannot be compared. As it could be noticed on Figure 5 & 6 the presented in the paper simulator (SSF.BS) simulates the CIS in shorter time, and a difference with PWR.SSF.Net is increasing with an increase of number of users. For a number of concurrent users less than 300 (Figure 5) the SSF.BS is 10 times faster than PWR.SSF.Net. The main reason of this difference is the level of modelling details. In both cases simulators perform similar number of events per second. However, PWR.SSF.Net simulates the transmission of TCP/IP packets whereas SSF.BS works on higher level the tasks and therefore in case of presented here approach the number of events is smaller. Not, only computational complexity of SSF.BS is lower than PWR.SSF.Net but also the usage of memory for SSF.BS is much smaller. For a case study example the SSF.BS requires 1.8 Mbytes for 0.1 client requests per second upto 4.8 Mbytes for a 1000 concurrent users. In case of PWR.SSF.Net it is hard to state the memory usage due to the memory management techniques in Java. This is the problem of enlarging the difference of speed between analysed simulators. For number of clients more then 300 (Figure 6) Java based PWR.SSF.Net starts to have problems with memory management and large number of processing time is used by JVM garbage collector (even Java based simulator was started 1 Gbyte memory limit). It results in 1000 faster simulation of SSF.BS in case of 1000 concurrent users.

24

Computational Intelligence and Modern Heuristics

Fig. 5. Simulation time (time of running the simulator) for case study system in a function of number of users (till 300 concurrent users)

Fig. 6. Simulation time (time of running the simulator) for case study system in a function of number of users (for more than 300 users) 4.3. Second case study – load balancer A very common technique of achieving height availability of their services in CIS is using a load balancer. Load balancer allows a traffic distribution among replicated services on a server farm. Therefore, the most common load balancing algorithm – round robin (Aweya, et al. 2002) - has been implemented in the SSF.BS.

Service based information systems analysis using task-level simulator

Fig. 7. Load balancer case study system overview

Fig. 8. Task and business services interaction for case study

25

26

Computational Intelligence and Modern Heuristics

For the case study analysis of CIS with load balancing we propose an exemplar service system illustrated in Fig.7 . Essentially the test-bed system consists of two server farms A (included host ,,hostA1”-,,hostA3”) and B (included host ,,hostB1”-,,hostB3”) and a database server. Both farms are connected with LoadBalancer as a gate to internet users. For the case study, let us imagine, that this system is responsible for some Web Application that allows searching the database and executes a Tomcat based application. Fig. 8 shows choreography of this service, based on three service components. WWW service component has been replicated on hosts: A1-A3, Application of on hosts: B1- B3 and Database is not replicated is placed on one host. For this scenario two configuration has been proposed: first (I) standard and second (II) with all hosts with doubled performance parameter. The achieved simulation results, the response time to user requests in a function of number of concurrent users is presented in Figure 9. The simulation time was set to 1000 seconds. The limit of concurrent tasks for all technical services was equal to 1000, whereas the interactivity delay time equal to 1 s. As it could be expected the response time for configurations II is almost twice shorter than for configuration I. However, if we slightly change configuration II, setting the performance of database host equal to the value used in configurations I the resulting response time will be very similar to results of configuration I. These small experiment shows the ability of simulator to compare performance of different system configurations.

Fig. 9. Response time to users requests in a function of number of concurrent users for two configurations of load balancer case study

5. Graphical interface The previous section showed the possibilities of using SSF.BS simulator and its good computational performance capabilities. However, nowadays the practical usage of any computer tool requires a good graphical interface. As it was mentioned in the section 3, all

Service based information systems analysis using task-level simulator

27

input information of modelled CIS is described in DML text file. Even the DML file format is simple (Figure 3), it is difficult for a human being to describe a CIS with large number of host and sophisticated service interaction without any error in text file. Within the framework of DESEREC EU grant (http://www.deserec.eu) a Java based graphical tool called ''Integrated Analysis Environment'' (IAE) was developed (Michalska & Walkowiak, 2008b) for a usage of PWR.SSF.Net simulator. After a few changes in IAE it was adopted to SSF.BS simulator. In IAE we took into consideration an inconvenient format of Domain Modelling Language and we proposed its XML representation with all supplements attributes of proposed extended simulation framework - called XDML. Creation of XDML language gave many processing possibilities. IAE framework using JAXB techniques and implemented translation methods creates one model (XDML) from other modelling languages: system infrastructure from SDL (System Description Language, http://www.positif.org/) and task interaction from WS-CDL (WebServices Choreography Description Language, http://www.w3.org/). This XDML model is visualized showing the structure of the network and it's element (Figure 10). Each network element has several functional parameters and user can graphically edit this information. In proposed framework user is able to put its own variables and attributes based on XDML specification or use extend models (i.e. consumption model, operational configuration model) to simplified its work. After setting up all parameters of network elements and service components the user is able to perform simulation. It is done by transforming XDML into DML. The resulting DML file is then simulated. Simulation is integrated into IAE since both tools are developed in Java therefore user can see on the screen text output from the simulator on-line. The results from simulation (output file from simulator) are caught by IAE and response time to user requests is calculated and displayed.

Fig. 10. Integrated Analysis Environment - screenshot

28

Computational Intelligence and Modern Heuristics

6. Conclusion We have presented a simulation approach to functional analysis of complex information systems. Developed simulation software allows to analyze the effectiveness (understood in given exemplar as a the response time to a client request) of a given configuration of computer system. Changes in a host performance or in a number of clients can be easily verified. Also, some economic analysis could be done following the idea presented in (Walkowiak & Mazurkiewicz, 2005). The implementation of CIS simulator done based on SSF allows to apply in a simple and fast way changes in the CIS model. Also the time performance of SSF kernel results in a very effective simulator of CIS. We are now working on implementing other load balancing algorithms what should allow to analyze a wider range of enterprise information systems and compare different load balancing algorithms. We also plan to extend the model and simulator to include the reliability model of technical infrastructure components. It should allow to measure the availability of a business service in a function of functional and reliability parameters of information systems components.

7. References Avižienis, A. ; Laprie, J. ; Randell, B. (2000). Fundamental Concepts of Dependability. Proceedinggs of 3rd Information Survivability Workshop (ISW-2000), Boston, Massachusetts Aweya, J.; Ouellette, M.; Montuno, D.; Doray, B.; Felske, K. (2002). An adaptive load balancing scheme for web servers. International Journal of Network Management, Vol. 12 Birta, L. ; Arbez, G. (2007). Modelling and Simulation: Exploring Dynamic System Behaviour. Springer, London Gold, N.; Knight, C. ; Mohan, A.; Munro, M. (2004). Understanding service-oriented software. IEEE Software, Vol. 21, 71– 77 Liu, J. (2006). Parallel Real-time Immersive Modeling Environment (PRIME), Scalable Simulation Framework (SSF), User’s maual. Colorado School of Mines Department of Mathematical and Computer Sciences, 2006, [Online]. Available: http://prime.mines.edu/ Nicol, D. ; Liu, J., Liljenstam, M. ; Guanhua, Y. (2003). Simulation of large scale networks using SSF. Proceedings of the 2003 Winter Simulation Conference, Vol. 1, pp. 650–657, New Orleans, Michalska, K. ; Walkowiak, T. (2008). Hierarchical Approach to Dependability Analysis of Information Systems by Modeling and Simulation. Proceedings of the 2008 Second international Conference on Emerging Security information, Systems and Technologies, , pp. 356-361 Cap Esterel, IEEE Computer Society, Washington Walkowiak, T. ; Mazurkiewicz, J. (2005) Reliability and Functional Analysis of Discrete Transport System with Dispatcher. Advances in Safety and Reliability, European Safety and Reliability Conference – ESREL 2005, Gdynia, pp. 2017-2023, Taylor & Francis Group, London Walkowiak, T. (2009). Information systems performance analysis using task-level simulator, Proceedings of International Conference on Dependability of Computer Systems, pp. 218225, Brunow, IEEE Computer Society Press, Los Alamitos Zyla, M.; Caban, D. (2008). Dependability Analysis of SOA systems. Proceedings of International Conference on Dependability of Computer Systems, pp. 301–306, Szklarska Poreba, IEEE Computer Society Press, Los Alamitos

3

Modelling equipment deterioration vs. maintenance policy in dependability analysis Jarosław Sugier

Wrocław University of Technology Poland

George J. Anders

Technical University of Łódź Poland 1. Introduction Effective and efficient maintenance is a significant factor in operation of today’s complex computer systems. Selecting the optimal maintenance strategy must take numerous issues into account and among them reliability and economic factors are often of equal importance. On one side, it is obvious that for successful system operation failures must be avoided and this opts for extensive and frequent maintenance activities. On the other, superfluous maintenance may result in very large and unnecessary cost. Finding a reasonable balance between these two is a key point in efficient system operation. This text describes Asset Risk Manager (ARM) – a computer software package provided as a decision support tool for a person selecting maintenance activities. Its main task is to help in evaluation of risks and costs associated with choosing different maintenance strategies. Rather than searching for a solution to a problem: “what maintenance strategy would lead to the best dependability parameters of system operation”, in our approach different maintenance scenarios can be examined in “what-if” studies and their reliability and economic effects can be estimated. The main idea of the approach is based on the concept of a life curve and discounted cost used to study the effect of equipment ageing under different maintenance policies. First , the deterioration process in the presence of maintenance activities is described by a Markov model and then its various characteristics are used to develop the equipment life curve and to quantify other reliability parameters. Based on these data, effects of various “what-if” maintenance scenarios can be visualized and their efficiency compared. Simple life curves computed from the model can be combined to represent equipment deterioration undergoing diverse maintenance actions, while computing other parameters of the model allows evaluating additional factors, such as probability of equipment failure. Special care is paid to one particular problem: having a model that describes the deterioration of an element that undergoes some maintenance policy with particular repair frequencies, it is often needed to create a model representing the same element being subjected to a new policy that differs only in repair frequencies. The method proposed for

30

Computational Intelligence and Modern Heuristics

creation of such a model adjusts the initial one through fine-tuning probabilities of the repair states in an iterative process that converges to the desired goal. Discussion of different possible approximation methods applied during the adjustment is included and effectiveness of this approach is illustrated with practical examples. The ARM system itself has been initially presented in (Anders & Sugier, 2006). This text extends that presentation with additional discussion of the method for Markov model adjustment and its impact on new results that can be included in the studies (Sugier & Anders, 2007).

2. Modelling the ageing process in the presence of maintenance activities In the proposed approach it is assumed that the equipment will deteriorate in time and, if not maintained, will eventually fail. If the deterioration process is discovered, preventive maintenance is performed which can often restore the condition of the equipment. Such a maintenance activity will return the system to a specific state of deterioration, whereas repair after failure will restore to “as new” condition (Hughes & Russell, 2005; Anders & Endrenyi, 2004). Markov models, which form the underlying structure of the models investigated here, have been applied during planning and operation of large networks (IEEE/PES Task Force, 2001). Equipment aging processes with non-exponential time of sojourn in the states can be represented by several series of stages (Li & Guo, 2006). Each stage can be represented as a state in the Markov process so that the non-Markovian processes can be transformed into Markovian processes (IEEE/PES Task Force, 2001; Singh & Billinton, 1997; Tomasevicz & Asgarpoor, to be published). Fuzzy Markov models have also been developed in which uncertainties in transition rates / probabilities are represented by fuzzy values (Mohanta et al., 2005; Duque & Morinigo, 2004; Cugnasca et al., 1999; Ge et al., 2007). In these models, fuzzy arithmetic was applied to mimic the crisp Markov process calculations which are computationally tedious and even more so when the number of states increases. 2.1 The life curves A convenient way to represent the deterioration process is by a life curve of the equipment (Anders & Endrenyi, 2004). Such a curve shows the relationship between asset condition, expressed in either engineering or financial terms, and time. Since there are many uncertainties related to the prediction of equipment life, probabilistic analysis must be applied to construct and evaluate life curves. Fig. 1 (a) shows an example of a simple life curve of some equipment that models its continuous deterioration up to the point of failure. Fig. 1 (b) illustrates application of this curve in a case study of some specific scenario in which equipment refurbishment and equipment failure occur. 2.2 The ageing process There are three major factors that contribute to the ageing behaviour of equipment: physical characteristics, operating practices, and the maintenance policy. Of these three aspects the last one relates to events and actions that should be properly incorporated in the model. The maintenance policy components that must be recognized in the model are: monitoring or inspection (how is the equipment state determined), the decision process (what

Modelling equipment deterioration vs. maintenance policy in dependability analysis

31

determines the outcome of the decision), and finally, the maintenance actions (or possible decision outcomes). Equipment condition

Equipment condition Maintenance action

Time

Failure

Time

(a) (b) Fig. 1. Life curve of an equipment (a) and its application to modelling equipment condition over some time period (b). In practical circumstances, an important requirement for the determination of the remaining life of the equipment is the establishing its current state of deterioration. Even though at the present state of development no perfect diagnostic test exists, monitoring and testing techniques may permit approximate quantitative evaluation of the state of the system. It is assumed that four deterioration states can be identified with reasonable accuracy: (a) normal state, (b) minor deterioration, (c) significant (or major) deterioration, and (d) equipment failure. Furthermore, the state identification is accomplished through the use of scheduled inspections. Decision events generally correspond to inspection events, but can be triggered by observations acquired through continuous monitoring. The decision process will be affected by what state the equipment is in, and also by external factors such as economics, current load level of the equipment, its anticipated load level and so on. 2.3 The model All of the above assumptions about the ageing process and maintenance activities can be incorporated in an appropriate state-space (Markov) model. It consists of the states the equipment can assume in the process, and the possible transitions between them. In a Markov model the rates associated with the transitions are assumed to be constant in time. The development described in this paper uses model of Asset Maintenance Planner (Anders & Maciejewski, 2006; Anders & Leite da Silva, 2000). The AMP model is designed for equipment exposed to deterioration but undergoing maintenance at prescribed times. It computes the probabilities, frequencies and mean durations of the states of such equipment. The basic ideas in the AMP model are the probabilistic representation of the deterioration process through discrete stages, and the provision of a link between deterioration and maintenance. For structure of a typical AMP model see Fig. 2. In most situations, it is sufficient to represent deterioration by three stages: an initial (D1), a minor (D2), and a major (D3) stage. This last is followed, in due time, by equipment failure (F) which requires extensive repair or replacement.

32

Computational Intelligence and Modern Heuristics

In order to slow deterioration and thereby extend equipment lifetime, the operator will carry out maintenance according to some pre-defined policy. In the model of Fig. 2, regular inspections (Is) are performed which result in decisions to continue with minor (Ms1) or major (Ms2) maintenance or do nothing (with the state number s = 1, 2 or 3). The expected result of all maintenance activities is a single-step improvement in the deterioration chain; however, allowances are made for cases where no improvement is achieved or even where some damage is done through human error in carrying out the maintenance resulting in the next stage of deterioration. The choice probabilities (at the points of decision making) and the probabilities associated with the various possible outcomes are based on user input and can be estimated e.g. from historical records or operator expertise. For the needs of further tuning of the model the probabilities linked to transitions to the maintenance states Msi are the most important ones as they are directly related to the repair frequencies. These probabilities will be denoted as Psr (P11, P12, … P32) , where s = state number and r = repair index.

D1 Initial 10

P

D2 Minor deterioration P20

I1 11

P

M11

12

P

P

M12

P30

I2 21

M21

D3 Major deterioration

22

I3 P32

31

P

P

M22

F Failure

M31

M33 D1

D2

D2

D1

D3

Choice possibilities (decisions)

D1

D3

D2

F

Outcome possibilities

D2

F

Waiting periods

Fig. 2. Model of the ageing process for equipment undergoing inspections and maintenance activities. Decision probabilities after inspection states are placed by respective transitions. K = 3, R = 2. Mathematically, the model in Fig. 2 can be represented by a Markov process, and solved by well-known procedures. The solution will yield all the state probabilities, frequencies and mean durations. Another technique, employed for computing the so-called first passage times (FPT) between states, will provide the average times for first reaching any state from any other state. If the end-state is F, the FPT’s are the mean remaining lifetimes from any of the initiating states.

3. Adjusting model parameters Preparing the Markov model for some specific equipment is not an easy task and requires participation of an expert. The goal is to create the model representing closely real-life deterioration process known from the records that usually describe average equipment

Modelling equipment deterioration vs. maintenance policy in dependability analysis

33

operation under regular maintenance policy with some specific frequencies of inspections and repairs. Compliance with these frequencies in behaviour of the model is a very desirable feature that verifies its trustworthiness. This section describes a method of model adjustment that aims at reaching such a compliance (Sugier & Anders, 2007). It can be used also for a different task: fully automatic generation of a model for a new maintenance policy with modified frequencies of repairs. 3.1 The method Let K represents number of deterioration states and R – number of repairs in the model under consideration. Also, let Psr = probability of selecting maintenance r in state s (assigned to decision after state Is) and Ps0 = probability of returning to state Ds from inspection Is (situation when no maintenance is scheduled as a result of the inspection). Then for all states s = 1 … K: P s 0 P sr 1 r

(1)

Let Fr represents frequency of repair r acquired through solving the model. The problem of model tuning can be formulated as follows: Given an initial Markov model M0, constructed as above and producing frequencies of repairs F0 F00 , F01 ,...F0R , adjust probabilities Psr so that some goal frequencies FG are

achieved. Typically, the vector FG represents observed historical values of the frequencies of various repairs. In the proposed solution, a sequence of tuned models M0, M1, M2,… MN is evaluated with each consecutive model approximating desired goal with a better accuracy. The tuning procedure begins with an initial model M0 and then in each iteration the following steps are performed: 1° For the current model Mi compute vector of repair frequencies Fi. 2° Evaluate an error of Mi as a distance between vectors FG and Fi. 3° If the error is within the user-defined limit consider Mi as the final tuned model and stop the procedure (N = i); otherwise proceed to the next step. 4° Create model Mi+1 through tuning values of Pisr ; adjust also Pis 0 according to (1). 5° Go to step 1° and proceed with the next iteration. The error computed in step 2° can be expressed in may ways. As the frequencies of repairs may vary in a broad range within one vector Fi, yet values of all are significant in model interpretation, the relative measures work best in practice: FG Fi

or

1 R r r Fi / FG 1 R r 1

FG Fi max Fir / FGr 1 . r

The latter formula is more restrictive and was used in examples of this work.

(2)

34

Computational Intelligence and Modern Heuristics

3.2 Approximation of model probabilities Of all the steps outlined in the previous section, it is clear that adjusting probabilities Pisr in step 4° is the heart of the whole procedure. In general, the probabilities represent K· R free parameters and their uncontrolled modification could lead to serious deformation of the model. To avoid this, a restrictive assumption is made: if the probability of some particular maintenance must be altered, it is modified proportionally in all deterioration states, so that at all times P01r : P02 r : … : P0Kr ~ Pi1r : Pi2 r : … : PiKr .

(3)

for all repairs (r = 1…R). This assumption also significantly reduces dimensionality of the problem, as now only a vector of R scaling factors Xi+1=[ X 1i 1 , X i21 , … X iR1 ] must be found to compute probabilities of the next model Mi+1: Pisr1 X ir1 P0sr , r = 1…R, s = 1…K

Moreover, although frequency of a repair r depends actually on probabilities of all repairs (modifying probability of one repair changes, among others, state durations in the whole model, thus it changes frequencies of all states) it can be assumed that in case of a singlestep small adjustment its dependence on repairs other than r can be neglected and

Fir X1i , X i2 ...X iR Fir X ir .

(4)

With these assumptions generation of a new model in step 4° is reduced to finding roots of R non-linear equations in the form of Fir X ir FGr . This can be accomplished with one of standard numerical algorithms. For the needs of development described in this work the following three approximation algorithms has been implemented and verified on practical examples: (A) Newton method working on linear approximation of Fir () , (B) the secant method and (C) the false position (falsi) method. (A) Newton method On Linear Approximation (NOLA) In this solution it is assumed that Fir () is a linear function defined by points Fir ( X i ) (computed for the current model Mi in step 1°) and Fir (0) (which is zero). Then the scaling factor for any repair r is taken simply as: X ir1 FGr / Fir .

Applying these factors to all repair probabilities creates the next model Mi+1. This method is very simple and may seem primitive but its noteworthy advantage lies in the fact that no other point than the current frequency Fir ( X i ) is required to compute the next approximation. As errors of the previous iteration steps do not accumulate, convergence is good from the very first iteration.

Modelling equipment deterioration vs. maintenance policy in dependability analysis

35

(B) The secant method In this standard technique the function is approximated by the secant defined by the last two approximations in points X ir1 , X ir so that a new one is computed as: X ir1 X ir

X ir X ir1 r Fi FGr . Fir Fir1

(5)

After that X ir1 is discarded; X ir1 and X ir are considered in the next iteration. To start the procedure two initial points are needed. In this method it is proposed to choose the initial frequency of the model M0 ( X 0r = 1) as the first point, while the second one is computed as in NOLA method above, i.e. X1r FGr / F0r . Starting with these two, the next solutions are computed as in (5). (C) The false position (falsi) method In this approach X ir1 is computed as in (5) but the difference lies in choosing points for the next iteration. While in (B) always X ir1 is dropped, now the new solution X ir1 is paired with r that one of Xi , X ir1 which lies on the opposite side of the root. In this way when (5) is r applied the solution is bracketed between Xi and X ir1 (which is the essence of falsi method). As in (B), to begin the iteration the two initial points are needed but now they must lie on both sides of the root, i.e.

F

r 0

FGr F1r FGr 0 .

(6)

Choosing such points may pose some difficulty. To avoid multiple sampling, it is proposed to select X 0r =1 (as previously) and then to compute X1r like in NOLA method but with some "overshoot" that would guarantee condition (6):

X1r FGr / F0r

.

(7)

The parameter > 1 limits the overshoot effect. The overshot must be sufficient to ensure (6) but, on the other hand, should not produce too much of an error because that would deteriorate convergence process during initial steps and would add extra iterations. In practice values of = 1.5 2.5 work well. Even if the initial value of X1r computed this way does not meet (6) for particular value of then (7) can be re-applied with increased, although it should be noted that each such correction requires solving a new M1 model and in effect this is the extra computational cost almost equal to that of the whole iteration. 3.3 Comparison of the methods We shall now discuss effectiveness of the above three approximation methods using a sample Markov model tuned for four different repair frequencies. The final result presented to the user - life curves that were obtained from the tuned models - is shown in Fig. 3. The model of the equipment consisted of 3 deterioration states and 3 repairs (K = R = 3), with Ms1 representing minor, Ms2 medium and Ms3 major repair. The life curve estimated

36

Computational Intelligence and Modern Heuristics

from model M0 is shown as case 1 and serves as a point of reference. Cases 2 to 5 were created through adjusting M0 to modified maintenance as follows: case 2: frequencies of all repairs were reduced by half, FG = ½ F0 3 case 3: all repairs but major (Ms3) were removed, FG = [0, 0, F0 ] case 4: frequencies of all repairs were reduced to 25%, FG = ¼ F0 case 5: all repairs were removed, FG = [ 0, 0, 0 ]. All the three approximation methods (NOLA, secant and falsi) converged properly to the same set of probabilities that gave desired goal frequencies. For an example, Fig. 4 compares convergence rate of the methods in the case 2, i.e. during adjustment towards repair frequencies decreased by 50%. The value of the relative error (2) was reduced from initial 100% to 1% after just 3 iterations proving the high effectiveness of the proposed model tweaking. This also shows that simplifications (3) and (4) from section 3.2 are justifiable and do not deteriorate the approximation process.

Fig. 3. Life curve of equipment for some default maintenance policy (1) and life curves generated from Markov models adjusted to modified policies (2-5). What also can bee seen for this specific case in Fig. 4 is that the three approximation methods, although significantly different from the mathematical point of view, yield very similar results during the first iterations 1 3. The difference becomes visible starting from iteration no. 4 when, apparently, the secant method generated the approximating point that did not met condition (6) and, effectively, lost this iteration reaching accuracy of the falsi method one step later. The same situation happened also in iterations no. 6 and 7. Compared to this, the NOLA method showed no such fluctuations and produced steady improvement in every step, although at a rate not as high as that of the falsi method. Fig. 5 presents the convergence rate in the other cases.

Modelling equipment deterioration vs. maintenance policy in dependability analysis

37

1000

Max relative error [%]

100

i

10 1 0

1

2

3

4

5

6

7

0 1 2 3 4 5 6 7

NOLA Secant Falsi

0.1 0.01 0.001

NOLA 1.05E+02 2.54E+01 4.44E+00 7.26E–01 1.18E–01 1.83E–02 4.00E–03

Error [%] Secant 1.05E+02 2.54E+01 1.07E+01 7.83E–01 6.04E–01 2.18E–02 1.20E–02 8.40E–03

Falsi 1.05E+02 4.08E+01 9.22E+00 5.05E–01 3.13E–02 1.40E–03

Iteration no.

Fig. 4. Effectiveness of the three approximation methods in model tuning for FG = ½F0.

Max relative error [%]

Comparing the effectiveness of the methods it should be noted that although simplifications of the NOLA solution may seem critical, in practice it works quite well. As it was noted before, this method has one advantage over its more sophisticated rivals: since it does not depend on previous approximations, selection of the starting point is not so important and the accuracy during the first iterations is often better than in the secant or falsi methods. For example, in the case 2 (Fig. 4) NOLA method reached accuracy of 4.4% already after 2 iterations, while for secant and falsi methods the errors after two iterations were, respectively, 11% and 9.2%. Superiority of the latter methods, especially of the falsi algorithm, becomes undisputable in the later stages of approximation when the potential problems with initial selection of the starting points have been diminished. 100

1000

10

100 10

1 0

1

2

3

0.1 0.01

4

5

NOLA Secant Falsi

1 0

1

2

3

4

5

0.1 0.01

0.001

0.001

0.0001

0.0001

Iteration no.

Iteration no.

Fig. 5. Convergence rate in tuning for FG = [0, 0, F03 ] (case 3, left) and FG = ¼ F0 (case 4, right).

38

Computational Intelligence and Modern Heuristics

4. Asset Risk Manager The Asset Risk Manager (ARM) is a software package which uses the concept of a life curve and discounted cost to study the effect of equipment ageing under different hypothetical maintenance strategies (Anders & Sugier, 2006). The curves generated by the program are based on Markov models that were presented in the two previous sections. For the program to generate automatically the life curves, default Markov model for the equipment has to be built and stored in the computer database. This is done through the prior running of the AMP program by an expert user. Therefore, both AMP and ARM programs are closely related, and usually, should be run consecutively. Implementation details of Markov models, tuning its parameters and all other internal particulars should not be visible to the non-expert end user. All final results are visualized either through an easy to comprehend idea of a life curve or through other well-known concepts of financial analysis. Still, prior to running the analysis some expert involvement is needed, largely in preparation, importing and adjusting AMP models. 4.1 User input A typical study is described through a comprehensive set of parameters that are supplied by an non-expert end user. They fall into three broad categories. (A) General data. The Markov model of the equipment in question and its current state of deterioration form the primary information that is the starting point to most of ARM computations. The Markov model represents the equipment with present maintenance policy and is selected from a database of imported AMP models which needs to be prepared by an expert in advance. Deterioration state, referred to as “Asset Condition” (AC) throughout the ARM, must be supplied by the end user as percentage of “as-new” condition. Besides, a number of additional general parameters need to be specified, such as the time horizon over which the analysis will be performed, discount and inflation rates for financial calculations etc. (B) Description of the present maintenance policy. It is assumed that three types of maintenance repairs can be performed: minor, medium and major. These correspond to appropriate states in Markov model and not all of them must be actually present in the policy. For each repair user supplies its basic attributes, e.g. cost, duration and frequency. (C) List of alternative actions. These are the hypothetical maintenance policies that decision-maker can chose from. Each action is defined as one of four types: • continue as before (i.e. do not change the present policy), • do nothing (i.e. stop all the repairs), • refurbish, • replace. Apart from the first type, every action can be delayed for a defined amount of time. Additionally, for “non-empty” actions (i.e. any of the last two types) user must specify what to do in the period after action; the choices are: (a) to change type of equipment and / or (b) to change maintenance policy. For every action user must also specify what to do in case of failure: whether to repair or replace failed equipment, its condition afterwards, cost of this operation etc. Thanks to these options a broad range of maintenance situations can be described and then analysed.

Modelling equipment deterioration vs. maintenance policy in dependability analysis

39

The first action on the list is always “Continue as before” and this is the base of reference for all the others. The ARM can be directed to compute life curves, cost curves, or probabilities of failure – for each action independently – and then to visualize computed data in many graphical forms to assist the decision-maker in effective action assessment. It should be noted that while the need for some action (e.g., overhaul or change in maintenance policy) is identified at the present moment, the actual implementation will usually take place only after a certain delay during which the original maintenance policy is in effect. Using ARM it is possible to analyze effect of that delay on the cost and reliability parameters. 4.2 Life curves As it has been pointed out before, computing the average first passage time (FPT) from the first deterioration state (D1) to the failure state (F) in the Markov model yields the average lifetime of the equipment, i.e. length of its life curve. On the other hand, solving the model for state probabilities of all consecutive deterioration states makes possible computing state durations, which in turns determine shape of the curve. Simple life curves obtained for different maintenance policies are later combined in constructing composite life curves which describe various maintenance scenarios. For sake of simplicity and consistency, always exactly three deterioration states, or levels, are presented to the end user: minor, medium and major, with adjustable AC ranges. In case of Markov models which have more than three Ds states, the expert decides how to assign Markov states to the three levels when importing the model. Fig. 6 shows exemplary life curves computed by ARM for typical maintenance situations. In each case the action is delayed for 3 time units (months, for example) and the analysis is performed for a time horizon of 10 time units. In case of failure seen in “Do nothing” action, equipment is repaired and its condition is restored to 85%. 100 90

Asset condition [%]

80 70 60 Continue as before Action1 (type: Replacement) Action2 (type: MajorRef.) Action3 (type: DoNothing)

50 40 30 20 10 0

0

1

2

3

4

5 6 Delay [t.u.]

7

8

9

10

Fig 6. Life curves computed for three different actions (“Action1” … “Action3”) and compared to the present maintenance policy (“Continue as before”).

40

Computational Intelligence and Modern Heuristics

4.3 Probability of failure For a specific action, probability of failure within the time horizon (PoFTH) is a sum of two probabilities: of failure taking place before (PoFB) and after (PoFA) the moment of action. It is assumed that failures in these two periods making up the time horizon are independent, so PoFTH = PoFB + PoFA – PoFB PoFA. To compute PoF( T ) within some time period T, the Markov model for the equipment and the life curve are required. The procedure is as follows: (1) For initial asset condition, find from the life curve the current deterioration state DS n; compute also state progress (SP, %), i.e. estimate how long the equipment has been in the DSn state. (2) Running FPT analysis on the model, find distributions Dn and Dn+1 of first passage time from DSn and DSn+1 to the failure state F. (3) Taking state progress into account, probability of failure is evaluated as PoF = Dn( T ) (1 – SP) + Dn+1( T ) SP For better visualization, rather than finding a single PoFTH value for action defined by the user in input parameters, ARM computes a curve which shows the PoFTH as a function of action delay varying in a range 0 200% of user-specified initial value. An example is demonstrated in Fig. 7 for “Do nothing” action (user-defined delay = 3 time units), where also the two probability components PoFB and PoFA are shown. 100 90

Failure probability[ %]

80 70 60 50

Total After Before

40 30 20 10 0

0

1

2

3 Delay [t.u.]

4

5

6

Fig 7. Probability of equipment failure within the time horizon for “Do nothing” action, computed as a function of action delay. 4.4 Cost curves In many financial evaluations, the costs are expressed as present value (PV) quantities. The present value approach is also used in ARM because maintenance decisions on ageing

Modelling equipment deterioration vs. maintenance policy in dependability analysis

41

equipment include timing, and the time value of money is an important consideration in any decision analysis. The cost difference is often referred to as the Net Present Value (NPV). In the case of maintenance, the NPV can be obtained for several re-investment options which are compared with “Continue as before” policy. Cost computations involve calculation of the following cost components: 1. cost of maintenance activities, 2. cost of the action selected (e.g. refurbishment or replacement), 3. cost associated with failures (cost of repairs, system cost, penalties, etc.). To compute the PV, inflation and discount rates are required for a specified time horizon. The cost of maintenance over the time horizon is the sum of the maintenance costs incurred by the original maintenance policy for the duration of the delay period, and the costs incurred by the new policy for the remainder of the time horizon. The costs associated with equipment failure over the time horizon can be computed similarly except that the failure costs before and after the action is multiplied by the respective probabilities of failures (PoFB and PoFA), and the two products are added. As in case of probability of failure, ARM presents the end user with a curve which shows the cost as a function of action delay varying in a range 0 200% of user-specified value.

5. Conclusions The purpose of the ARM tool is to help in choosing effective maintenance policy. Based on Markov models representing maintenance actions and deterioration processes, life curves and other reliability parameters can be evaluated. Once a database of equipment models is prepared, the end-user can perform various studies about different maintenance strategies and compare expected outcomes. Since the equipment condition is visualized through the relatively simple concept of a life curve, no detailed expert knowledge about internal reliability parameters or configuration is required. The system can also automatically adjust the model to requested repair frequencies and thus provides for fully automatic computation of dependability parameters in cases when maintenance policy needs to be modified within some range. This also reduces the model preparation time that requires involvement of the reliability expert and allows for broader range of studies that can be done fully automatically by the end user.

6. References Anders G.J. & Endrenyi J. (2004). Using Life Curves in the Management of Equipment Maintenance, Proceedings of PMAPS’2004 Conference, Ames, Iowa, September 2004. Anders G.J. & Leite da Silva A.M. (2000). Cost Related Reliability Measures for Power System Equipment, IEEE Transactions On Power Systems, Vol. 15, No.2, pp. 654-660. Anders G.J. & Maciejewski H. (2006). Estimation of impact of maintenance policies on equipment risk of failure, Proceedings of International Conference on Dependability of Computer Systems DepCoS – RELCOMEX 2006, pp. 351-357, ISBN 0-7695-2565-2, Szklarska Poręba, Poland, May 2006, IEEE Computer Society Press.

42

Computational Intelligence and Modern Heuristics

Anders G.J. & Sugier J. (2006). Risk Assessment Tool for Maintenance Selection, Proceedings of International Conference on Dependability of Computer Systems DepCoS – RELCOMEX 2006, pp. 306-313, ISBN 0-7695-2565-2, Szklarska Poręba, Poland, May 2006, IEEE Computer Society Press. Cugnasca P.S., De Andrade M.T.C. & Camargo Jr. J.B. (1999). A fuzzy based approach for the design and evaluation of dependable systems using the Markov model, Proceedings of 1999 Pacific Rim International Symposium on Dependable Computing, pp.112-119, ISBN 0-7695-0371-3, Hong Kong, December 1999. Duque O. & Morinigo D. (2004). A fuzzy Markov model including optimization techniques to reduce uncertainty, Proceedings of the 12th IEEE Mediterranean Electrotechnical Conference, vol.3, pp. 841-844, ISBN 0-7803-8271-4, Dubrovnik, May 2004. Endrenyi J. (1978). Reliability Modeling in Electric Power Systems, J. Wiley & Sons, Chichester, 1978. Endrenyi J., Anders G.J. & Leite da Silva A. M. (1998). Probabilistic Evaluation of the Effect of Maintenance on Reliability - An Application. IEEE Transactions on Power Systems, vol. 13, no. 2 (May 1998), pp. 575-583. Ge H., Tomasevicz C.L. & Asgarpoor S. (2007). Optimum Maintenance Policy with Inspection by Semi-Markov Decision Processes, Proceedings of 39th North American Power Symposium, pp.541-546, ISBN 9-7814-2441-7254, Las Cruces, NM, USA, September/October 2007. Hughes D. T. & Russell D. S. (2005). Condition Based Risk Management (CBRM), a Vital Step in Investment Planning for Asset Replacement, Proceedings of IEE-RTDN Conference, London UK, February 2005. IEEE/PES Task Force on Impact of Maintenance Strategy on Reliability of the Reliability, Risk and Probability Applications Subcommittee (2001). The present status of maintenance strategies and the impact of maintenance on reliability, IEEE Transactions on Power Systems, vol. 16, no. 4 (November 2001), pp. 638-646. Li Z. & Guo J. (2006). Wisdom about age-aging electricity infrastructure, IEEE Power and Energy Magazine, vol.4, no.3 (May-June 2006), pp. 44-51. Mohanta D.K., Sadhu P.K. & Chakrabarti R. (2005). Fuzzy Markov model for determination of fuzzy state probabilities of generating units including the effect of maintenance scheduling, IEEE Transactions on Power Systems, vol.20, no.4 (November 2005), pp. 2117-2124. Singh C. & Billinton R. (1977). System Reliability Modeling and Evaluation, London, Hutchinson Educational Publishers, 1977 [Online]. Available: http://www.ece.tamu.edu/People/bios/singh/sysreliability. Sugier J. & Anders G.J. (2007). Modeling Changes in Maintenance Activities through FineTuning Markov Models of Ageing Equipment, Proceedings of International Conference on Dependability of Computer Systems DepCoS – RELCOMEX 2007, pp. 336-343, ISBN 0-7695-2850-3, Szklarska Poręba, Poland, June 2007, IEEE Computer Society Press. Tomasevicz C.L. & Asgarpoor S. (to be published). Optimum Maintenance Policy Using Semi-Markov Decision Processes, Electric Power Systems Research, to be published.

4

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem Fredrick Mtenzi

Dublin Institute of Technology School of Computing, DIT Kevin Street, Dublin 8 Ireland 1. Introduction The Sparse Travelling Salesman Problem (Sparse TSP) which is a variant of the classical Travelling Salesman Problem (TSP) is the problem of finding the shortest route of the salesman when visiting cities in a region making sure that each city is visited at least once and returning home at the end. In the Sparse TSP, the distance between cities may not obey the triangle inequality; this makes the use of algorithms and formulations designed for the TSP to require modifications in order to produce near-optimal results. When solving the Sparse TSP, our main interest is in computing feasible tours at a reasonable computational cost. In addition because it is not possible to get an optimal solution most of the time, we would like to have some guarantee on the quality of the tours (solutions) found. Such guarantees can most of the time be provided if a lower bound on the length of a shortest possible tour is known. It is also the case that most algorithms for finding exact solutions for large Standard TSP instances are based on methods for finding upper and lower bounds and an enumeration scheme. For a given instance, lower and upper bounds are computed. In most cases, these bounds will not be equal, and therefore, only a quality guarantee for the feasible solution can be given, but optimality cannot be proved. If the upper and lower bounds coincide, a proof of optimality is achieved. Therefore, the determination of good tours and derivation of tight lower bounds can be keys to a successful search for optimal solutions. Whereas there have been a lot of work and progress in designing heuristic methods to produce upper bound, the situation for lower bounds is not as satisfying. In general for the Standard TSP, lower bounds are obtained by solving relaxations of the original problem in the sense that one optimizes over some set containing all feasible

44

Computational Intelligence and Modern Heuristics

solutions of the original problem as a (proper) subset. This then means, for example, that the optimal solution of the relaxed problem gives a lower bound for the value of the optimal solution of the original problem. In practice, the methods usually used for computing lower bound for the Standard TSP are the Held-Karp lower bound (Johnson et al., 1996) and Lagrangian relaxation (Reinelt, 1994). Since the Sparse TSP is an NP-Hard combinatorial optimization problem as per Fleischmann (Fleischmann, 1985), the standard technique to solve it to optimality is based on an enumeration scheme which for large problems is computationally expensive. Therefore a natural way is to use the Sparse TSP heuristics to obtain a near-optimal solution. Solutions obtained by heuristics for the Sparse TSP provide the upper bounds. Heuristics produce feasible solutions but without any quality guarantees as to how far off they may be from the optimal feasible solution. In order to be able to assess the performance of heuristics we need to find the lower bound of the problem. Therefore, in this chapter we are interested in exploring methods for computing tight lower bounds for the Sparse TSP. This is the case because we do not have the luxury of comparing with what other researchers have done, since most of the work in the TSP has been focused on the Standard TSP. For example, in the Standard TSP there are sample instances with optimal solutions provided in the TSPLIB for most of the problems (see (Reinelt, 1992)). The results given in TSPLIB include a provable optimal solution if available or an interval given by the best known lower bound and upper bound. As far as we are aware there are no such benchmark results for the Sparse TSP which is studied in this chapter. A lower bound gives us the quality guarantee of the near-optimal solution obtained by using heuristic methods. The most widely used procedure for finding the lower bound for the Standard TSP is the Held and Karp lower bound (Held & Karp, 1970). Johnson et al (Johnson et al., 1996) provide empirical evidence in support of using the Held and Karp (HK) lower bound as a stand-in for the optimal tour length when evaluating the quality of near-optimal tours. They show that for a wide variety of randomly generated instances the optimal tour length averages less than 0.8% over the HK lower bound, and for the real world instances in TSPLIB the gap is always less than 2%. A tight lower bound for the Sparse TSP will play a key role in developing and assessing the performance of the Sparse TSP heuristic methods. Definitions A relaxation of an optimization problem P is another optimization problem R, whose set of feasible solutions properly contains all feasible solutions of P. The objective function of R is an arbitrary extension on of the objective function of P. Consequently, the objective function value of an optimal solution to R (minimisation case) is less than or equal to the objective function value of an optimal solution to P. If P is a hard combinatorial problem and R can be solved efficiently, the optimal value of R can be used as a lower bound in an enumeration scheme to solve P. The closer the optimal value of R to the optimal value of P, the more efficient is the enumeration algorithm.

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

45

A lower bound of the TSP is the value obtained by solving a relaxation of the original problem or by using heuristics. Its value is in most cases less than the optimal value of the original problem, it is equal to optimal value when the value of lower bound is equal to the value of the upper bound. In this chapter, we propose and give computational experience on two methods of finding lower bounds for the Sparse TSP, the chapter is organised as follows. In section 2, we give the background and related research in the Travelling Salesman Problem and specifically how this work relates to the Sparse TSP. In section 3, we discuss methods for finding the lower bound of the Sparse TSP, and give the formulation and relaxation for the Linear Programming relaxation of the Sparse TSP. Further, we introduce the Arc-cutset Partial Enumeration Strategy as a strategy for finding the lower bound of the Sparse TSP. Finally, section 4 gives the conclusions and summary.

2. Related works The Standard TSP has been an area of intensive research since the late 1950's as demonstrated in (Lawler et al., 1985). The first major breakthrough came in 1954, in a seminal paper by (Dantzig et al., 1954) where a description of a method for solving the Standard TSP was given and its power illustrated by solving an instance of 49 cities. From there on there has been a lot of research published on the Standard TSP and its variants. Most of the methods used for solving the Standard TSP to optimality are of the branch and bound variety where, at each node of the branch and bound tree, lower bounds are computed by solving related problems which are relaxations of the original TSP (see (Camerini et al., 1975), (Gabovich, 1970), Held and Karp (Held & Karp, 1970), Padberg and Hong (Padberg & Hong, 1977), and Rubinshtein (Rubinshtein, 1971). As for all branch and bound methods, the quality of the computed lower bounds at each node has much greater influence on the effectiveness of the algorithm than any branching rules that may be used to generate the subproblems during the search. Branch and Bound techniques have been used successfully in optimization problems since the late 1950's. Several different branch and bound algorithms are possible for the travelling salesman problem. A survey of these is given in Bellmore and Nemhauser (Bellmore & Nemhauser, 1968). A variation of Branch and Bound techniques using cutting plane techniques called Branch-and-Cut by Padberg and Rinaldi((Padberg & Rinaldi, 1989), (Padberg & Rinaldi, 1991)) is a much more powerful technique for computing solutions for the Standard TSP. Held and Karp (Held & Karp, 1970), (Held & Karp, 1971) pioneered an iterative approach which uses a technique called Lagrangian Relaxation to produce a sequence of connected graphs which increasingly resemble tours. This technique is based on the notion of a 1-tree and the bound generated is called the Held-Karp lower bound (HK lower bound). Formulating the Standard TSP as an integer linear programming problem (see Dantzig et al (Dantzig et al., 1954), Miller et al (Miller et al., 1960), Fox et al (Fox et al., 1980), and Claus (Claus, 1984) and systematically solving its relaxations is another way of obtaining a lower bound for TSP. Bounds from the solutions of the assignment problem, the matching problem, and the shortest n-path problem have also been suggested and explored by

46

Computational Intelligence and Modern Heuristics

Christofides (Christofides, 1979) who also gave a brief survey and references. Johnson et al (Johnson et al., 1996) use the HK lower bound as a stand-in for the optimal tour length when evaluating the quality of near-optimal tours in a number of their studies in which they solve problems of up to one million cities. When the theory of NP-completeness was developed, the Standard TSP was one of the problems shown to be NP-hard by Karp in (Karp, 1972). This remains true even when additional assumptions such as the triangle inequality or Euclidean distances are involved (see Garey (Garey, 1976)). These results imply that a polynomially bounded exact algorithm for the TSP is unlikely to exist. Nevertheless ingenious algorithms for the TSP have been proposed by Little et al (Little et al., 1963), Held and Karp (Held & Karp, 1970), (Held & Karp, 1971), Miliotis (Miliotis, 1976), Crowder and Padberg (Crowder & Padberg, 1980). Over the past four decades the TSP has remained the prototype of a “hard” combinatorial problem. Since the introduction of NP-completeness theory in 1971 and the subsequent inclusion of the TSP in the NP-complete class, some of the mystery has gone out of the TSP. A complete treatment of NP-completeness theory and its relationship to the TSP is given in Garey and Johnson (Garey & Johnson, 1979). The NP-complete results have given a new impetus to heuristic methods for solving “hard” combinatorial problems. Due to the difficulty of the TSP, many heuristic procedures have been proposed and developed. These heuristics have been compared analytically in the ground-breaking paper of Rosenkrantz, Stearns and Lewis (Rosenkrantz et al., 1977) by studying their worst-case behaviour. Alternatively, computational experimentation may be used to compare the performance of these heuristics, as in the work of Golden et al (Golden et al., 1980) and Stewart (Stewart Jr, 1987). For example, Stewart (Stewart Jr, 1987) describes a number of new algorithms designed specifically to perform well on Euclidean problems. Much work has been done on fast heuristic algorithms for the Standard TSP. There is a trade-off between the speed of an algorithm and its ability to yield tours which are close to the optimal. The following studies show an enormous interest which researchers have shown to heuristic algorithms. These studies include those of Adrabinski and Syslo (Adrabinski & Syslo, 1983) , Golden et al (Golden et al., 1980), Johnson and McGeoch (Johnson & McGeoch, 1995), Bentley (Bentley, 1993), Reinelt (Reinelt, 1992), and Júnger et al (Júnger et al., 1995). There are two broad classes of heuristics for the travelling salesman problem constructive and improvement heuristics. A typical tour construction heuristic method starts with a node and adds others one by one until the tour is complete. Many other variants are described in Bellmore and Nemhauser (Bellmore & Nemhauser, 1968), Rosenkrantz et al (Rosenkrantz et al., 1977), Johnson (Johnson, 1990), Golden et al (Golden et al., 1980), Golden and Stewart (Golden & Stewart, 1985), Gendreu et al. (Gendreau et al., 1992), and Bentley (Bentley, 1993). The arc-exchange strategy was first applied to the Standard TSP by Croes (Croes, 1958). He suggested the 2-optimal algorithm for the symmetric TSP. About the same time and independently, a 3-optimal strategy was suggested by Bock in (Bock, 1958). However, it was Lin in (Lin, 1965) who truly established through extensive empirical study that the 3-optimal algorithm was indeed an excellent approximation algorithm for the Standard TSP. A

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

47

substantial improvement in implementation of the 3-optimal (in general, r-optimal where r ≥ 2) algorithm was given by Christofides and Eilon in (Christofides & Eilon, 1979). Lin and Kernighan (Lin & Kernighan, 1973) added another level of sophistication to the r-optimal algorithm. Instead of having a fixed value of 2 or 3, r was allowed to vary. Their paper is a classic paper on the local search heuristics for the Standard TSP. In particular, LinKernighan(LK) and its variants are widely recognized as the best (most accurate) local search heuristic for the TSP. The ejection chains method introduced by Glover (Glover, 1992) have been used to generate compound neighbourhood structures for the Standard TSP by Rego (Rego, 1998). It should be noted that this neighbourhood has been used to solve problems taken from Travelling Salesman Problem LIBrary(TSPLIB) and performed better than the best iterated LK, but it took more time. In order for the heuristics algorithms to work well efforts should be spent on designing efficient data structures. Data structures play an important role in the design and implementation of the Standard TSP algorithms. The following data structures have been used in the Standard TSP study, the k-d tree of Bentley discussed and used in Bentley (Bentley, 1993), (Bentley, 1975), (Bentley, 1990), and (Bentley, 1990). Fredman et al (Fredman et al., 1995) discuss and give implementation details on the following data structure for the Standard TSP, array-based and splay trees. We have witnessed remarkable progress in Mathematical Programming, Polyhedral Theory, and significant advances in computer technology that have greatly enhanced the chances of finding exact solutions to reasonably large combinatorial optimization problems. Nevertheless, these problems still pose a real challenge in the sense that it is hard to solve realistically large problem instances in reasonable computational times. This challenge has led to the development of many approximate algorithms and has made the science of heuristics a fast growing area of research. For more details on combinatorial optimization problems we refer the reader to Nemhauser and Wolsey (Nemhauser & Wolsey, 1988), Papadimitriou and Steiglitz (Papadimitriou & Steiglitz, 1982), Garey and Johnson (Garey & Johnson, 1979). Metaheuristics are a class of approximate solution methods, which have developed dramatically since their inception in the early 1980s. They are designed to solve complex optimization problems where classical heuristics and other optimization methods have failed to be effective and efficient. A metaheuristic can be defined as an iterative generation process which guides a subordinate heuristic by combining intelligently different concepts for exploring and exploiting the search space, learning strategies are used to structure information in order to find efficiently near-optimal solutions (see Osman (Osman, 1995), and Osman and Kelly (Osman & Kelly, 1996)). Hence, metaheuristics include, but are not limited to: Constraint Logic Programming; Genetic Algorithms; Greedy Random Adaptive Search Procedures; Neural Networks; Non-monotonic search strategies; Problem and heuristic search-space; Simulated Annealing; Tabu Search; Threshold Algorithms and their hybrids. These techniques are based on concepts borrowed from biological evolution, intelligent problem solving, Mathematical and Physical Sciences, Nervous System, and

48

Computational Intelligence and Modern Heuristics

Statistical Mechanics. For details we refer the reader to Reeves (C.R.Reeves, 1993; Reeves, 1993). However, Meta-heuristics have not been very successful in solving the Standard TSP according to Johnson and McGeoch (Johnson & McGeoch, 1995). They have been very effective in other areas such as industrial applications and communications networks. The solution produced by using local search procedures can be very far off from optimality. In order to avoid such disadvantages while maintaining the simplicity and generality of the approach, the following concepts which form the basis of most metaheuristics are considered see Reeves (Reeves, 1993). Start from good initial solutions which can be generated intelligently using a greedy random adaptive search designed by Feo and Resende (Feo & Resende, 1995), or space-search methods in Storer, Wu and Vaccari (Storer et al., 1995). Use the learning strategies of neural networks discussed in Sharda (Sharda, 1994), and Tabu search in Glover (Glover, 1995) that gather information during the algorithms execution in order to guide the search to find possibly better solutions. Employ non-monotonic search strategies that sample/accept neighbours based on hybrid modifications of simulated annealing and Tabu Search methods or others see (Glover (Glover, 1995), (Glover, 1995)), (Hu, Khang and Tsao (Hu et al., 1995)), (Osman (Osman, 1993), (Osman, 1995), (Osman, 1995)) and (Osman and Christofides (Osman & Christofides, 1994)). Sahni and Gonzales in (Sahni & Gonzales, 1976) showed that if a triangle inequality is not satisfied, the problem of finding an approximate solution to the TSP within any fixed bound ratio of the optimum is as hard as finding an exact solution. A comprehensive treatment of various aspects of the TSP can be found in the collection of research papers in Lawler et al (Lawler et al., 1985).

3. Methods for finding Lower bound for the Sparse TSP The standard technique for obtaining lower bounds on the Standard TSP is to use a relaxation that is easier to solve than the original problem. These relaxations can have either discrete or continuous feasible sets. Several relaxations have been considered over years for the Standard TSP. We are going to introduce modifications to these relaxations, so that they can be used to find lower bounds for the Sparse TSP at a reasonable computational effort. We can illustrate the relaxation of an optimization problem by figure 1 in which the region ABCD is the feasible region of the relaxed problem, while the region MNOPQRS is the feasible region of the original “true” problem, which in this case happens to contain integer points. Solution ABCD may be obtained when we relax integrality constraints. Relaxation of the combinatorial optimization has become so popular because in most cases the problems can be solved with reasonable computational effort, if not easier than the original problem.

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

49

D

3 S

R

Q C

2

M

A 1

P

N

O

B 0

1

2

3

4

Fig. 1. Region MNOPQRS shows a feasible solution to the original “true” problem while region ABCD shows a feasible solution to the relaxed problem The HK lower bound is the solution to the LP relaxation of the integer programming formulation of the Standard TSP (see Dantzig et al (Dantzig et al., 1954), Reinelt (Reinelt, 1994) and Johnson et al (Johnson et al., 1996). That is, it is the Integer Linear Programming with the integrality constraints relaxed. The HK lower bound provides a very good estimate of optimal tour length for the Standard TSP. This measure has enormous practical value when evaluating the quality of near optimal solutions for large problems where the true optimal solutions are not known or are computationally expensive to find. The HK lower bound has been used as a stand-in for the optimal tour length when evaluating the quality of near-optimal tours in a lot of studies (for example, in Johnson et al (Johnson et al., 1996)). Although the HK lower bound can be evaluated exactly by Linear Programming techniques, code for doing this efficiently for problems larger than a few hundred cities is not readily available or easy to produce (see Valenzuela and Jones (Valenzuela & Jones, 1996)). In addition linear programming implementations (even efficient ones) do not scale well and rapidly become impractical for problems with many thousands of cities. To be able to find the HK lower bound, a procedure for finding violated inequalities must be provided. This is not a simple matter of automatically generating violated inequalities. It is because of the above mentioned difficulties that most researchers have preferred to use the iterative estimation approach for finding lower bound for the Standard TSP proposed by Held and Karp (Held & Karp, 1970), (Held & Karp, 1971). In this chapter we use this method and modify it to solve the Sparse TSP problems. 3.1 The LP Relaxations for the Sparse TSP The formulation for the Integer Linear Programming (ILP) Sparse TSP is given as: N

N

min cij xij x

i 1 j 1

(1.1)

50

Computational Intelligence and Modern Heuristics

Subject to

j ( i j ) A

iS , j N S , i j

xij

xij

j ( j i ) A

x ji 2mi , for all i N

iS , j N S , j i

x ji 2, for all S N, S

(1.2) (1.3)

mi 0 for all i N

(1.4)

xij {0,1} for all i, j 1,, N

(1.5)

By relaxing the integrality constraint (1.5) we get the Linear Programming (LP) relaxation for the ILP Sparse TSP where equations (1.1, 1.2, 1.3 and 1.4) remains the same and constraint (1.5) becomes, xij 0 for all i, j 1,, N (1.6) Note: that any integral solution to the LP relaxation is a tour. We solved the LP relaxation for the modified ILP Sparse TSP formulation problems, results given in figure 7 were obtained by using violated arc-cutset constraints. 3.2 The LP relaxation for the EFF for the Sparse TSP From the single commodity flow formulation, we present its modification which we call the Embedded Flow Formulation (EFF) for the Sparse TSP. This formulation involves a polynomial number of constraints, even though the number of variables is increased considerably. The EFF for the Sparse TSP is given as: N

(1.7)

(1.8)

x

Subject to

j ( i j ) A

xij

N

min cij xij i 1 j 1

j ( j i ) A

x ji 2mi , for all i N

yij (n 1) xij 0, for all (i, j ) A

j ( i j ) A

yij

y ji 1, for all i 2,3, , n

j ( j i ) A

(y

(1.9) (1.10)

yi1 ) n 1

(1.11)

mi 0, for all i N

(1.12)

xij 0 or 1, for all (i, j ) A

(1.13)

yij 0, for all (i, j ) A

(1.14)

i A

1i

The LP relaxation for the EFF for the Sparse TSP formulation is obtained by relaxing the integrality constraint (1.13). All other equations remain the same except constraint (1.13) changes to: xij 0, for all (i, j ) A (1.15) It was interesting to know how close the lower bound Z LB obtained by solving the subtour relaxation is to the length of an optimal tour Z opt . Worst-case analysis of HK lower bound by

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

51

Wolsey (Wolsey, 1980) and Shmoy and Williamson (Shmoys & Williamson, 1990) show that for any cost function C satisfying the triangle inequality, the ratio Z LB Z opt is at least 2 3 . The 2 3 lower bound is not shown to be tight and actually it is conjectured by Goemans (Goemans, 1995) that ( Z LB Z opt ) 3 4 . Our computational results show that for many instances the above ratio is very close to 1. The results we obtained for the EFF for the Sparse TSP are presented in figure 8. In general the LP relaxation is not equal to the minimum tour length but it is very close. LP relaxation for the ILP Sparse TSP gives a much tighter lower bound than the LP relaxation for the EFF for the Sparse TSP and requires less iterations. 3.3 An Arc-cutset Partial Enumeration Strategy (APES) In this section we are proposing a strategy for quickly generating some of the violated arccutset constraints which we call an Arc-cutset Partial Enumeration Strategy (APES). The APES is based on the following observation, using the formulation for the ILP Sparse TSP, we can drop the connectivity constraints. When the resulting formulation is solved the solution produces a lot of disconnected components, all have at least two nodes connected by two arcs. That is to say each component is a subtour, and the obtained solution is not a tour. These components needed to be connected with other components to produce a single connected component, a tour. To be able to achieve this, we generated an arc-cutset constraint for each component. In other words we generated an arc-cutset constraint for each arc in the graph. This approach is reasonable to the Sparse TSP because the number of arcs m in the sparse graph is O(n) as opposed to O(n 2 ) in the complete graph. Arc cutset identified between two components resulted in those components being connected plus several others. Therefore, even if when the APES is applied at first, there are may be say five disconnected components, it does not mean that five arc cutset will have to be identified. Our computational study showed that the number of arc cutset to be identified is always less than five. However, we were not able to come up with the relationship between the size of the problem and the number of arc cutset to be identified before obtaining a tour. The arc-cutset constraints generated this way are all valid inequalities. Naddef and Rinaldi (Naddef, 1992), Cornuéjols et al (Cornuéjols et al., 1985), and Swamy and Thulasiraman (Swamy & Thulasiraman, 1981) have shown the validity of the arc-cutset constraints. They say that once the components are connected then the violated arc-cutset constraints are valid inequalities.

52

Computational Intelligence and Modern Heuristics

Our algorithm for the APES is given below. An Arc-cutset Partial Enumeration Strategy algorithm Step 1: Formulate the problem using evenness condition Constraints and integrality constraints only. Let nodes be the number nodes in the starting path Let nodesv be the number of nodes to be visited Let k := 2 Step 2: For nodes := k to n do For nodesv := 3 to n – k do List all arcs incident to the path with end node 1 and nodesv add the arc-cutset constraint to the formulation EndFor EndFor Step 3: Solve the new formulation using any LP solver Step 4: stop In forming the arc-cutset constraints, we first used a subtour component consisting only of two end nodes i and j with (i,j) as a connected component. The violated arc-cutset constraints were constructed by listing all arcs incident to node i and node j to form one violated arc-cutset constraint, i.e., all arcs incident with a subtour component. The arc connecting node i and node j was not included in the arc-cutset constraints. Figure 2 shows how using component (i,j) arc-cutset constraints was formed. This is what takes place in step 2 of the APES algorithm. j

i (a) subtour component (i,j).

xd

xa xij

xb

i

xe

j

xc

xf

(b) subtour component with incident arcs to node i and node j.

Fig. 2. Formulation of the arc-cutset constraint

xa xb xc xd xe x f 2

(1.16)

The arc-cutset constraints which are generated by the APES are used to connect components. Since the APES starts by using the evenness condition constraints and integrality constraints, while omitting the connectivity constraints. For example the twenty nodes problem shown in figure 3, is used to demonstrate how the APES works.

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

53

4 5

13

32

30

3

6

22 2

41

35

17

7 8

28

22

1

50

9

10

30

30

33

12

21

35

77

24 11

21

12

32

13

15

17

16

30 14

38

16

18 15 20

19 18

Fig. 3. A twenty nodes problem to demonstrate how APES works Solving the twenty nodes problems before adding the violated arc-cutset constraints generated by the APES gives the disconnected tours illustrated in figure 4 and whose objective function is 524. 4 5 3 6 2 7 8 1

9 10 12

11

13

14

15

17

16 19

20

18

Fig. 4. A twenty nodes problems with disconnected subtour components

54

Computational Intelligence and Modern Heuristics

After adding the violated arc-cutset constraints generated by the APES we got a tour as illustrated in figure 5 and its objective function was 765, which in this case happened to be the optimal tour. 4 5 3 6 2 7 8 1

9 10 12

11

13

14

15

17

16 19

20

18

Fig. 5. A twenty nodes problem tour For all the problems reported in this study, we used the APES to generate violated arc-cutset constraints from each arc. This strategy was used to ensure that disconnected components were connected to form a tour. The APES was able to produce optimal tours for all small problems we solved of up to 1000 nodes. It is interesting to note how the algorithm performed in some graphs. For example, in the case of the 30 nodes problem we had to add eleven violated arc-cutset constraints before getting a tour, while we had to add only two violated arc-cutset constraints for the 67 nodes problem to get a tour. As pointed out earlier the number of violated arc-cutset required to be identified seem to be a function of the nature of the graph and not its size. We then extended this technique of identifying violated arc-cutset constraints. These new violated arc-cutset constraints were formed by visiting a path of three or more nodes together. The first violated arc-cutset constraint was formed by visiting any three nodes which formed a path. When forming these constraints, we included all arcs which were incident to nodes 1 or 2 or 3 and ignore arcs connecting nodes 1, 2, and 3. The next constraint was formed by adding the fourth node to the path and the violated arc-cutset constraint was identified by listing all nodes incident to the path consisting of four nodes ignoring the arcs which form the path. The process continued until we got a tour. Figure 6 shows how these violated arc-cutset constraints were formed.

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

55

x4j x6k j k

x7k

x5j x8k

x1i

i

x2i x31

Fig. 6. An example of how the extended technique for identifying violated arc-cutset constraints works From figure 6 the following violated arc-cutset constraint (1.17) will be formed: (1.17)

x1i x2 i x3i x4 j x5 j x6 k x7 k x8 k 2

The results in figure 6 shows how the APES method performed when the starting path visited 3, 4, … , 10 nodes together. In other words at first the starting path had 3 nodes and we extended the path by adding one node at a time. The second time the starting path had 4 nodes and we extended the path by adding one node at a time. We continued increasing the number of nodes in a starting path, until at last our starting path had 10 nodes to start with. We got in a good number of cases substantial improvements in the lower bound as we increased the number of nodes in the starting path. However, as the number of nodes in the starting path went beyond 10 we got marginal improvement. Comparison of methods for finding Lower Bound for the Sparse TSP to the Optimal solution

2500

2000

Solution

1500

1000

500

0 5

10

20

30

67

Problem Size

Optimal Solution

LP Relaxation

APES solution

Extended APES

LP Relaxation for EFF

Fig. 7. Comparison of methods for finding Lower Bound for the Sparse TSP to the optimal solution

56

Computational Intelligence and Modern Heuristics

Computational experience for finding the Lower Bound for the Sparse SP

250000

200000

Solution

150000

100000

50000

0 5

10

20

30

67

100

391

80

595

75

797

80

882

1010

1023

1797

1830

2859

3058

923

Problem Size

LP Relaxation for EFF

APES solut on

Extended APES

Fig. 8. Computational experience for finding the Lower Bound for the Sparse TSP The order of complexity of our APES is O(n) . This is far less than the connectivity constraints with the order of complexity of O(n 2 ) . This makes our strategy much easier to use.

4. Summary and future work When optimization problems arise in practice we want to have confidence in the quality of the solutions. Quality guarantees are required because in most cases and especially for large problems, it is not always possible to find an optimal solution. Quality guarantees become possible by being able to compute tight lower bounds at a reasonable computational cost. In this chapter we have proposed two methods for finding tight lower bound for the Sparse TSP using the modified Linear Programming relaxation method and the Arc-cutset Partial Enumeration Strategy. When the LP relaxation method is used to find a lower bound for the ILP Sparse TSP, finding arc-cutset constraints is a headache especially for large problems. There are procedures for identifying violated arc-cutset constraints automatically in practice, such as the separation routines. These procedures are computational expensive and therefore were not used in this study. The Arc-cutset Partial Enumeration Strategy proposed is a simple and fast way of getting a lower bound without spending time in a separation algorithm. Computational results show that the lower bounds obtained by using this method are as comparable as those obtained using Separation algorithms. A lower bound on the optimal value (assuming a minimization problem) is obtained from a relaxation of the integer program. In the past fifteen years attention has shifted from

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

57

Lagrangian Relaxation to Linear Programming relaxation, since the latter type of relaxation can be strengthened more easily by using cutting planes. Combining cutting planes and Lagrangian relaxation usually causes convergence problems as discussed by Aardal et al (Aardal et al., 1997). Utilising various modified LP relaxation to suit the Sparse TSP has given us the tightest lower bound of all lower bound techniques we have discussed in this chapter.

5. References Aardal, K. et al. (1997). A decade of Combinatorial Optimization, Working paper, Uetrecht University, Computer Science Department, Netherlands. Adrabinski, s. A. & Syslo, M. M. (1983). Computational experiments with some approximation algorithms for the travelling salesman problem. Zastos. mat., 18, 1, 91-95. Bellmore, M. & Nemhauser, G. L. (1968). The Traveling salesman problem: A survey. Operations Research, 16, 538-558. Bentley, J. J. (1993). Fast Algorithms for Geometric Traveling Salesman Problems. ORSA Journal on Computing, 4, 4, 387-411. Bentley, J. L. (1990). Experiments on traveling salesman heuristics, The 1st Annual ACMSIAM Symposium on Discrete Algorithms, SIAM, Philadelphia, PA., 91-99. Bentley, J. L. (1990). K-d trees for semidynamic point sets, The 6th Annual Symposium on Computational Geometry, ACM, New York, 187-197. Bentley, J. L. (1975). Multidimensional binary search trees used for associative search. Comm. ACM, 18, 309-517. Bock, F. (1958). An algorithm for solving Traveling Salesman and related network optimization problems, inproceedings 14th National meeting of the ORSA, St. Louis, Mo., St. Louis, Mo. Reeves C.R. (1993). Modern Heuristic Techniques for Combinatorial Problems, McGraw-Hill Book Company. Camerini, P. et al. (1975). Travelling salesman problem: Heuristically guided search and modified gradient techniques. Christofides, N. (1979). The Travelling Salesman Problem, Combinatorial Optimization, N. Christofides, Mingozzi, A., Toth, P. and Sandi, C., 131-149, John Wiley and Sons. John Wiley and Sons. Christofides, N. & Eilon, S. (1979). Algorithm for large-scale Traveling Salesman Problems. Operational Research Quarterly, 23, 4, 511-518. Claus, A. (1984). A new formulation for the traveling salesman problem. SIAM Journal of Algebraic Discrete Methods, 5, 21-25. Cornuéjols, G. et al. (1985). The travelling salesman problem on a graph and some related integer polyhedra. Mathematical Programming, 33, 1-27. Croes, G. A. (1958). A method for solving traveling salesman problems. Operations Research, 6, 791-812. Crowder, H. & Padberg, M. (1980). Solving large-scale symmetric travelling salesman problem to optimality. Management Science, 26, 495-509. Dantzig, G. et al. (1954). Solution of a large-scale Traveling-Salesman Problem. Operations Research, 2, 393-410.

58

Computational Intelligence and Modern Heuristics

Feo, T. A. & Resende, M. G. C. (1995). Greedy randomized adaptive search procedures. Journal of Global Optimization, 6, 109-118. Fleischmann, B. (1985). A cutting plane procedure for travelling salesman problem on road networks. European Journal of Operational Research, 21, 307-317. Fox, K. et al. (1980). An n-constraint formulation of the (time-dependent) traveling salesman problem. Operations Research, 28, 1018-1021. Fredman, M. L. et al. (1995). Data Structures for Travelling Salesmen. Journal of Algorithms, 18, 432-475. Gabovich, E. J. (1970). The small travelling salesman problem. 19, 27-51. Garey, M. (1976). Some NP-complete geometric problems, inproceedings Proceedings of the 8th SIGACT Symp. on the theory of computing, 10-22. Garey, M. R. & Johnson, D. S. (1979). Computers and Intractability: A Guide to the theory of NPCompleteness, W.H. Freeman, San Francisco. Gendreau, M. et al. (1992). New Insertion and Postoptimization procedure for the traveling salesman problem. Operations Research, 40, 1086-1094. Glover, F. (1995). Tabu thresholding: improved search by non-monotonic trajectories. ORSA Journal on computing, 7, 426-436. Glover, F. (1995). Tabu search fundamentals and uses, Graduate School of Business, University of Colorado, Boulder. Glover, F. (1992). New ejection chain and alternating path methods for the traveling salesman problems, Operations research and computer science: new developemnts in their interfaces, O. Balci, Sharda, R. and Zenios, S. A., 27-49, Pergamon Press, Oxford., Pergamon Press, Oxford. Goemans, M. X. (1995). Worst-case Comparison of valid Inequalities for the TSP. Mathematical Programming, 69, 335-349. Golden, B. et al. (1980). Approximate travelling salesman algorithms. Operations Research, 28, 3, 694-711. Golden, B. L. & Stewart, W. R. (1985). Empirical analysis of heuristics, The Traveling Salesman Problem, E. L. Lawler, Lenstra, J. K., Kan, A. H. G. R. and Shmoys, D. B., 207-249, John Wiley and Sons Ltd., John Wiley and Sons Ltd. Held, M. & Karp, R. M. (1970). The Travelling Salesman Problem and Minimum spanning Trees, Part I. Operations Research, 18, 1138-1162. Held, M. & Karp, R. M. (1971). The Travelling Salesman Problem and Minimum spanning Trees, Part II. Mathematical Programming, 1, 6-25. Hu, T. C. et al. (1995). Old bachelor acceptance: A new class of non-monotonic threshold accepting methods. ORSA Journal on computing, 7, 417-425. Johnson, D. S. & McGeoch, L. A. (1995). The Traveling Salesman Problem: A case study, Local search in Combinatorial Optimization, E. Aarts and Lenstra, J. K., 215-310, John Wiley and Sons Ltd., John Wiley and Sons Ltd. Johnson, D. S. et al. (1996). Asymptotic Experimental Analysis for the Held-Karp Traveling Salesman Bound, Proceedings of the 7th Annual ACM-SIAM symposium on Discrete Algorithms, 341-350, January 1996. Johnson, D. S. (1990). Local optimization and the traveling salesman problem, ICALP '90, 446-461, Springer-Verlag.

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

59

Júnger, M. et al. (1995). The traveling salesman problem, Network Models, Handbooks in Operations Research and Management Science, M. O. Ball, Magnanti, T. L., Monma, C. L. and Nemhauser, G. L., 225-330, North-Holland. Amsterdam, North-Holland, Amsterdam. Karp, R. M. (1972). Reducibility among Combinatorial Problems, Complexity of Computer Computations, R. E. Miller and Thatcher, J. W., 85-103, Plenum Press, New York., Plenum Press, New York. Lawler, E. L. et al. (1985). The Traveling Salesman Problem, John Wiley and Sons Ltd. Lin, S. (1965). Computer solutions of the traveling salesman problem. The Bell system technical journal, 44, 2245-2269. Lin, S. & Kernighan, B. W. (1973). An effective heuristic algorithm for the traveling salesman problem. Operations Research, 21, 498-516. Little, J. et al. (1963). An algorithm for the traveling salesman problem. Operations Research, 11, 6, 972-989. Miliotis, P. (1976). Integer programming approaches to the traveling salesman problem. Mathematical Programming, 15, 367-378. Miller, C. et al. (1960). Integer programming formulations and traveling salesman problem. Journal of the Association for Computing Machinery, 7, 326-329. Naddef, D. (1992). The binested inequalities for the symmetric traveling salesman Polytope. Mathematics of Operations Research, 17, 4, 882-900. Nemhauser, G. L. & Wolsey, L. A. (1988). Integer and Combinatorial Optimization, John Wiley and Sons Ltd. Osman, I. H. & Kelly, J. P. (1996). Meta-heuristics : Theory and Applications, Kluwer Academic Publishers. Osman, I. H. (1995). An Introduction to Meta-Heuristics, Operational Research Tutorial papers, M. Lawerence and Wilson, C., 92-122, Operational Research Society Press. Birmigham, U.K., Operational Research Society Press, Birmigham, U.K. Osman, I. H. (1993). Metastrategy simulated annealing and Tabu search for the vehicle routing problem. Annals of Operations Research, 41, 421-432. Osman, I. H. (1995). Heuristics for generalized assignment problem, simulated annealing and Tabu search approaches. OR Spektrum, 17, 211-228. Osman, I. H. & Christofides, N. (1994). Capacitated clustering problems by hybrid simulated annealing and tabu search. International Transactions in Operational Research, 1, 317329. Padberg, M. & Rinaldi, G. (1989). A branch-and-cut approach to a traveling salesman problem with side constraints. Management Science, 35, 11, 1393-1414. Padberg, M. & Rinaldi, G. (1991). A branch-and-cut algorithm for the resolution of largescale symmetric traveling salesman problems. SIAM review, 33, 1, 60-100. Padberg, M. W. & Hong, S. (1977). On the symmetric travelling salesman problem: A computational study. Papadimitriou, C. H. & Steiglitz, K. (1982). Combinatorial Optimization : Algorithms and Complexity, Prentice-Hall, Inc. Reeves, C. R. (1993). Modern Heuristic Techniques for Combinatorial Problems, McGraw-Hill Book Company. Rego, C. (1998). Relaxed tours and path ejections for the traveling salesman problem. European Journal of operational research, 2, 522-538.

60

Computational Intelligence and Modern Heuristics

Reinelt, G. (1992). Fast Heuristics for Large Geometric Traveling Salesman Problems. ORSA Journal on Computing, 4, 2, 206-217. Reinelt, G. (1994). The traveling salesman: Computational solutions for TSP applications, Springer Verlag, 0-387-58334-3. Rosenkrantz, D. J. et al. (1977). An analysis of several heuristics for the travelling salesman problem. Siam Journal of Computing, 6,3, 1977. Rubinshtein, M. I. (1971). On the symmetric TSP. Automatika I Telemekhanika, 6, 126-126. Sahni, S. & Gonzales, T. (1976). P-complete approximation problem. J. ACM, 23, 555-565. Sharda, R. (1994). Neural networks for the MS/OR analyst. An application bibliography. Interfaces, 24, 116-125. Shmoys, D. A. & Williamson, D. P. (1990). Analyzing the Held-Karp TSP bound: A monotonicity property with application. Information Processing Letters, 35, 281-285. Stewart Jr, W. R. (1987). Accelerated branch exchange heuristics for symmetric travelling salesman problems. Networks, 17, 423-437. Storer, R. H. et al. (1995). Local search in problem and heuristic space for job shop scheduling. ORSA Journal on Computing, 7, 453-458. Swamy, M. N. S. & Thulasiraman, K. (1981). Graphs, Networks, and Algorithms, John Wiley and Sons Ltd. Valenzuela, C. L. & Jones, A. J. (1996). Estimating the Held-Karp lower bound for the geometric TSP. European Journal of Operational Research, 102, 157-175. Wolsey, L. A. (1980). Heuristic analysis, linear programming and Branch and Bound. Mathematical Programming Study, 13, 121-134.

5

Modelling Access Control with Dynamic Role Binding 1Al-Zaytoonah

Al-Dahoud1 Ali and Dr.K.Chitra2

University, Jordan, 2Department of Computer Applications, Thiagarajar School of Management Madurai, Tamil Nadu, India [email protected], [email protected]

Abstract To achieve the goal of realizing object adaptation to environments, we model the object with its role using parameterized UML models. An environment is defined as a field of collaboration between roles and an object adapts to the environment assuming one of the roles. Objects can freely enter or leave environments and belong to multiple environments at a time so that dynamic adaptation or evolution of objects is realized. Organizations use Role-Based Access Control to protect computer-based resources from unauthorized access. This paper describes a method for modeling access control for dynamic role binding using parameterized UML design models. Reusable parameterized UML models are specified as patterns and are expressed using UML template diagrams. Developers can use the models to identify their policy violations. The method is illustrated using a small banking application. Key Words: Parameterized UML, Object adaptation, Evolution, Reusable.

1. Introduction Objects represent things or concepts of the real world and it is this representation feature that gives the object-oriented technology the high modeling capability. Objects in the real world exist in various environments. If an object permanently resides in a fixed environment, the structure and behavior of the object can possibly stay unchanged over time. However, environments surrounding objects may not be stable due to various reasons. If objects are humans or manufacturing equipment, their environment changes periodically between the day and the night and between the weekdays and the weekend. When an object moves, the surrounding environment naturally changes. Even if an object stays at the same place for a certain period of time, the environment itself may dynamically change. Corresponding to such environmental change, objects adaptively change themselves. Conversely, objects may spontaneously evolve, causing change in their relation to the environment and that in turn may trigger change in the environment. Moreover, there generally exist multiple environments around an object and the object may selectively

62

Computational Intelligence and Modern Heuristics

belong to a subset of them at a time and the selection of environments may also change dynamically. How is such adaptation or evolution of objects handled in the world of object-oriented modeling and programming? As many researchers have pointed out, current widely-used object-oriented modeling and programming languages do not conveniently support such flexibility. Motivation of our research is to build a parameterized UML model that is flexible enough to cope with future changes but simple enough to describe and reason about the design validity. The model to be described in the succeeding sections has the following features. 1. Objects can freely enter or leave environments and belong to multiple environments at a time so that dynamic adaptation or evolution of objects is realized. 2. Environments and roles are the first class constructs at model description time so that separation of concerns is not only materialized as a static structure but also observed as behaviors. 3. Environments are independent reuse components to be deployed separately from objects that participate in them.

2. Access Control for Dynamic Role Binding (DRBAC) Roles are considered for listing up functions or behaviors of an object to define a clear boundary of the object, thus their granularity is smaller than objects and conceptually comparable to the level of methods. However, the major motivation of this paper is to design access control for object adaptation to environments using parameterized UML. An environment in the context of role model is regarded as a collaboration field and in order to realize adaptation, objects should be allowed to enter collaboration environments by assuming roles and to leave from environments by discarding roles dynamically. Dynamic Role Binding Access Control (DRBAC) constraints can be organized as follows: Core DRBAC, Hierarchical DRBAC, Static Separation of Duty Relations, and Dynamic Separation of Duty Relations. The Core DRBAC requires that users (i.e. Objects) be assigned to environment, users be assigned to roles (job function) corresponding to that environment, roles be associated with permissions (approval to perform an operation on a database), and users acquire permissions by being assigned to roles. The Core DRBAC places a constraint on the cardinalities of the user-role assignment relation that when a user enters an environment he is assigned a role when he/she leaves that environment he/she discards that role. The Core DRBAC does not place any constraint on the cardinalities of the permission-role association. Core DRBAC also includes the notion of user environments. A user enters an environment during which he activates a subset of the roles assigned to him. Each user may belong to multiple environments; however, each environment is associated with only one user. The operations that a user can perform in an environment depend on the roles activated in that environment and the permissions associated with those roles.

Modelling Access Control with Dynamic Role Binding

63

Hierarchical DRBAC adds features supporting role hierarchies (RH). Hierarchies are used to describe a structure of roles in an organization. Role hierarchies define an inheritance relation among the roles. Role r1 inherits from role r2 only if all permissions of r2 are also permissions of r1 and all users of r1 are also users of r2. The inheritance relationship is reflexive, transitive and anti-symmetric. Static Separation of Duty (SSD) relations are necessary to prevent conflict of interests that arise when a user gains permissions associated with conflicting roles (roles that cannot be assigned to the same user). SSD relations are specified for any pair of roles that conflict. The SSD relation places a constraint on the assignment of users to roles, that is, assignment to a role that takes part in an SSD relation prevents the user from being assigned to the related conflicting role. The SSD relationship is symmetric, but it is neither reflexive nor transitive. SSD may exist in the absence of role hierarchies (referred to as SSD DRBAC), or in the presence of role hierarchies (referred to as hierarchical SSD DRBAC). The presence of role hierarchies complicates the enforcement of the SSD relations: before assigning users to roles not only should one check the direct user assignments but also the indirect user assignments that occur due to the presence of the role hierarchies. Dynamic Separation of Duty (DSD) relations aim to prevent conflict of interests as well. The DSD relations place constraints on the roles that can be activated in a user’s environment. If one role that takes part in a DSD relation is activated, the user cannot activate the related (conflicting) role in the same session. A model of DRBAC is shown in Fig. 1. RH DSD

SSD

ENV

Enters/ Exits

PERM Role Assignment

ROLE

OPER

DB

Permission Assignment

Activates

Session Assignment

OBJ Object Sessions

SESSIONS

Fig. 1. Access Control in Dynamic Role Binding The DRBAC in Fig. 1 consists of: 1) a set of objects (OBJ) where an object is an intelligent autonomous agent, 2) a set of environments (ENV) where an object enters or leaves 2) a set

64

Computational Intelligence and Modern Heuristics

of roles (ROLE) where a role is a job function which is assigned to the object when it enters an environment and is discarded when it exits the environment, 3) the database (DB) where DB is an entity that contains or receives information, 4) a set of operations (OPER) where an operation is an executable image of a program, and 5) a set of permissions (PERM) where a permission is an approval to perform an operation on database. The cardinalities of the relationships are indicated by the absence (denoting one) or presence of arrows (denoting many) on the corresponding associations. For example, the association of an object to an environment and the association of an object to role are one-to-many. All other associations shown in the figure are many-to-many. The association labeled Role Hierarchy (RH) defines the inheritance relationship among roles. The association labeled SSD specifies the roles that conflict with each other. The association labeled DSD specifies the roles that cannot be activated within an environment by the same user.

3. A Reusable DRBAC Model In this section a DRBAC pattern is described as a UML template class diagram. A class diagram is obtained from a template diagram by binding the parameters to values. Fig. 2 shows a class diagram template describing hierarchical DRBAC with SSD and DSD. The symbol “|” is used to indicate parameters. The class diagram template shown in Fig. 2 consists of class and association templates. A class template is a class descriptor with parameters. Class templates are associated with attribute templates (e.g., |Name : String in Role) and operation templates (e.g., |grantPermission in Role). Association templates (e.g., |UserAssignment) consist of parameters for association names and association-end multiplicities. The OCL constraints in Fig. 2 restrict the values that can be bound to association-end multiplicity parameters. The multiplicity “1” on the UserSessions association-end attached to Object is strict: a session can only be associated with one user. The User Object class template defines classes that describe Objects. When a user enters an environment, he is assigned a role (assignRole). Then he creates a new session (createSession), delete a session (deleteSession). When he exits that environment, his role is discarded (deassignRole). A UserSessions link (i.e., an instance of an association obtained by binding the parameters of UserSessions to values) is created by a createSession operation (i.e., an operation obtained by binding the operation template parameters to values) and deleted by a deleteSession operation. The operation assignRole creates a RoleAssignment link; the deassignRole removes a RoleAssignment link. The class template Role is used to produce classes representing roles with behavior that (1) associates a new permission with the role (grantPermission), (2) deletes an existing permission associated with the role (revokePermission), (3) adds an immediate inheriting role (addInheritance), (4) deletes an immediate inheriting role (deleteInheritance), (5) adds a role to the set of conflicting roles (addSSDRole), (6) deletes a role from the existing set of conflicting roles (deleteSSDRole), (7) checks whether the role is in an SSD relationship with a given role in the presence of hierarchies (checkSSD), (8) checks whether the role has a given permission (checkAccess), (9) checks whether the role is in a DSD relation with a given role (checkDSD), (10) deletes a DSD relation between the role and a given role (deleteDSDRole), and (11) adds a DSD relation with a given role (addDSDRole).

Modelling Access Control with Dynamic Role Binding

65

|Environment assgnRole(|r : |Role) 1 deassignRole(|r :|Role)

* |UserAssignment

*

createSession() : |s:|Session deleteSession(|s : |Session)

*

*

1 |User Sessions

* |SessionAssignment

*

|Session

grantPermission(|p : |Permission) revokePermission(|p : |Permission) checkAccess(|db : |DB, |op : |Operation) : |Boolean checkSSD(|r : |Role) : |Boolean deleteSSDRole(|r : |Role) addSSDRole(|r : |Role) addInheritance(|r : |Role) deleteInheritance(|r : |Role) checkDSD(|r : |Role) : |Boolean deleteDSDRole(|r : |Role) addDSDRole(|r : |Role) bind(|u : |User) unBind(|u : |User)

*

|Permission Assignment

*

addActiveRole(|r : |Role) dropActiveRole(|r : |Role) checkAccess(|db : |DB, |op : |Operation) : |Boolean

Senior *

Name : String

|Enters/|Exits

1 |User

|RH

Junior *

* * |Role

*

|Role Assignment

1..*

|DSD

|SSD

* |Permission checkAccess(|db : |DB, |op : |Operation) : |Boolean

*

* |DB

1..*

*

1..*

* |Operation

Fig. 2. A DRBAC Class Diagram Template The class template Session is associated with the template operations: addActiveRole (activates a role in a session), dropActiveRole (deactivates a role in a session), and checkAccess (checks whether the role has the permission to perform an operation on the database). The class template Permission is associated with an operation template, checkAccess, that checks whether the role has the permission to perform the operation on the database. Each operation template is associated with an OCL template expression that produces OCL preand post-conditions when the template parameters are bound to values. Pre- and post-condition templates associated with the createSession and grantPermission operation templates are given below: context | User::| createSession( ):(| s: | Session) post: result = |s and |s.oclIsNew( ) = true and self.| Session includes(|s) context |Role:: |grantPermission ( |p: |Permission) post: self.| Permission includes(|p)

66

Computational Intelligence and Modern Heuristics

We express DRBAC constraints that restrict SSD and DSD relationships as OCL template expressions. Examples of these constraints are given below: – SSD constraint. A user cannot be assigned to two roles that are involved in an SSD relation. context |User inv: self. |Role forAll(r1, r2 | r1.| SSD excludes(r2)) – Hierarchical SSD constraint. There cannot be roles in an SSD relation which have the same senior role. context _ Role inv: let allSenior(r1) = r1.senior -> union(r1.senior -> collect(r2 | allSenior(r2))) in self. |SSD -> forAll(r1 | allSenior(r1) -> excludesAll(allSenior(self)) – DSD constraint. A user cannot activate two roles in DSD relation within a session. context | User inv: |self. |Session. |Activates -> forAll(r1, r2 |r1. |DSD -> excludes(r2))

4. DRBAC Model on Banking Application To illustrate this approach we use a simple banking application taken from [5]. The application is used by various bank officers to perform transactions on customer deposit accounts, customer loan accounts, ledger posting rules, and general ledger reports. The transactions include 1) create, delete, or modify customer deposit accounts, 2) create, delete, or modify customer loan accounts, 3) modify the ledger posting rules, and 4) create general ledger report. When a user enters Bank environment, he is assigned a BANKROLE when he exits bank environment he is assigned another role according to the environment he enters and assigned permissions depending on the role he is assigned. Fig. 3 shows DRBAC class diagram for the bank environment.

5. DRBAC Policies applied using Object Diagrams DRBAC policies when applied to a role in an environment constrain how system users access system resources. They determine 1) the assignment of roles to system users, 2) the permissions associated with roles in the environment, 3) the inheritance relationships between roles, and 4) the SSD and DSD relationships between roles. In this section we illustrate how DRBAC policies can be described by object diagrams when the user is assigned a ROLE. The DRBAC model supports the specification of four types of policies: 1) core policies that conform to core DRBAC, that is, policies that determine user-role and role-permission assignments, 2) hierarchical policies that conform to hierarchical DRBAC, that is, policies that determine inheritance relationships between roles, 3) SSD policies that conform to SSD DRBAC, that is, policies that determine what roles are conflicting, and 4) DSD policies that conform to DSD DRBAC, that is, policies that determine what roles to be activated in a session. A set of DRBAC policies for the banking system is given below:

Modelling Access Control with Dynamic Role Binding

67

Environment

1..*

* User Assignment

1..*

createSession() : s:BankSession deleteSession(s : BankSession)

1 1..*

User Sessions

SessionAssignment

1..* BankSession

Senior *

Name : String

Enters/Exits

1..*

RH

Junior *

* * BankRole

*

Role Assignment

1 BankUser

DSD

SSD

assignRole(r : BankRole) deas signRole(r : BankRole) 1

1..*

grantPermission(p : Permission) revokePermission(p : Permission) checkAccess(db : BankDB, op : Transaction) : Boolean checkSSD(r : BankRole) : Boolean deleteSSDRole(r : BankRole) addSSDRole(r : BankRole) addInheritance(r : BankRole) deleteInheritance(r : BankRole) checkDSD(r : BankRole) : Boolean deleteDSDRole(r : BankRole) addDSDRole(r : BankRole) bind(u : BankUser) unBind(u : BankUser) 1..* Permission Assignment 1..*

Permission

addActiveRole(r : BankRole) dropActiveRole(r : BankRole) checkAccess(db : BankDB, op : Transaction) : Boolean

(from )

checkAccess(db : DB, op : Operation) : Boolean

1..*

1..* 1..* BankDB

Account

LedgerPostingRule

1..* *

Transaction

* *

isInputOf

*

GeneralLedgerReport

*

*

Create

Modify

Delete

regulatesPostingOf

CustomerAccount

LoanAccount

Fig. 3. A DRBAC Class Diagram for a Banking Application Core policies: The roles of the banking system (instances of BankRole) are teller, customerServiceRep, accountant, accountingManager and loanOfficer. The permissions assigned to these roles are given below: P1 A teller can modify customer deposit accounts. P2 A customer service representative can create or delete customer deposit accounts. P3 An accountant can create general ledger reports. P4 An accounting manager can modify ledger-posting rules. P5 A loan officer can create and modify loan accounts. Fig. 4. Shows the object diagrams describing policies P1 to P5 respectively.

68

Computational Intelligence and Modern Heuristics

Fig. 4. Object Diagrams for Policies P1 to P5 Hierarchical policies: A role hierarchy defines inheritance relationships between roles. Through the inheritance relationship, a senior role inherits the permissions of its junior roles and any user assigned to the senior role is also assigned to the junior roles. The hierarchical policies in the banking application are stated below: H1 Customer service representative role is senior to the teller role. H2 Accounting manager role is senior to the accountant role. Fig. 5(a),(b) describe policies H1 and H2 respectively.

Fig. 5(a), (b) Object Diagrams for Policies H1 and H2

Modelling Access Control with Dynamic Role Binding

69

SSD policies: SSD policies prevent a user from being assigned to two conflicting roles. For the banking system the following pairs of roles are conflicting: {(teller, accountant), (teller, loanOfficer), (loanOfficer, accountant), (loanOfficer, accountingManager), (customerServiceRep, accountingManager)} The object diagram in Fig. 6 describes the SSD RBAC policies.

Fig. 6. Object Diagram for SSD Policies DSD policies: DSD policies prevent a user from playing a role in a session, if another role in a DSD relation has been activated. For the banking system the following pair of roles are in DSD relation: {(customerServiceRep, loanOfficer)} The object diagram in Fig. 7 describes the DSD DRBAC policy.

Fig. 7. Object Diagram for DSD Policy

6. Identifying Conflicts in Application-Specific DRBAC Policies In this section we show how DRBAC violation patterns expressed as object diagram templates can be used to identify conflicts. If a violation pattern exists in an object diagram describing a policy, then a conflict exists. Fig. 8 shows object diagram templates that when instantiated produce object structures that violate DRBAC constraints. Fig. 8(a) describes structures in which a user is assigned to roles in an SSD relationship (violation of the SSD constraint). Fig. 8(b) describes structures in which two roles in an SSD relationship have a

70

Computational Intelligence and Modern Heuristics

common senior role and structures in which a senior role is in an SSD relationship with a junior role (both are violations of the hierarchical SSD constraint). Fig. 8(c) describes structures in which a user in a session activates two roles that are in a DSD relationship (a violation of the DSD constraint). Formally, an object diagram has the violation described by a violation pattern if there exists a binding that produces an object structure contained in the object diagram.

Fig. 8. (a) Violation of SSD Constraint

Fig. 8. (b) Violations of Hierarchial SSD Constraint

Fig. 8. (c) Violation of DSD Constraint

Modelling Access Control with Dynamic Role Binding

71

7. Related Work Tidswell and Jaeger [21] propose an approach to visualizing access control constraints. They point out the need for visualizing constraints and the limitations of previous work on expressing constraints. A drawback of their work is that they created a new notation for specifying constraints and it is not clear how the new notation can be integrated with other widely-used design notations. Aspect-oriented programming with AspectJ has a feature of adding aspects dynamically as well as statically [14]. The main objective of writing aspects is to deal with cross-cutting concerns. It implies that there already exists some structure of module decomposition but in adding a new type of concern, related pieces of code are distributed among modules, crosscutting the existing structure. Although there have been efforts of designing software from the beginning based on the AOP method under the name of “early aspects”[20], the normal framework of mind for thinking aspects assumes the existing program code as a target of inserting advices to join points. A large volume of research (e.g., see [2–4, 6, 7, 11, 12, 14] exists in the area of access control policy specification. Formal logic-based techniques (e.g., see [2–4, 6, 11, 14]) are often used to specify security policies. The use of mathematical concepts and notation that are not familiar to software developers makes them difficult to use and understand. Other researchers have used high-level languages to specify policies [12, 13, 19, 20]. Although high-level languages are easier to understand than formal logic-based approaches, they are not analyzable. Some work has been done on modeling system security using UML. Jurjens [15] proposes UMLsec, a UML profile for modeling and evaluating security aspects based on the multilevel security model. Lodderstedt et al. propose SecureUML [17], an extension of the UML that defines security concepts. These approaches mainly focus on extending the UML notation to better reflect security concerns.

8. Conclusion The work described in this paper focuses on specifying the dynamic role binding and access control when a role is assigned to an Object. Checking for the presence of a pattern in an object diagram specifying a set of policies is essentially a search for a sub graph in an object diagram. The approach of binding objects and roles have the following characteristics: Composition takes place when an object instance and a role instance are bound together; an object instance can be bound to multiple role instances residing in different environments; when an object enters an environment it is assigned a role, when it exits that environment the associated role is discarded by the object.

9. References 1. G.J. Ahn and R. Sandhu. Role-based Authorization Constraints Specification. ACM Transactions on Information and Systems Security, 3(4):207–226, November 2000. 2. S. Barker. Security Policy Specification in Logic. In Proceedings of the International Conference on Artificial Intelligence, pages 143–148, Las Vegas, NV, 2000.

72

Computational Intelligence and Modern Heuristics

3. S. Barker and A. Rosenthal. Flexible Security Policies in SQL. In Proceedings of the 15th Annual IFIP WG 11.3 Working Conference on Data and Applications Security, Niagara-onthe-Lake, Canada, 2001. 4. E. Bertino, P. Bonatti, and E. Ferrari. TRBAC: A Temporal Role-Based Access Control Model. In Proceedings of the 5th ACM Workshop on Role-Based Access Control, pages 21–30, Berlin, Germany, 2000. 5. R. Chandramouli. Application of XML Tools for Enterprise-Wide RBAC Implementation Tasks. In Proceedings of 5th ACM workshop on Role-based Access Control, Berlin, Germany, July 2000. 6. F. Chen and R. Sandhu. Constraints for Role-Based Access Control. In Proceedings of the 1st ACM Workshop on Role-Based Access Control, Gaithersburg, MD, 1995. 7. N. Damianou and N. Dulay. The Ponder Policy Specification Language. In Proceedings of the Policy Workshop, Bristol, U.K., 2001. 8. D.F. Ferraiolo, R. Sandhu, S. Gavrila, D. R. Kuhn, and R. Chandramouli. Proposed NIST Standard for Role-Based Access Control. ACM Transactions on Information and Systems Security, 4(3), August 2001. 9. Geri Georg, Robert France, and Indrakshi Ray. An Aspect-Based Approach to Modeling Security Concerns. In Proceedings of the Workshop on Critical Systems Development with UML, Dresden, Germany, 2002. 10. Geri Georg, Indrakshi Ray, and Robert France. Using Aspects to Design a Secure System. In Proceedings of the Interational Conference on Engineering Complex Computing Systems (ICECCS 2002), Greenbelt, MD, December 2002. ACM Press. 11. R. J. Hayton, J. M. Bacon, and K. Moody. Access Control in Open Distributed Environment. In IEEE Symposium on Security and Privacy, pages 3–14, Oakland, CA, May 1998. 12. M. Hitchens and V. Varadarajan. Tower: A Language for Role-Based Access Control. In Proceedings of the Policy Workshop, Bristol, U.K., 2001. 13. J. A. Hoagland, R. Pandey, and K. N. Levitt. Security Policy Specification Using a Graphical Approach. Technical Report CSE-98-3, Computer Science Department, University of California Davis, July 1998. 14. S. Jajodia, P. Samarati, and V. S. Subrahmanian. A Logical Language for Expressing Authorizations. In IEEE Symposium on Security and Privacy, pages 31–42, Oakland, CA, May 1997. 15. J. Jurjens. UMLsec: Extending UML for Secure Systems Development. In Proceedings of Fifth International Conference on the Unified Modeling Language, pp. 412-425, pages 412–425, Dresden, Germany, October 2002. 16. Dae-Kyoo Kim, Robert France, Sudipto Ghosh, and Eunjee Song. Using Role-Based Modeling Language (RBML) as Precise Characterizations of Model Families. In Proceedings of the International Conference on Engineering Complex Computing Systems (ICECCS 2002), Greenbelt, MD, December 2002. ACM Press. 17. T. Lodderstedt, D. A. Basin, and J. Doser. SecureUML: A UML-Based Modeling Language for Model-Driven Security. In Proceedings of Fifth International Conference on the Unified Modeling Language, pages 426–441, Dresden, Germany, October 2002. 18. B.T. Messmer and H. Bunke. Subgraph Isomorphism in Polynomial Time. In Lecture Notes in Computer Science Graph Theory - ECCV’98, Springer-Verlag, Berlin, 1998.

Modelling Access Control with Dynamic Role Binding

73

19. OASIS. XACML Language Proposal, Version 0.8. Technical report, Organization for the Advancement of Structured Information Standards, January 2002. Available electronically from http://www.oasis-open.org/committees/xacml. 20. C. Ribeiro, A. Zuquete, and P. Ferreira. SPL: An Access Control Language for Security Policies with Complex Constraints. In Proceedings of the Network and Distributed System Security Symposium, San Diego, CA, February 2001. 21. J. E. Tidswell and T. Jaeger. An Access Control Model for Simplifying Constraint Expression. In Proceedings of 7th ACM conference on Computer and communications security, pages 154–163, Athens, Greese, November 2000. 22. G. B. andWilliam Cook. Mixin-based inheritance. In OOPSLA 1990, pages 303–311, 1990. 23. D. Bardou and C. Dony. Split objects: a disciplined use of delegation within objects. In OOPSLA ’96, pages 122–137, San Jose, California, USA, Oct. 1996. 24.K.Beck and W. Cunningham. A laboratory for teaching object-oriented thinking. In OOPSLA ’89, pages 1–6, 1989.

74

Computational Intelligence and Modern Heuristics

6

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation Mircea Neagoe1, Dorin Diaconescu1, Codruta Jaliu1, Sergiu-Dan Stan2, Nadia Cretescu1 and Radu Saulescu1

Transilvania University of Brasov, Romania Technical University of Cluj-Napoca, Romania 1

2

1. Introduction The accuracy modelling of parallel-type robot structures is based on finding out the position and orientation errors of the end-effector in relation with the modelled error-sources. In the case of small (infinitesimal) deviations, the error model is expressed through a linear function using special matrices called error Jacobeans (Neagoe, 2001). Hence, the main objective of accuracy modelling is to express the error Jacobeans. The accuracy modelling of the parallel robots represents a real challenge for the researchers, due to the high level difficulties implied in the direct modelling of the errors and, as a result, in the errorJacobean description. Unlike the case of the serial robots, the analytical expression of the direct error-Jacobean for parallel structures is generally inaccessible or very complex; contrary, the inverse Jacobean can be obtained without major difficulties. The studies referring to the precision modelling of parallel structures are scarcely found in literature, the most of the papers dealing especially with the inverse kinematics problem of parallel structures. There can not be found important results concerning the direct Jacobean modelling, neither a generalization of modelling, due to the severe difficulties of modelling. Many papers present specific solutions for different specific parallel structures: Tau parallel robot (Cui et al., 2008), six-dof parallel kinematic machine Linapod (Pott & Hiller, 2008), a 4-DOF parallel manipulator H4 (Wu & Yin, 2008), 3-DOF planar parallel robots (Briot and Bonev, 2008), etc. Currently, the problem of the parallel robots kinematics is reduced to the expression of the inverse kinematic Jacobean. Three representative methods applied in kinematic modelling of parallel robots were identified: 1. The partial derivatives method, which consists firstly in identifying the geometric relations for the modelled parallel structure and, than, the partial derivation relative to the independent parameters (Merlet, 1990; Merlet & Gosselin, 1991). Generally, the obtained model can be expressed by the relation A dq B dX , used for the joint velocities dq/dt calculus in relation with the operational velocities dX/dt. In this case, the inverse matrix A-1 is easily obtained, A being a square matrix for Stewart platforms. On the other hand, to express

76

Computational Intelligence and Modern Heuristics

the operational deviations dX and, implicitly, the direct Jacobean assumes to inverse the matrix B, which has the dimension equal to the number of independent modelling parameters. 2. The vectorial method, which expresses the articular velocities through the vectorial relations of the kinematic modelling of velocities (Benea, 1996; Merlet, 1990). 3. The kinematic screws method, which obtains the kinematic model by vectorial transformations applied to the plückerien coordinates of a line in space (Ficher, 1986; Lee et al., 1999; Toyama & Hatae, 1989). Starting from the previous revealed aspects, the authors propose in the paper a general method, based on the use of homogenous operators, useful for accuracy modelling of parallel structures with any configuration and complexity, with application for a StewartDeltalab parallel platform. The chapter is structured in four main sections. The first section introduces the theoretical background on the proposed method meant for accuracy modelling of parallel robots and presents the steps and mathematical support of a general algorithm derived from this method. In the second part, the proposed modelling is concretely applied to derive the accuracy model of the Stewart–Deltalab platform, considering the independent kinematic parameters (independent joint variables) as error–sources. Numerical examples will be presented, based on the analytical closed-form accuracy model previously obtained. The third section will contains the authors’ contribution to the modelling of the Stewart– Deltalab platform accuracy, applying the same proposed modelling method and algorithm, considering a set of geometric parameters as error–sources. Also, numerical examples will be done. In the last section, relevant aspects regarding the experimental testing of the error models used in accuracy studies of spatial parallel–structures will be presented. The theoretical accuracy models of the Stewart–Deltalab platform are verified by experimental testing, in conformity with a concrete experimental research program and a specific mathematical support.

2. Theoretical background The method proposed for parallel robot accuracy modelling includes three main steps: 1. Breaking of parallel structure into open kinematic chains (OKC) and description of the error models for the obtained OKC, considered as independent chains, by applying the specific error modelling of serial robots (Gogu, 1995; Gogu et al., 1997). 2. Recovering the parallel structure by assembling the error models of OKC and finally expressing the dependent errors. 3. Description of the end-effector errors related to the independent errors, by replacing the dependent errors in the error model derived for one of the OKC (step 1) with their corresponding expressions (identified at step 2). Explanatory notes: ― Structurally, a parallel robot includes: Active (actuated) joints; the relative displacements in the actuated joints are the robot generalized variables (independent joint variable) of the structure. Thus, the deviations

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

77

of these variables become input errors (independent errors) in the accuracy modelling. Passive (non-actuated) joints; these joints are included in any parallel structure in order to obtain parallel-type links. The relative displacements in passive joints are functions of independent joint variables and, hence, displacement errors in passive joints, called dependent errors, depend on the independent errors. ― Modelling the influence of geometrical parameters on the end-effector accuracy is done on an equivalent structure, obtained from the initial structure by associating fictive joints to the geometrical parameters affected by errors: a prismatic joint is introduced for each linear error and a revolute joint – for each angular error. ― The proposed modelling requires only the inverse geometrical model of the parallel structure and the direct geometrical models of OKC. All these models are expressed, generally, without significant difficulty. The general case of a parallel robot structure (Fig. 1,a) is considered; it consists of a mobile platform (m) connected to the fixed one (f) by p kinematic chains (legs) AiBi, in a parallel layout. The spatial guiding of the mobile platform is obtained by actuating n joints nominated as active joints. In practice, generally p = n, each leg including only one active joint. For the sake of clarity, the following explanations have to be mentioned: ― For the simplicity, but without reducing the generality, Figure 1 shows only symmetrical legs in a parallel layout and their connecting joints to the base and moving platforms. In a general case, the robot legs can have different structures and usually include intermediate joints. ― The breakage of the parallel structure can be done in different ways: to the characteristic point of the end-effector, to the base joints or to any intermediate joints.

m

Bi

Om

Mobile platform (m)

Arm i

m

Bi

Om

Arm i

f Ai

f

Ai

Of

a

Base (fixed) platform (f)

Of

b

Fig. 1. Parallel robot structure in a general configuration (a), and the open chain i obtained by "disassembling" the parallel structure (b)

78

Computational Intelligence and Modern Heuristics

―

In the following modelling, the independent parameters will be designated by notation pind, k k while the dependent parameters by pdep; pind and pdep designate independent parameters

and respectively dependent parameters for the leg k (OKC k) of the parallel structure. The independent parameters pind designate active joint variables, in the case of joint error modelling, or geometrical parameters when the error model for geometrical deviations has to be established. In the global error modelling, both types of kinematic and geometrical parameters are considered independent. ― The end-effector errors can be reduced in the base, end-effector or other intermediate reference frame. In order to simplify the notations, the reference frame where the errors are reduced is not specified. The proposed modelling begins with a preliminary step: breaking the parallel structure into open kinematic chains (OKC); there are many splitting variants that can be applied, each of them giving specific features to the modelling algorithm (Neagoe, 2001). The variant used in the paper is based on breaking the parallel structure in the origin Om of the mobile frame m, obtaining the open chains OfAiBiOm, i = 1..p (Fig. 1,b); all the open chains have the mobile platform (end-effector) as the final element. The obtained p independent OKC have the same property: their extremity points are permanently coincident and, consequently, the end-effector’s errors for all the p OKC are identically! Further on, the steps of the proposed modelling algorithm and its specific mathematical aspects are briefly presented. ―

Step I: deriving the end-effector errors for the p OKC By applying the well known relations for open kinematic chains accuracy modelling (Gogu, 1995; Gogu et al., 1997 ; Paul, 1981), in the case of OKC i will be obtained: i

dx d y dz i i i i i J ind dpind J dep J dep dpdep , x y z

(1)

where J iind is the error Jacobean for the independent errors and J idep – the error Jacobean for the dependent errors of the parallel structure, i = 1..p. In this step, having only independent open kinematic chain (OKC), all the modelling parameters are characterized by independent errors. Step II: identification of the dependent errors In the parallel structure, the end-effector’s errors are the same for all the p OKC (the existence condition of a parallel structure). As a result, the following p-1 independent matrix equations are obtained:

J dp J dp J dp J dp , j ind

j ind

j dep

j dep

k ind

k ind

k dep

k dep

jk.

(2)

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

79

Without reducing generality, the following assumptions can be accepted: j = 1 and k = 2..p or j = 1..p–1 and k = j+1. Grouping together only the dependent terms from the left member of the equation (2), the relation (3) will be obtained:

J dp J dp 1 dep

k dep

1 dep

k dep

(3)

k k J ind dp ind J 1ind dp 1ind .

The p-1 equations (3) are grouped into a matrix system (4):

J dp J dp . dep

dep

ind

(4)

ind

where:

J dep

J 1dep 1 J dep 1 J dep

J 2dep 0 0

dp dp dep

0 J 1ind 1 0 J J ind ind , 0 1 J ndep J ind

0 J 3dep 0

dp dp

p dp 2dep dp dep ,

1 dep

ind

1 ind

0 0 , 0 J nind

0 3 J ind

2 J ind 0

0

0

2 p dp ind dp ind .

Finally, the dependent errors can be expressed through the following relation:

dp J J dp J dp . dep

dep

1

ind

ind

* dep

(5)

ind

The central problem of this modelling is to reverse the matrix Jdep. For kinematically determinate structures, matrix Jdep is always a square matrix of s×s dimension; s is equal to the number of dependent parameters and does not depend on the number of independent parameters considered in modelling. For the structures with a reduced complexity, the reversion can be obtained analytically; for the other cases, a numerical approach is recommended. Step III: end-effector errors establishment

The end-effector errors can be expressed by introducing the dependent error expressions (rel. 5) into (rel. 1), particularised for each arm. Considering the chain i, the end-effector errors become: i

dx d y dz i i i i* J ind dpind J dep J dep dpind J dpind . x y z

(6)

J J J J

(7)

Introducing the notation i dep

i* dep

*

* 1

J *2 J i* J *p ,

80

Computational Intelligence and Modern Heuristics

the error-Jacobean J of the parallel structure can be described as:

J

J 1* J *2 J i* J iind J *p .

(8)

The Jacobean matrix J given by relation (8) describes the linear transformation of independent errors into operational errors associated to the end-effector. The complexity of the Jacobean J depends on the reference frame used for reducing the errors. Most frequently in practice, the Jacobean J is reduced in the final reference frame m or in the fixed frame f (Fig. 1).

3. The Stewart platform presentation The Stewart DELTALAB platform (Fig. 2) is a parallel manipulator, composed by a moving platform connected to the base through 6 telescopic legs (of variable length). The links between the six legs and the two platforms are materialized by spherical joints. The parallel structure geometry is completely defined by the coordinates of the points Ai şi Bi (the centres of spherical joints, Fig. 3), which can be established by means of parameters rf = 270 mm; rm = 195 mm; = 4.25°; = 5.885° (Fig. 2). As a result, the analyzed Stewart platform can be geometrically defined as follows (Fig. 2): The fixed platform: — The fixed coordinate system attached to the fixed platform: f(Ofxfyfzf), is placed in the plate’s centre (the centre of the circle of radius rf). — The centres of the spherical joints, formed of the six cylinders (legs) with the fixed platform, are placed in points Ai, distributed on the circle of radius rf. — The points Ai are organized in equidistant groups formed of two appropriate adjacent points separated by the angle 2. The moving platform: — The mobile coordinate system: m(Omxmymzm), placed in the plate’s centre (the centre of the circle of radius rm). — The centre points Bi of the spherical joints, distributed on a circle of radius rm. — The points Bi are also organized in equidistant groups with the centre angle 2. The platform initial position (at minimum high) is characterized through the position of point Om' in f (see Fig. 2), the moving platform being parallel to the base. The distance between Om' and Of in this position is defined by the parameter h = OfOm = 326.679 mm, for which the minimum length of the cylinders (active joints) is Li = AiBi = 387 mm. The spatial guidance of the mobile platform related to the fixed one, is described by a set of 6 parameters: 3 position (displacement) parameters, given by the coordinates of the point Om in relation to the reference frame m' attached to the moving platform, expressed in the fixed reference frame f, Om'Om xm i f y m j f zm k f . (9)

3 orienting parameters: the angles 1, 2 şi 3 , which characterize the reference frame m orienting in relation to the reference frame m'; the associated rotational matrix is described by the following relation:

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

zm

ym r m

zf

B3

B2

B4

x m B1

The moving platform

Om' Om

B5

L4

Bi

L2 L3 A3

B6

L5

L1

A2

L6

A5 The fixed platform

Ci yf

Of

A4

81

rf Ai

A1

a

b

xf

A6

Fig. 2. The structure of the Stewart–DELTALAB platform (a) and of the leg i (b) zm

Bi zi, yi, xi

ym

xm

P (rmi, zi, yi)

yi ║zf

Om

xi

Bi

║xf zf

Li

║yf

Ai xi, yi

yf

Of

Ai b

(rfi, fzi, fyi) xf a

Fig. 3. Decomposition of the parallel structure in open chains and their parameterization

82

Computational Intelligence and Modern Heuristics

c1c 3 s1s 2 s 3 Rm'm = Rz ( 1 ) Rx ( 2 ) Ry ( 3 ) = s1c 3 c1s 2 s 3 c 2 s 3

s1c 2 c 1c 2 s 2

c1s 3 s1 s 2 c 3 s1 s 3 c1 s 2 c 3 , c 2 c 3

(10)

where ci = cos(i) and si = sin(i). The position of the points Ai in the fixed reference frame f is defined through a set of spherical coordinates (zfi, yfi, rfi), and of the points Bi through coordinates (zmi, ymi, rmi) defined in m (Fig. 3). The relative angular displacements from joints Ai are modelled by means of angles xi and yi (Fig. 3,b) and the displacements from the spherical joints Bi by means of angles (zi, yi, xi).

4. Direct error modelling The objective of the direct error modelling is to establish the operational errors of the end-effector related to the values of the source errors; in the paper both active joint variable errors and geometric errors are considered. 4.1 Joint variable errors modelling In this section, the error sources considered in the accuracy modelling are nominated by the relative displacements from the active joints (the prismatic joints Ci, Fig. 2,b). In the infinitesimal errors hypothesis, the error model becomes a linear model, where an error Jacobean JL describes the influence of the independent kinematical parameters (L1,..., L6) on the end-effector accuracy. This modelling is based on the following assumptions: a) the modelling of I order errors is used; b) the geometrical parameters of both moving and fixed platforms have no errors (ideal geometry); c) the passive joints (joints Ai and Bi ) are ideal joints; d) the error model expresses the end-effector errors for the characteristic point P (Fig. 3,a); e) The errors are reduced in the end-effector reference frame p. In these assumptions, the linear error model is expressed by the following relation:

dXp JL p dL ,

(11)

where dXp dx dy dz x y z Tp is the 6 dimensions vector of the operational errors of

the end-effector, for point P, reduced in p, while dL dL1 dL2 dL3 dL4 dL5 dL6 T is the vector of the active joint variable errors. According to the error model (rel. 11), the central objective of this modelling is to establish the error Jacobean JL (through a similar approach, the error Jacobean JL can be expressed also in any other frame). In order to describe the Jacobean JL, the former algorithm (section 2) is proposed further on. Step 1. Description of the end-effector errors for the six open chains (OKC) Due to the fact that the effector errors are described in the reference frame p¸ the direct kinematic modelling for finite displacements of OKC must be done with the homogenous operators of D–F type (type K) (Gogu, 1995; Gogu et al., 1997). The kinematic model will also include, in this step, the relative displacements from the passive joints Ai and Bi as independent parameters.

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

83

The operational errors of each OKC can be now described easily by applying the well-known relations for open chains (Gogu, 1995; Gogu et al., 1997): i

dx i xi d yi yi dz i dLi , J J i J i x i z i yi yi z i P x i

xi

J

JL

yi

i

J

J

zi

J

yi

xi

, i = 1..6,

(12)

where the column vectors from matrix Ji describe the influence of the errors of the modelling parameters. Step 2.Identification of dependent errors By splitting the parallel structure into open chains, the passive joints Ai and Bi became fictively actuated and, so, the displacements errors from these joints became independent too. In the parallel structure, all these errors are dependent of the independent error sources Li. That’s why, to express the dependent errors related to the independent ones represents the objective of this step; this desideratum becomes possible by modelling the recovering of the parallel connections of the Stewart platform, for which the following condition is used: the effector errors are the same for all the six OKC; analytically, the condition is expressed through the following equalities: dx i x 6 x 1 d 1 y y i y6 dz i dL1 dL6 , J 1 J 6 xi z1 z 6 yi y6 y1 z i P x 6 x 1

(13)

which lead to 5 independent matrix equations. Applying separation of dependent terms from the independent ones, the following relation is obtained:

J

x 1

J

y1

J

J

z1

y1

J

x1

x 1 y1 z 1 J y 1 x1

xk

J

J

yk

zk

J

yk

J

xk

xk yk z k J L dLk J L dL1 , y k xk k

1

(14)

for k = 2..6. The systems (14) are assembled into one matrix equation:

J J dL , *

where

x 1

x 2

dependent errors, while

z 1

y 1

(15)

* L

x 1 y 6

x 6

T

is

the

global

vector

of

84

Computational Intelligence and Modern Heuristics

J 1 J 1 * J J 1 J 1 J 1

J 2 0

0 J3

0 0

0 0

0 0 0

0 0 0

J4 0 0

0 J5 0

J k J

xk

J

yk

J

J

zk

J

yk

xk

0 0 0 , 0 J 6

J L1 J L1 * J L J L 1 J L 1 J L1

JL2 0

0 JL3

0 0

0 0

0 0 0

0 0 0

JL4 0 0

0 J L5 0

, k = 1..6 and dL dL

1

0 0 0 , (16) 0 J L 6

dL2 dL6 T .

Finally, the dependent errors can be expressed with relation (17):

J * 1 J L* dL J * dL .

(17)

The main problem for expressing analytically the error model consists in reversing the

square matrix J * of 30×30 dimension. In the case of Stewart platform, the reverse matrix

J was obtained numerically. Step 3.Establishment of the and-effector errors For each open kinematic chain, a set of 5 dependent parameters was used in modelling; in matrix J* (relations 17), for each set correspond 5 lines: the first 5 for leg 1, the following 5 for leg 2 a.s.o. The operational errors of the end-effector can be expressed by replacing the dependent errors expressions (rel. 17) into (rel. 12), with particularization for one of legs. Considering the chain 1, the end-effector errors expressed in the frame p become: *

x 1 dx d y1 y dL1 dz * J 1 J 1 J 1 z 1 x y1 y z P x 1

J L

1

dL1 L dL J 2 dL 3 , J * 1 1 L J dL 4 L dL J 5 L dL6 J

x1 1

y1

1

z1

1 y1 1

x1

J L J L 0

J L J L 0

J L J L 0

J L J L 0

J L J L 0

J L J L J L

J L J L J L

J L J L J L

J L J L J L

J L J L J L

2

x1 2

y1

2 z1 2 y1 2 x1

3

x1 3

y1

3 z1 3 y1 3 x1

4

x1 4

y1

4 z1 4 y1 4 x1

5

x1 5

y1

5 z1 5 y1 5 x1

6

x1 6

y1

6 z1 6 y1 6 x1

,

(18)

where J tL is an element of matrix J* (relations 17) and represent the influence factor of i

1

deviation dLi on the dependent parameter t1. By generalizing the relations 18, the error Jacobean for deviations of active joint variables can be expressed through any of the following relations:

J J J J J J J . L

1

* 1

2

* 2

6

* 6

(19)

4.2 Geometrical parameter errors modelling The influence of deviations of the parameters which define the parallel structure geometry on the endeffector errors is described through a linear model, where the error Jacobean JG represents the system matrix:

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

85

dXp JGp dG ,

(20)

where dXp dx dy dz x y z Tp is the 6 dimensions vector of the operational errors of the end-effector, corresponding to the characteristic point P (Fig. 3), reduced in p;

dG z1

y1 drf 1 drm1 y1 z1 z6 y6 drf 6 drm6 y6 z6

T

is the vector of

geometric errors. This modelling is based on the following assumptions: Platform’s command is considered to be ideal and so the joint errors dL are null. Structure geometry is affected by known and constant in time errors. In this case, the parallel structure is fictitious splitted into 6 open kinematic chains (OKC), one for each leg: OfAiBiOmP (see Fig. 3). Further on, the following algorithm, consisting of three main steps, is applied.

Step 1. Description of the end-effector errors for the 6 OKC In order to model the influence of the geometrical deviations, in the proposed method is used an equivalent structure, in which for each geometrical modelling parameter is associated one degree of freedom fictitious joint (prismatic or revolute). Each OKC associated to the Stewart platform becomes a serial structure with 12 one degree of freedom joints (therefore 12 independent parameters – see. Fig. 2): RRTRRTRRRTRR. Because the end-effector errors will be expressed in the final frame p¸ the direct kinematical modelling for finite displacements of OKC will be done with the following homogenous operators of D–F type (type K) (Gogu, 1995; Gogu et al., 1997): A01 = Rz(zi); A12 = Ry(yi); A23 = Tx(rfi); A34 = Rx(xi); A45 = Ry(yi)· Tz(Li); A56 = Rz(zi); A67 = Ry(yi); A78 = Rx(xi); A89 = Tx(-rmi); A9_10 = Ry(-yi); A10_11 = Rz(-zi)· Tz(hmp). The operational errors for each OKC are described using the general relations for open chains:

d

xi

T

dy i dzi xi y i zi

Ji dGi ,

J J i

zi

P

Ji zi yi drfi xi yi zi y i xi drmi yi zi

J

Jr

yi

fi

J

xi

J

yi

J

zi

J

yi

J

xi

Jr

mi

J

yi

J

zi

, T

i 1..6,

T

(21)

where the column vectors from matrix Ji describe the influence of the modelling parameters errors, used in kinematical description of OKC.

Step 2. Identification of dependent errors Even if there are considered independent in the equivalent structure, the relative displacements from the joints which are not commanded Ai and Bi are dependent displacements and, thus, the displacements errors are also dependent; there expressions can be identified by remodelling the parallel structure through the following condition: the effector errors are identical for all the 6 OKC:

d

xi

dy i

dz i

x i

y i

zi

T

P

J 1 dG1 J 6 dG6 .

(22)

86

Computational Intelligence and Modern Heuristics

Five independent matrix equations are derived from (rel. 22); separating the dependent terms from the independent ones, it results:

J

J

x1

J

J

zk

yk

J

y1

Jr

Jr

fk

J

z1

mk

J

y1

J

J

yk

zk

x1

x 1 y1 z 1 J y 1 x1

zk yk drfk J drmk yk zk

z1

J

xk

J

yk

Jr

y1

f1

J

J

zk

Jr

J

m1

J

yk

J

y1

z1

xk

xk yk z k y k xk

z1 y1 drf 1 , k = 2..6. drm1 y1 z1

(23)

The five systems (23) are assembled into one matrix equation:

where

J J dG , *

x 1

x 2

z 1

y 1

0

0 J3

0 0

0 0

0 0 0

0 0 0

J4

0 J5

(24)

* G

x 1 y 6

T

x 6 is

the

global

vector

of

dependent errors and J 1 J 1 * J J 1 J 1 J 1

J 2

J k J

xk

J

yk

0 0 J

zk

0

J

J

yk

xk

0 J G1 J 0 G1 * 0 , J G J G 1 0 J G 1 J J6 G1

,

JGk J

zk

J

yk

Jr

Jr

fk

mk

JG2 0

0 JG3

0 0

0 0

0 0 0

0 0 0

JG4 0 0

0 JG5 0

J

yk

J

zk

, k = 1..6.

0 0 0 ,(25) 0 J G 6 (26)

Finally, the dependent errors expressions can be expressed by relation:

J

J

* 1

* G

J 1* dG J dG , J . J 6*

*

*

(27)

The matrix J * is a square matrix, of 30×30 dimension, and, therefore, reversible. Step 3. Establishment of effector errors Matrix J* (relations 27) has the dimension 30×36 and it can be split into 6 submatrix J i* of 5 lines, representing the error Jacobean of the dependent deviations from leg i related to deviations dG. Particularized for one of the chains, for instance OKC 1, the end-effector errors expressed in p become:

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

87

d

xi

dy i dzi x i y i zi

T

P

T

J1 z1 y 1 drf 1 x1 y 1 z1 y 1 x 1 drm1 y 1 z1

dG ,

J1 J * 1

1 0 0 J J J J J 0 0 0

J

z1

x1

J

z1

J * 1

y1

J J

z1

z1 z1

y1

J

z1

x1

(28)

0

0

0

0

0

1 0

0 1

0 0

0 0

0 0

y1 x1 y1 y1 y1 z1 y1 y 1 y1 x 1

rf 1 x1 rf 1 y1 rf 1 z1 rf 1 y 1 rf 1 x 1

J

J

rm 1 x1 rm 1 y1

J J

rm 1 z1 rm 1 y 1

J J

y1 x1 y1 y1 y1 z 1 y 1 y 1 y 1 x 1

J J J J J

0 0 0

0 0 0

J

J r

m1 x1

J

J

1 0 0

0 1 0

J J

J J

z1 x1 z1 y1

J J J

0 0 0 y6

x1 y6

y1

y 6

J J

z1 z1 z1 y1

z1 y6 y1

y 6

J

z1 x1

0 0 1

x1

0 0 0

0 0 0 J J J , J J 0 0 0 z6

x1

z6

y1

z6 z1

(29)

z6

y1 z6

x1

where J tp represents the influence factor of deviation dpi on the dependent parameter t1 i

1

which is a component part of matrix J* (rel. 27). Generalizing, the error Jacobean for the deviations of joint variables can be expressed through any of the following relations:

J J J J J J J . 1

G

* 1

2

* 2

6

* 6

(30)

4.3 The error model for geometrical and kinematical parameters deviations The complete kinematical error model, which includes both the influences of the active joint variables Li and of the geometrical parameters can be deduced through a similar approach; the only changing in the modelling prerequisites is referring to the fact that the displacements deviations from the commanded joints have to be included between the error sources of Stewart platform. Therefore, the number of error source parameters is changing from 36 to 42. In the first step of the modelling algorithm is included also deviation dLi generated when the relative displacements from the actuated joints Ci are commanded. In step 2 the 30 dependent deviations are identified in relations with the 42 independent variables. In this case is also necessary to reverse the matrix of 30×30 dimension. Finally, the end-effector errors expressed in reference frame p can be deduced by replacing the expressions of the dependent errors in the error model of one of the OKC. In conclusion, the complete error model can be obtained by assembling the previous partial models:

d

xi

dy i

dz i

x i

y i

zi

T

P

= J 1G J* 1G dG J1L J * 1L dL JG dG J L dL .

(31)

88

Computational Intelligence and Modern Heuristics

5. Accuracy numerical simulations The numerical simulation of the error model for Stewart-DELTALAB platform had the following objectives:

Validation of the error model by verifying the results obtained in the numerical and graphical simulation. Thus, for a set of representative configurations of Stewart platform were applied the known deviations of source-parameters and the end-effector errors were calculated (rel. 18). The configurations tested with error, were generated with a graphical tool (in this case AutoCAD) and were established the effective values of the modeling independent and dependent parameters, using specific functions. In all the tested variants, the simulation showed the correctness of the elaborated models. 2. Identification of the end-effector errors on a given trajectory, for specified values of the source errors. Using numerical simulation, the global effect of error sources and the importance of each error parameter on the positioning and orienting precision of end-effector can be calculated. In this way, can be identified the factors with a maximum influence and thus recommendations for constructive and functional design can be elaborated. The results of numerical simulation of the precision model for the case of a linear trajectory, given through the start configuration (xm, ym, zm, 1, 2, 3) = (-100mm, 100mm, 100mm, 0°,0°,0°) and –final (100mm, -100mm, 200mm, 45°, 30°, -30°), are presented in Figure 4. The represented end-effector errors were generated considering that all active joint errors Li = 1 mm. Thus, the positioning on axe z is achieved with the biggest deviations (Fig. 4,a), while the maximum angular deviations are registered on axis y (Fig. 4,b). 1.

Positioning errors

dy

dz

dr

29

27

25

23

21

19

17

15

13

9

29

27

25

23

21

19

17

15

13

9 dx

11

7

5

3

1

0,00

11

0,20

7

0,40

5

0,60

dLi = 1 mm

3

0,80

0,08 0,07 0,06 0,05 0,04 0,03 0,02 0,01 0,00 -0,01

1

1,00

[grade]

(dx,dy,dz,dr) [mm]

Orienting errors

dLi = 1 mm

1,20

a b Fig. 4. Numerical simulation of the joint error model: end-effector positioning errors (a) and orienting errors (b) obtained for joint errors Li = 1mm The objective of the numerical simulation of the geometric error model was to identify the end-effector errors on a given trajectory, for the specified values of source errors (Fig. 5). Thus, it can be established both the global effect of all the error sources and the importance of each error parameter on the positioning and orienting precision of the end-effector; therefore, the factors with a maximum influence can be identified and the recommendations for constructive and functional design can be elaborated. Considering the former trajectory, the end-effector errors were generated in the assumption that all the linear geometrical parameters have 1 mm deviations, while the angular ones

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

89

have 1° deviation. The following conclusions and recommendations can be formulated analyzing the graphical representations of the end-effector errors (Fig. 5): Referring to the positioning precision it can be noticed the superior influence of the parameters yi (Fig. 5,a) and yi (Fig. 5,b) similar to the relatively reduced effects of parameters rfi (Fig. 5,c) and rmi (Fig. 5,d). The orienting precision depends in a small measure of the deviations of parameters rfi (Fig. 5,e) and rmi (Fig. 5,f). On the other hand, the orienting precision is more dependent on the deviations of parameters zi and zi.

21

23

25

27

29

23

25

27

29

23

25

27

29

19

17

15

21

dr

0,20 0,15 0,10 0,05 19

17

15

13

5

3

0,00 -0,05

1

-0,40

(dx,dy,dz,dr) [mm]

29

27

25

23

21

19

17

15

13

11

9

7

5

3

0,00 1

-0,10

-0,80

dx

dr

0,20

-0,10

0,10 19

17

0,00 -0,10

5

29

27

25

23

21

19

17

15

13

11

9

7

5

0,00

3

0,05

1

[grade]

0,30

0,10

3

dr

drmi = 1 mm

0,40

0,15

1

dz

15

drfi = 1 mm

0,20

dy

d Orienting errors

c Orienting errors

13

dz

11

dy

9

dx

7

(dx,dy,dz,dr) [mm]

0,20

-0,60

[grade]

dz

drmi = 1 mm

0,25

0,40

-0,05

dy

b Positioning errors

0,60

-0,20

= 1 grad

21

dx

drfi = 1 mm

0,80

9

dr

11

dz

a Positioning errors

9

dy

7

dx

11

-6,00

7

-4,00

5

29

27

25

23

21

19

17

15

13

9

11

7

5

3

0,00 -2,00

yi

3

2,00

4,00 3,50 3,00 2,50 2,00 1,50 1,00 0,50 0,00 -0,50

1

4,00

1

(dx,dy,dz,dr) [mm]

6,00

Positioning errors

= 1 grad

(dx,dy,dz,dr) [mm]

yi

13

Positioning errors

-0,20

-0,15

-0,30

-0,20

e

f

Fig. 5. The influence of some geometric parameter errors on the trajectory end-effector errors

From the numerical study of the precision of Stewart platform on the mentioned trajectory, it can be formulated the recommendation that the maximum precision for the angular parameters (yi, yi, zi, zi) has to be assured.

90

Computational Intelligence and Modern Heuristics

6. Accuracy experimental validation Concerning the Stewart DELTALAB platform error modelling, some explanatory notes and the necessary notations in the experimental testing are presented further on: —two categories of reference frames are associated to the tested platform: theoretical reference frames (used in the platform command program) – associated to the theoretical plane given by centres of the spherical joints of mobile platform (points Bi), and measure frames (used in the measure process) – associated to a real surface of the mobile platform; —the taken measurements were of relative type, in relation to a reference frame defined by the 3D measurement machine, on the base of the measure frame for the reference position of the platform; m exp Om exp x m exp y m exp zm exp — the theoretic frame associated to the mobile platform in an experimentally specified position; pref Opref x pref y pref z pref — the measurement frame associated to the mobile platform in a reference position; p exp O p exp x p exp y p exp z p exp — the measurement frame associated to the mobile platform in an experimentally established position. In order to become possible and to offer complete data on the accuracy, a first step in experimental testing is to identify the constructive elements of the platform and the accessories. In this context, the following explanatory notes are made:

Working plane

Theoretical plane

hmp

Fig. 6. Theoretical and working planes of Stewart platform 1°. Plane xmOmym of frame m is identical to points Bi plane; being a fictive plane, in experimental research was used frame p for which plane xpOpyp is materialized by a plane finished surface (working plane – see Fig. 6). The frame p is parallel to m and is obtained through a translation with the distance hmp = OmOp = 40.55 mm on the Omzm axis.

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

91

2°. The Stewart platform includes, as additional accessories, two cylindrical finished bolts, assembled on the working plate in point Op and, respectively, in a point on the axis Opxp (Fig. 3 and 4). In this way, frame p is materialized as follows: ― axis Opzp through the normal to the working plane; ― the origin Op as the intersection point of working plane and the axis of the bolt which is assembled in this point; ― axis Opxp as the line described by 2 points: Op and the intersection point of the second bolt axis and the working plane; ― axis Opyp with, implicitly, the unit vector j p k p i p . 6.1 The 3D measurement machine TEMPO The Tri-Mesures machine (Fig. 7) is metrology equipment with high performances. From the structural point of view, the machine is assimilated to an orthogonal robot of portal type, with three independent axes. The final element, which performs a translation on vertical (z axle), has an orientation measurement head at it extremity, that has a sensing head system (Fig. 7). The machine is characterized by a high rigidity, its mobile parts moving on an aerostatic cushion and a high geometrical precision. The logistic administration of measurement machine functioning is obtained through the program METROSOFT 3D. The program allows to measure parts with plane, spherical, cylindrical or conical surfaces. The program is handling almost exclusively through a control desk, with specialized keys for different categories and command types.

Stewart Platform

TEMPO machine

Fig. 7. The 3D Measurement TEMPO machine and the Stewart-DELTALAB platform

92

Computational Intelligence and Modern Heuristics

6.2 The experimental research program The experimental research had in view to fulfil a program based on the following objectives: 1. Establishment of Stewart platform repeatability. 2. Establishment of absolute precision (accuracy). 3. The experimental testing for proposed precision models validation. The experimental testing was preceded by identification of a minimum number of parameters (points and vectors) which have to be measured and which allow the analytical establishment of real position of mobile platform (of the reference frame p). Starting from the experimental and command values, the actual operational errors of the Stewart platform are established, with their help being quantified the accuracy and repeatability. Therefore, the main steps in the measurement process of Stewart platform accuracy are presented: 1. The Stewart platform is placed on the measurement machine working table and runs the platform command program. 2. The platform is put under tension and is commanded to move to the initial position (zero position). 3. After starting up the measurement machine, the necessary configuration of the measurement head is calibrated through filling a standard sphere and their memorization. 4. A frame part is defined, materializing the reference frame p'. This is achieved in 3 phases: a. Establishment of a primary direction, which gives one of the frame part axes. b. Establishment of a secondary direction, which materializes the second axle of the part frame. c. Specification of the origin of the frame part. 5. The platform is moved in the testing pose. 6. Are taken measurements in order to establish the frame pexp position (Fig. 8): a. Measurement of working plane. The procedure imposes a plane command selection and filing of 4 points (4 is the implicit value, which can be modified and represents the minimum accepted number of points). There are supplied to the user the components of the unit vector normal to the plane. b. Fulfil of the two cylinders, placed in the two points P1 and P2, through cylinder command initialization and fulfil of minimum 9 points per cylinder. These cylinders were materialized through calibrated bolts with Ø8×25 dimensions. c. The two points P1 and P2 are obtained as intersections of the two cylinders with working plane. The coordinates of the two points are displayed in the part system declared active. d. Identification of Ox axle as a line which passes through points P1 and P2. It is used the connex command and it is given the axle by the unit vector.

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

93

working plane

central bolt Ox axis bolt

Fig. 8. Geometric elements used in the experimental research Explanatory notes: The machine can report measured values and can make calculus both in the machine frame and in the frame defined by the user. The machine reference frame is defined with the axis parallel to the displacement directions of mobile elements (x axle – the longitudinal axle, y – transversal and z – vertical, see Fig. 7) and the origin in the standard sphere centre. A user frame is defined in accordance to point 4 and is associated to the geometrical form of a part; this will be named further on as frame part. At the intersection of a plane with a cylinder, the machine program obtains a point and not an ellipse (circle), considering the intersection between the plane and the cylinder axle. The algorithm for actual operational errors calculus, corresponding to the relative measurements, is based on scheme from Figure 9. The final purpose of the mathematical processing of experimental values is to identify the 6 dimensions vector of the actual operational errors as a measure of the difference between the real position (experimentally established) and the commanded one (theoretical). So, first are established the expression of the homogenous operator Ap→pexp for each measurement; in phase 2 are identified the real errors Ap→pexp, related to frame p.

94

Computational Intelligence and Modern Heuristics Ap→pexp =? p Am'→p'

Apref→p

pexp m

mexp Apref→pexp

Am'→p' pref Am'→p'

Amref→m mref

p'

Am'→mref

Am'→p' m’

Fig. 9. Reference frames associates to the Stewart platform The selection of frame p as a reference frame (and not of m) is justified through the physical existence of working plane (as a measurement plane); this interferes as a location element in the Stewart platform tasks, unlike frame m¸ which is fictive. In the relative measurements case, the measured values are reported to a part frame defined in a reference position pref. – There are known (Fig. 9): o Am'→p' , Am'→m şi Am'→mref; o Ap'→pref = (Am'→p')-1 ·Am'→mref · Am'→p'; o Apref→pexp, established by means of experimental values, related to pref; – There is identified the homogenous operator Ap→pexp from the following equality (see Fig. 9): Apref→pexp = Apref→p · Ap→pexp

Ap→pexp = (Apref→p)-1 · Apref→pexp,

where Am'→p' · Apref→p = Amref→m · Am'→p' Amref→m = (Am'→mref )-1· Am'→m.

Apref→p = (Am'→p')-1 ·Amref→m · Am'→p' ,

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

95

6.3 The experimental validation of the error models The accuracy model represents the mathematical expression of the dependencies between the operational errors and the source-errors. From the tests on Stewart platform it was pursued the accuracy model validation, considering as source deviations the relative displacements from the actuated joints. Validation of the precision model consists of: ― The platform is moved in the tested reference positions; ― A part frame is defined in pref (the relative measurements case); ― The platform is moved in adjacent positions, by commanding displacements Li bordered to those corresponding to pref; ― The real position of the platform is measured and identified; ― The theoretical and real deviations are established (with the precision model). For the experimental validation of precision model were selected several representative testconfigurations. For one of them, the expression of the error Jacobean, in accordance to (rel. 19), is:

.

As it can be seen in Figure 10, there is a good concordance between the values given by the precision model and the finite displacements, established on the theoretical model (by numerical simulation) and the experimental values. The deviations from Figure 10 have the following meanings: the "exact" deviations were established with the direct kinematical model for finite displacements, in which were included the final values (corrected) of the kinematical variables Li = Liref + Li. The "exact" deviations are theoretical deviations, defined by finite displacements from the reference-test configuration pref to the commanded configuration with errors p; the experimental deviations express the difference between the measured configuration pexp and the reference one pref; the calculated deviations are obtained applying the linear error model, in which the error Jacobean J corresponds to the test-configuration pref. The differences between the results obtained through the proposed model and the “exact” model are explained by the linear nature of the precision model (the infinitesimal displacements are level 1 approximations of the finite displacements); these differences tend to zero only for the small values (infinitesimal) of input parameters (source errors) and, respectively, increase for values from the finite domain of inputs in the model.

7. Conclusion The proposed modelling method allows deriving the error model through a systemic and algorithmic approach and it is applied for parallel structures of any complexity. ― The analytical error model of Stewart–DELTALAB platform has a relatively high complexity, due to the fact that a matrix of 30×30 dimension has to be reversed; the problem was solved numerically. ―

96

Computational Intelligence and Modern Heuristics

The Jacobean JL can be numerically expressed. Numerical simulation was used for checking the correctness of the algorithm and of modeling. The error model was also verified through graphical simulation, using AutoCAD. ― The relations for the Jacobean JG were used, through numerical simulation, to verify the correctness of the algorithm and of the modelling. ― The results, offered by the precision models are in a good concordance both with the values given by numerical simulation and, also, with the experimental values (Fig. 10). ―

r [mm]

Positioning errors r 35,00 30,00 25,00 20,00 15,00 10,00 5,00 0,00 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Calc J

Exact

Experimental

a Orienting errors

[grade]

6,00 5,00 4,00 3,00 2,00 1,00 0,00 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Calc J

Exact

b

d

Experimental

0,05 0 -0,05 -0,1 1 2 3

J- r.exact

4 5 6

7 8 9 10 11 12 13 14 15 16

[grade]

r [mm]

Positioning and orienting errors differences 0,60 0,50 0,40 0,30 0,20 0,10 0,00 -0,10 -0,20 -0,30

-0,15 -0,2

.J- .exp

.J- exact

c

Fig. 10. Experimental validation of theoretical models

.J- exp

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

97

The differences between the results obtained with the proposed model and the experimental values are relatively small (of 10-1 mm, respectively of 10-1 degrees) and are enclosed in the error limit given by the accuracy error of tested Stewart platform. ― The experimental testing validates the precision models; the conclusion is that the proposed models are correct and the algorithm and the numerical implementation of the models are, also, correct. ―

Acknowledgment The authors would like to acknowledge the support of French Institute of Advanced Mechanics (IFMA), Clermont-Ferrand, France in assuring full access to the robotic facilities for experimental researches in this work. The work was partially supported by Romanian project SMART 72197/1.10.2008.

8. References Benea, R. (1996). Contribution à l’étude des robots pleinement parallèles de type 6R–RR–S. PhD thesis. Université de Savoie, France. Briot, S. & Bonev, I. (2008). Accuracy analysis of 3-DOF planar parallel robots, Mechanism and Machine Theory, Vol. 43, pp. 445–458. Cui, H.; Zhu, Z.; Gan, Z. & Brogardh, T. (2008). Error modeling and accuracy of TAU robot, In: Parallel Manipulators. New Developments, Ryu, J.H. (ed.), pp. 269-286, Vienna: ITech Education and Publishing, ISBN 978-3-902613-20-2. Fichter, E.F. (1986). A Stewart Platform–Based manipulator: General Theory and practical construction. The International Journal of Robotics Research, Vol. 5, no.2, pp. 157-185. Gogu, Gr. (1995). Optimisation of the industrial robot kinematics modelling (in Romanian). PhD thesis. Transilvania University of Braşov. Gogu, Gr.; Coiffet, Ph. & Barraco, A. (1997). Représentation des déplacements des robots, Ed. Hermes, Paris. Lee, J.; Duffy, J. & Keler, M. (1999). The optimal quality index for the stability of in–parallel planar platform devices. Journal of Mechanical Design, Vol.121, pp. 15-20. Merlet, J.P. (1990). Les robot parallèles, Ed. Hermes, Paris. Merlet, J.P. & Gosselin, C.M. (1991). Nouvelle architecture pour un manipulateur parallèle à six degrées de liberté. Mechanisms and Machines Theory, Vol. 26, No. 1, pp. 77–90. Neagoe, M. (2001). Contributions to the study of industrial robot precision (in Romanian). PhD thesis. Transilvania University of Brasov. Paul, R. (1981) Robot manipulators: mathematics, programming and control. The MIT Press. Pott, A. & Hiller, M. (2008). Kinematic Modeling, Linearization and First-Order Error Analysis, In: Parallel Manipulators. Towards New Applications, Wu, H. (ed.), pp. 155174, I-Tech Education and Publishing, ISBN 978-3-902613-40-0. Toyama, S. & Hatae, S. (1989). Error analysis of platform type of robot by means of screw algebra, Proceedings of the 20th ISIR Int. Symp. on Industrial Robots, pp. 635-642, Tokio, Japan. Wu, J. & Yin, Z. (2008). A Novel 4-DOF Parallel Manipulator H4, In: Parallel Manipulators. Towards New Applications, Wu, H. (ed.), pp. 405-448, Vienna: I-Tech Education and Publishing, ISBN 978-3-902613-40-0.

98

Computational Intelligence and Modern Heuristics

7

Effective knowledge acquisition by means of teaching strategies Marek Woda

Wroclaw University of Technology Poland 1. Introduction

Despite of the fact that e-learning already proved its great usefulness, it still suffers from many childlike deficiencies. We can point among the other things, the lack of the coherent vision for learning process accomplishment, practical guidelines how to organize consistent learning content (Woda & Walkowiak, 2004). Due to these disadvantages e-learning is being perceived ambiguously and usually incorrectly implemented in real life e-systems that finally lead to limitation of its reliability. Usually, in real world, theory and practice are not on the par, exactly same situation can be observed in the theory of e-learning and its implementations. In the e-learning, whole stress was put on the learning theory, and there are no restrictions or even practical guidelines present in field of technology used for implementations, best implementation practices, which in many cases has negative influence on newly developed e-systems (Woda & Walkowiak, 2008). Currently most of the academics, and schoolteachers noticed the need of standardization and rationalization of this type of teaching. Not infrequently, knowledge acquisition process in e-learning has a way worse effectiveness than traditional one that takes place in a conventional teaching – and this is especially noticeable in case of the students that are not very proficient in computers. Main cause of this phenomenon is inability to select essential information by students from so-called “informational noise” and the lack of the direct contact with a tutor and/or learning materials have been prepared in inappropriate way by the course organizers. Focusing only on a knowledge delivery problem in e-learning systems, we can find course material selection with relation to expertise level of a particular student as a main shortcoming. The other, also major drawback is an immense burden for the course administrators, when number of course students exceeds a few dozen or so. Then a number of people who are involved in planning, control, scheduling of classes and students’ progress assessment, increases in proportion to a number of students. Effectiveness of knowledge acquisition is a function of different forms, methods and variety of teaching methods (Nichols, 2008). Nowadays, in a computerization era, teaching effectiveness in esystems may increase, only when appropriate steps are undertaken along with an application of classical forms and methods teaching, leading to a construction of suitable teaching structures, which are integrated with latest technologies combined with the formal ways of presentation (Woda, 2008).

100

Computational Intelligence and Modern Heuristics

Teaching technology is an interdisciplinary disciple about education efficiency, pursuing the answer for the question, how to educate quicker, faster, better and less expensive in a defined conditions. Interdisciplinary nature of the disciple relies on that, it draws its subject of the interest and research methods other disciples like computer science, cybernetics, theory of systems and communication theories.

Fig. 1. Teaching material represented as a learning tree In traditional method learning, human factor is responsible for entire teaching process (Woda & Walkowiak, 2004). This may lead to situations (and usually does), like loss of control over learning progress (due to e.g. mental fatigue of a teacher, badly adapted teaching materials to the students’ skills), which finally results in loss of student’s attention and willingness to learn (Mghawish & Woda & Michalec, 2006). Nonetheless, excluding completely “human factor” is not possible, and at the same time from a teaching perspective very disadvantageous factor (Al-Dahoud & Walkowiak & Woda, 2008), and it is tightly connected with students feeling of being alienated and which lead to a loss of the control. The remedy for the presented above distant learning inconveniences and a way to improve efficiency of knowledge acquire process could be application of intelligent system that is driven by smart teaching algorithms (Baloian & Motelet & Pino, 2003, Capusano & Marsella & Salerno, 2000, Dinosereanu & Salomie, 2003, Mghawish & Woda & Michalec, 2006).

Effective knowledge acquisition by means of teaching strategies

101

2. Teaching strategies Teaching strategies are algorithms that support navigation within a learning path, during knowledge acquisition process by a student. These algorithms are responsible for directing students on the suitable lesson’s variants in the nodes of the learning path (Woda, 2006). Appropriate assignment made by the strategies is being made in a way that teaching material is being selected to suit more adequately student’s expertise level, and what is more his ability to learn, according to the criteria. Navigation algorithms have to lead a student or a group of students thru learning path from first node (starting phase), to another, until end of learning path is reached. State after starting phase is named adaptive state (phase) and it lasts to the end of knowledge acquisition process.

Fig. 2. A learning path with selected nodes (lesson’s variants) in the learning tree Teaching algorithm operation is based on the learning adaptation mechanisms, where knowledge absorption process is being scrutinized on the fly, and historical data, about lessons learnt and scores achieved, are being taken into account in order to assign precise and adequate learning material in a next node from the learning path to achieve best possible (optimal) knowledge acquisition. Learning adaptation means drawing conclusions out of gathered historical data, and then based on them learning “parameters” tuning to match optimal learning pace and form, for a student. Main task for an adaptive teaching algorithm is to assign each student from a group, appropriate lesson difficult variant (in current the lesson), in order to achieve best result (a note) in a competence test after the lesson. Best result, means required /set by the teacher at the beginning of learning process, usually it is a combination of notes (after a lesson) and credit points (received upon completion of the most difficult lesson variant in a node).

102

Computational Intelligence and Modern Heuristics

Additionally, at the beginning of learning process one should pay special attention to verify student’s initial expertise level, to assign base lesson variant in a start node (starting phase) to match student capability to learn. If the initial expertise is not detected well, it will affect learning efficiency later on, during learning progress (in the adaptive phase). During the adaptive phase, one of available learning strategies, is being assigned to a student, based on his initial expertise level so when an inaccurate strategy is chosen, it greatly affects learning progress and its effectives. Lesson difficulty factor is correlated with student’s ability to comprehend given material.

3. Learning progress verification The verification of the knowledge acquisition during duration of a course, takes place after each lesson, in a competence test. It is essential, in order to go to next lesson to firstly pass based current lesson variant (usually least complicated one) in a node. Each student is assessed in a competence test and note is being assigned afterwards and it defines knowledge absorption factor for a lesson. Upon a lesson completion on a specific difficulty factor (lesson variant) student receives a number of credit points, which reflects how the variant was elaborated. Note’s value that qualifies student to pass to next lesson is strictly dependent on his base expertise level and lesson’s variant, which defines also current competence test.

Fig. 3. A multi node of the learning path – variants of the lesson. The validation of the knowledge acquisition is being done for both a student and for a group (all course participants), after each lesson passed in a learning path (within competence test). Validation procedure has to substantiate (according to taken assumptions), that in fact, strategies of the learning adaption influence on improved knowledge acquisition during learning phase.

Effective knowledge acquisition by means of teaching strategies

103

The notes received in a competence test, serve as an input data for the strategies. Historical data are taken from student’s records (notes, received in previously passed competence tests along with a sum of credit points), which constitute a base for the final assessment of learning progress quality. In order to be eligible to pass to a next lesson, student must, at least, pass thru easiest material variant in a current lesson node (current competence test must be completed with an acceptable note value) and receiving, at least, one credit point.

4. Learning effectiveness One of the most common e-learning problems is lower than expected effectiveness of the knowledge absorption. Author, in this chapter focused mainly on that issue. Author concentrated on increasing learning effectiveness by means of teaching strategies. It comes down to best teaching algorithm assignment either for a student or a group from a set of possible adaptive learning strategies. Each strategy ought to meet to given down below criteria. These strategies ought to organize learning process in a way that best suits student’s abilities to learn and finally improve the results (grades and credits) received. Main criterion, taken into consideration during assessment of learning effectiveness improvement process, is striving after receiving best possible grades and at the same time, more credits. These are two opposing criteria. Receiving best grades could be achieved in an easy way by assignment in every node easiest lesson variant, however it would result in receiving less credits than expected afterwards. Receiving greatest number of credits is only possible once the most elaborated lesson variants are being assigned and finished in the node. Aforementioned facts allow us to clearly asses the quality of teaching strategies. Other characteristics that prove usefulness of a particular strategy is a total number of students (from a test group) that received at least a half possible credit points during entire learning process. Grades average in a learning process is a supporting factor. Strategies also strive after fulfilling given below assumptions: minimize number of students that cannot comply the optimal learning postulate (minimize drop out from learning process – do not complete competence tests on a required level) detect students with incorrectly detected initial expertise level (especially in a start phase) “exploit“ best students – to assign them more difficult lesson’s variants As a criteria for starting phase strategies quality assessment following have been taken into account: a percentage of students that have received more than half credits possible, number of grades scored above group’s average, group grade’s average, lowest and highest student grade’s average As a criteria for adaptive phase strategies quality assessment following have been taken into account: an expertise level distribution changes in time (compare before and after learning), sum of credits after learning process is over, student/group grade’s average, number of students that finished learning with more than half possible credits to earn

104

Computational Intelligence and Modern Heuristics

Each strategy, should meet at least one of aforementioned (main) criteria. Besides each strategy have its own characteristics e.g. global optimum strategy strives to find strategies should be able to find students that are more talented (once found – they are being assigned more difficult / challenging task / lessons). Each strategy acts in a different way based on a student profile detected during learning process. For example minimalistic strategy, strives after assignment students easiest possible lesson’s variant in a learning path.

6. Results All the results have been received in a simulated environment. There were three groups of students, each 100 student, tested. Each group had different base student’s expertise level (refer to the Table 1.) and it was served with the same amount of the lesson nodes (50). Simulation was divided in two phases: start phase and adaptive one, where groups were governed by the learning strategies.

Table 1. Results for different teaching strategies received after adaptive phase – learning process is over. Grades [0-1]. Starting phase. All the students from the test groups were treated by the start phase strategies, and the experiment data were evaluated against optimal teaching criteria postulate – namely striving after receiving top grades with most possible credits earned and to match difficulty factor with student’s expertise level.

Effective knowledge acquisition by means of teaching strategies

105

Primitive strategy did not prove its usefulness, failing to match second part of requirements (differentiate students base on their expertise level). This strategy was not intended to be applied ever, in any system, and the results received after primitive strategy application, constituted a base for comparison. Random strategy, in spite of the fact that partially (since only some of the students were assigned lesson’s difficulty factors that match their expertise level) met the requirements, gave good results (mainly in the group where most of the students were good learners – no matter what lesson’s difficulty they were faced to they were able to cope with). Proportional lesson difficulty variant assignment done by a proportional third strategy turned to be most efficient (against each test group), both in terms of average grades scored and credits earned. Thanks to it, more than 60% of students received better scores than expected. Adaptive phase. Best strategy assessed in this phase should meet criteria described in section 4. In order to quickly sum up discussion of received results, if the priority was to get most students that passed learning path with higher than a group credit points average number, one should focus on Reference strategy or Optimal one. Focusing only average of grades maximization the most suitable are reference conservative and reference ones. Most balanced strategy that matches all criteria is optimal strategy. It equally good strives after grades and credits scored during entire learning path.

7. Conclusion Quick and unfortunately chaotic e-learning systems development, created an urgent demand to adjust teaching process to the individual characteristics. Along with the growth of interests around distant learning, numerous systems are being implemented, yet again without orientation on a learner. The systems do not base on any student model or what is even worse do not adjust pace of learning to the student needs. This paper was intended to provide a solution to ease teaching material delivery, in an personalized way, that match student‘s expertise level. Based on a defined model of learner – system has to ascribe a teaching strategy that will facilitate knowledge acquisition during entire learning process. Tested, in two phases (start and adaptive) strategies allowed to increase learning effectiveness, portrayed by the results (increased number of credit points and average of grades) gathered in the table 1. Future work will encompass experiments with real students as a part of working production e-learning system.

8. References Al-Dahoud A., Walkowiak T., Woda M. (2008). Dependability aspects of e-learning systems. Proceedings of International Conference on Dependability of Computer Systems, DepCoS RELCOMEX 2008, pp. 73-79, Szklarska Poręba, June 2008, IEEE Computer Society [Press], Los Alamitos Baloian N., Motelet O., Pino J. (2003) Collaborative Authoring, Use and Reuse of Learning Material in a Computer-integrated Classroom, Proceedings of the CRIGW 2003, 2003, France.

106

Computational Intelligence and Modern Heuristics

Bacopo A. (2004) Shaping Learning Adaptive Technologies for Teachers: a Proposal for an Adaptive Learning Management System, Proceedings of the 4th IEEE International Conference on Advanced Learning Technologies, 2004. Capusano N., Marsella M., Salerno S. (2000) An agent based Intelligent Tutoring System for distance learning. Proceedings of the International Workshop on Adaptive and Intelligent Web-Based Education Systems, ITS, 2000 Dinosereanu M., Salomie I. (2003) Mobile Agent Solutions for Student Assessment in Virtual Learning Environments, Proceedings of the IAWTIC, 2003, Austria Kavcic A. (2000) The role of user models in adaptive hypermedia systems, Proceedings of the Electrotechnical Conference MELECON, 2000. Mghawish A., Woda M., Michalec P. (2006). Computer aided composing learning material into primary learning tree. Proceedings of the WSEAS International Conferences: The 5th WSEAS International Conference on Applied Computer Science (ACOS '06) pp. 8085, Hangzhou, April 2006, WSEAS 2006 Hangzhou. Nichols, M. (2008). E-Learning in context. http://akoaotearoa.ac.nz/sites/default/files/ ng/group-661/n877-1---e-learning-in-context.pdf Woda M. (2008). Zarządzanie procesem uczenia w komputerowych systemach wspomagających nauczanie. Proceedings of the Nowe Media w Edukacji 2008: zastosowania technik informacyjnych i komunikacyjnych w kształceniu. pp. 147-155, Wrocław, September 2008, Oficyna Wydawnicza Politechniki Wrocławskiej, Wrocław Woda M., Walkowiak T. (2008). Wybór optymalnej platformy zdalnego nauczania. Proceedings of Komputerowe wspomaganie dydaktyki : materiały krajowej konferencji naukowej. pp. 119-122, Łódź, June 2008, Wyższa Szkoła Informatyki, Łódź Woda M. (2006). Conception of composing learning content into learning tree to ensure reliability of learning material. Proceedings of International Conference on Dependability of Computer Systems. DepCoS - RELCOMEX 2006, pp. 374-381, Szklarska Poręba, May 2006, IEEE Computer Society [Press], Los Alamitos Woda M., Walkowiak T. (2004). Internet - a modern e-learning medium. Proceedings of the Second International Conference on Soft Computing Applied in Computer and Economic Environments ICSC 2004. pp. 205-214. Kunovice, Czech Republic, January 2004. Evropsky Polytechnicky Institut, Kunovice.

8

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm M. Reza Mashinchi and Ali Selamat

Faculty of Computer Science and Information System, Universiti Teknologi Malaysia Abstract In this chapter, we propose a new method based on genetic algorithms (GAs) for fuzzy

artificial neural network (FANN) learning to improve its accuracy in measuring customer service satisfaction for establishing a principle of economical survival in business area. The analysis is based on linguistic values received from customer service satisfactions index where fuzzy modeling, as one of possible ways, has been used to process these values. Here, customer's satisfaction is considered as a key factor for the analysis based on his/her preference as the scope of qualification for organization service. In the proposed method, we have introduced two-phase GAs-based learning for FANNs. In the neural network, inputs and weights are assumed to be fuzzy numbers on the set of all real numbers. The optimization ability of GA is used to tune alpha-cuts boundaries of membership functions for fuzzy weights. Here, five alpha-cuts are used for tuning as other researchers have used, which in two-phase method; two of them are for first phase and three of them for second phase. This leads to obtain better results for FANN. Comparisons are included with another method using two data sets to give some analyses to show the superiority of proposed method in term of generated error and executed time. From the experiments, the proposed approach has been able to predict quality values of possible strategies according to customer's preference. Finally, the ability of this system in recognizing customer's preference has been tested using some new assumed services. Key words: Weight adjusting; placement definition; shape definition.

1. Introduction Selling rate of the products for an enterprise, either be a business centers or producer factories, is an important issue in the commercial competitions. The higher rate an enterprise gains the more merit for survival is proved. Earlier researches have shown that the increase or decrease of this rate highly depends on customers' view to that commercial enterprise [1,2]. Such that; the more ability of satisfying the customer an enterprise has, the more

108

Computational Intelligence and Modern Heuristics

success in competition with other competitors it will achieve. As customers' satisfaction plays a key role in an enterprise survival, the analysis of his/her opinion is vital to make the next enterprise decisions. In general, customer's satisfaction is not only a multi-variable issue but also is based on linguistic values. On the other hand, linguistic values, which have been used here, are intrinsically known as vague values [3]. The two mentioned multivariability and linguistic-variability make the problem to be more complex and system evaluation would be more difficult. This is while; strategic goals of the enterprises are determined according to the results of this analysis, and thus, the evaluation of customer opinion is an essential issue [2,4,5]. A suitable evaluation significantly helps an enterprise to emerge its defined strategic goals. This needs to have a well understanding of customer's opinion in order to be able of approximating his/her satisfactory degree. Customer's satisfaction is satisfactory degree of the customer, which he/she is purchasing commodities [4]. Some indicators measure this degree. The indicators and its parameter are non-standard, and thus, each enterprise has been established an index according to its own customer's view [4,5]. Some indices, which are well known among the others, are American Customer Satisfaction Index (ACSI), Swedish Customer Satisfaction Index (SCSI), European Customer Satisfaction Index (ECSI) and Korean Customer Satisfaction Index (KCSI) [4,5]. It is worth mentioning that the parameters of indicator must be visible to customers' view [5]. According to the literature, three basic aspects of independency, comparability and feasibility must be considered [1, 2, 4]. In this chapter, indices have been used that supports the mentioned aspects employed by other researchers. One analysis ways of utilized indices, which is based on linguistic values received from the customer, is fuzzy modeling [3]. It is used in many papers for evaluation of the customer's satisfaction in the e-commerce, where the data of this area is utilized in this chapter. Various methods have been considered based on this modeling. Some researches have been used AHP [6-8] or either fuzzy cognitive maps [9]. Recently, some literatures have been appeared based on the combination of linguistic variables modeled by triangular fuzzy values [4,5]. Following aforementioned researches, this chapter aims to propose an evaluator system that would be able to recognize customer's preference. Meanwhile, it uses the benefits of fuzzy modeling in customer satisfactory evaluation. This mentioned aim of constructing a system that recognizes customer's preference has not been considered by the other authors. This is the difference of this research with the others'. In order to construct such a system proposing an approach, as the major part of the system, that can consider two terms of the learning and linguistic values is essential. This approach needs to follow learning process based on linguistic values in addition of having the ability to learn from customer's opinions. This task is carried out using Fuzzy Artificial Neural Networks (FANNs), which are know as soft computing techniques. FANNs are able to learn from fuzzy values that are considered as linguistic terms. Meanwhile, the Genetic Algorithm (GA) has been used to obtain higher efficiency for FANN. GA is able to find the optimum of designed network. Finally, each enterprise will be able to have the benefits of using such constructed system as follows:

To evaluate possible strategies according to its current customer's tastes, in order to increase success rate; To analyze a strategy, regardless its business level, using the least number of the customers;

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

109

To decrease the risk exists behind the decision making for its next organizational changes; To emerge the importance of business ethics, followed by customer-orientation principle.

It is necessary to have an evaluator system with a higher accuracy to decrease strategic decision risks and increase the success rate by evaluating possible strategies based on the preferences of the least customers. Such that; the higher accuracy of the system there is, the better organizational changes are obtained. Thus, it increases the success rate while emerges the business ethics. Knowing that an enterprise needs organizational changes to be adaptable with customer preferences, having a higher accuracy system rises to be necessity as listed below:

to have more effective participation from customer side; to have more participant customers; to decrease the computational costs of evaluator system

Each enterprise needs to consider more effectively customers' opinion to have better understanding of their preferences, and thus, having a precise data is necessary for organizational evaluation. This is while; having variety opinions are necessary in covering broader preferences to have an assured organizational evaluation. Thus, the evaluator system is able of better approximation for new possible preferences. However, obtaining to points 1 and 2 comes with increase of the complexity, such that; the increase of data preciseness causes less accuracy for evaluator system, while the increase in number of data being processed causes less accuracy too. Therefore, a system that is able of dealing with such data environment is necessary. However, the ideal is such an evaluator system that is able to increase the accuracy while complexity increases. Such system, which this chapter proposes, enables an enterprise to have more assured evaluation in less time. Based on previous research [10], this chapter follows to improve the last results. Therefore, the aim of proposed system is to improve the previous one using two phases for evaluator system. This system, called two- phased GA-based FANN, utilizes the abilities of GA to find a suitable status of evaluator system in order to improve the accuracy [11]. The first and second phases are called place-definition and shape-definition, respectively. Alphacuts (α-cuts), which here the fuzzy numbers are processed based on them, are defined and applied in each phase separately. The abilities of such evaluator, relative to complexity increase, on overcoming aforementioned complexities are:

to decrease the predicted outcome error; to increase the processing speed;

Finally, using such system will enable an enterprise to:

Have the ability of processing more realistic data received from the customer; Have more precise evaluation and suitable strategy approximation to increase the success rate in less time;

110

Computational Intelligence and Modern Heuristics

Decrease the risks behind the organizational changes in terms of increasing preferences reality; Survive ethical principle of customer-orientation by customer participation.

The organization of this chapter, which aims at proposing such customer evaluator system using GA-based FANN, is as follows. First, in next section the concept of customer evaluator system has been explained. Then, how to model the current problem using fuzzy modeling has been explained in its first subsection. In the sequel, proposed evaluator systems using GA-based FANN and its basic concepts have been explained in its second subsection. Proposed system is implemented in following section and the results have been analyzed in its two subsections. In these subsections, first, the performance validation of proposed system has been tested using new inputs and then the ability of system has been shown. Finally, a conclusion for the chapter is given. Two datasets, which are used in this chapter, have been presented in appendix.

2. Customer Evaluator System Customer evaluator system defines service quality of an organization based on customer's satisfactory degree [4]. The structure of such evaluator system is shown in Figure 1. The outcome of system is based on customer's opinion given to the system, which is represented by the parameters of some indicators. The preciseness of outcome exploration depends on the preciseness of modeled opinion expressed from the customer and the processing ability of evaluator system based on them. Customer's opinion

Specialist believe

Customer

Fuzzy values

Quality score

Evaluator System

Fig. 1. The structure of the evaluator system Hence, it is essential to have the parameters for evaluator system. They are presented by some indicators indices so-called customer satisfactory indices [4,5]. As aforementioned, these indices are not standard and this chapter uses the one that has been employed in [4]. The parameters of these indices are shown in Figure 2.

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

111

Fig. 2. A customer satisfactory indices and its parameters The parameters in Figure 2 are represented in the form of linguistic variables that are accounted as vague values [3]. As these parameters are the inputs of system, they are necessary to be prepared for processing. To this end, fuzzy modeling is utilized in such way that first; the input values are fuzzified, then they are fed to FANN system to be processed. More details of these procedures are described in the following subsections, respectively. Fuzzy modeling: Fuzzy set theory, which was proposed in 1965 [12], is utilized in many application areas by solving their corresponding problems [13,14,15,16]. This is due to the ability of fuzzy logic, with its modeling capability, in facing with complex environments [17,18]. In such environments like agriculture, market prediction, risk assessment [19], image processing etc. [16] the linguistic variables can be used. Customer satisfactory evaluation, the dealt issue in this chapter, is among such environments; this is because the process of this evaluation is based on information steamed from linguistic terms. In addition, having many linguistic variables causes this problem to be as a multi-variable issue. The latter one makes the problem to be more complex and, thus, a suitable modeling is much more needed for a better problem solving. Therefore, in this chapter, fuzzy modeling is considered to process linguistic terms that are received from the customer in order to construct evaluator system. Fuzzy variables, which are used in the evaluator system, are modeled linguistic terms received from the customer. Modeling a fine linguistic term needs more α-cuts as the preciseness of a fuzzy value depends on them. On the other hand, increasing the number of α-cuts causes the evaluation process to be more complex. However, the proposed approach in this chapter, which has a particular view to fuzzy modeling, considers this issue solvable. The evaluator system uses the fuzzy variables for the inputs and parameters of the evaluator neural network. It is noticeable for the fuzzy values utilized in the input that; the transformation of these values depends on experts' interpretation over linguistic terms,

112

Computational Intelligence and Modern Heuristics

which is done through specialists' believes as illustrated in Figure 1. However, the idea of this chapter is concentrated on evaluator system only and, thus; obtained fuzzy values have been used based on other researchers' results [5]. Here, five α-cuts are used for fuzzy valued parameters of evaluator system to explore fuzzy numbers in its evaluation process. To be self-contained, we quote some fuzzy arithmetic on fuzzy numbers where a fuzzy ~ ~ number, A , defined as below: A {( x, A~ ( x )) | x , A~ : [0,1]}

~ A {( x, A~ ( x)) | x , A~ : [0,1]}

(1)

is a continues function and is set of all real numbers. Α-cuts zero, one and ~ middle of fuzzy number A are deified as below:

such that

A~

~ ~ A1 Core( A) {x | A~ ( x) 1},

(2)

~ ~ A0 Support ( A) {x | A~ ( x) 0},

(3)

~ ~ A middle ( A) {x | A~ ( x) }, (0,1).

(4)

Henceforth, all fuzzy numbers are assumed convex, such that all middle (.) are intervals in

and their Support (.) are bounded. Two basic operations of the summation and multiplication over triangular fuzzy numbers, which are used in proposed evaluator system, are defined as follows [18]:

~ ~ ~ ~ ~ ~ A ( k ) B ( k ) AL ( k ), AR ( k ) BL ( k ), BR ( k ) ~ ~ ~ ~ AL ( k ) BL ( k ), AR ( k ) BR ( k )

~ ~ ~ ~ ~ ~ A ( k ) B ( k ) AL ( k ), AR ( k ) BL ( k ).BR ( k ) ~ ~ ~ ~ ~ ~ ~ ~ min ( AL ( k ).BL ( k ), AL ( k ).BR ( k ) , max AR ( k ).BL ( k ), AR ( k ).BR ( k )

Evaluator neural network: Neural learning networks are among soft computing techniques [20]. Learning networks of the fuzzy-type, so-called FANNs, were proposed after crisp neural networks [21]. FANNs have attracted many researchers in consequent of acquiring improvements and knowing their abilities in solving the complex problems. In this chapter, FANNs have been used as the main part of customer evaluator system. Evaluation outcome is processing result from the system based fed inputs. This network is able to learn customer's preference by its training process. Training process is based on the fuzzy values resulted from linguistic value transformations. Therefore, trained networks will be able to predict customer's satisfactory degree based on current preference, such that; it allows to

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

113

approximate the goodness of new organizational changes to be applied. The steps of constructing such system, as a general case of customer evaluator neural network, are explained in Algorithm 1. Algorithm 1: The steps of the evaluator neural network

1 begin 2 initialize ( ) 3 4 5

x create ( ) while terminationCriterion( ) do x new update (x)

6

if f (x new ) f (x) then x x new

7

return x

8 end Step 2 of Algorithm 1 initiates the indicators with fuzzy values. Then, it creates possible solutions by aiming to find a suitable network and x will be replaced with that. Reproduction process, as the update function and finding the better solution, is repeated until it meets the termination criterion. A criterion for a near-optimal solution is;

f (x new ) f (x)

(5)

where f is fitness function, |||| is distance norm and is a given pre-assumed positive small number as error bound. Model structure of Fuzzy Artificial Neural Networks (FANN): This subsection presents the structure of FANN [22]. Here, FANN of type-1 is used as the major part of evaluator system, in which the input is fuzzy value and the output is crisp [17,23,22,11]. Input neurons have been used to learn customer's preference based on the α-cuts defined in [3]. The structure of such FANN, using two inputs a general architecture, is shown in Figure 3.

114

Computational Intelligence and Modern Heuristics

~ b1

~ X1

~ w 1,1

v~1, N t

~ w 1, N s

~ bNt

~ Oq

~ bN s

v~N s , N t

~ X2

~ w N f ,Ns

Fig. 3. A three-layer fuzzy neural network architecture The first layer is input layer which does not have any computational unit. In the second N ,N , shows fuzzy weights connecting neuron Nf in the layer, the matrix of fuzzy weights, w f s first layer to neuron Ns in the second layer. The vector of fuzzy biases, b Ns , shows fuzzy bias of the neuron, Ns, in the second layer. Similarly, in the third layer, fuzzy weight matrix, v Ns ,N t , shows fuzzy weights connecting neuron Ns in the second layer to the neuron Nt in the third layer. The form of activation function of the neurons in the first and second layers, which is utilized in this chapter, is sigmoid function given as below: f (x)

~

1

(6)

1 e x

Fuzzy output of In t erN , for the second layer of this architecture is as follows: s

N f (Agg N ), Inter s s

Ns 1, 2..., n

(7)

N is defined as follows: where Ns is the number of neurons in the second layer and Agg s N Agg s

Nf

X w i

ij

b j ,

j 1, 2..., Ns

(8)

i 1

is fuzzy input. The third layer where Nf is the number of neurons in the first layer and X values from the neurons in second layer through their fuzzy weight v . receives the Agg Therefore, the output is given by:

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

O q

115

Ns

Agg v

j jq ,

(9)

q 1, 2..., N t

j1

, is fuzzy outcome. Then, the where Nt is the number of neurons in the third layer and O q

outcome is considered as a crisp value when the distance is measured with the ideal. Genetic algorithm based FANN: Genetic algorithm (GA) was first proposed in 1975 [24]. It is categorized as an optimization and soft computing technique, which is based on the principles of natural evolution [20,21]. Here, optimization process holds on defined generations, where GA is used toward improving the efficiency of FANN. The idea of using GA for improving FANN was first proposed in 1994 [21].

1

0

1

0

1

1

0

0

1

1

1

0

0

0

1

0

1

0

0

0

1

0

1

0

0

1

1

(a)

0

0

1

1

0

1

0

1

1

0

0

1

0

1

0

0

0

1

1

1

0

(b) Fig. 4. (a) A typical crossover, (b) A typical mutation Here, this idea, called GA-based FANN, is used as a validated method [25]. In GA-based FANN, genetic algorithm tries to find network parameters in an optimized manner. Such that tuning the weights and biases is an aim to find suitable network through optimization process of this algorithm. To this end, firstly, the parameters of network are simulated as the genes on a genome, then crossover and mutation functions, as a reproduction process, follow optimization process in an evolutionary way. These two functions have been illustrated as in Figure 4. Depicted (a) of this figure illustrates crossover function in which the gene of segmented parts of genomes are replaced. The mutation, which holds after the crossover in GA optimization process, has been illustrated in part (b) of this figure; in which the values of some defined genes are changed randomly. In this chapter, an improved case of previously used GA-based fuzzy neural network in last research is used as major part of the system as shown in Figure 5 [11]. In comparison, the previous system was using one phase GA-based FANN abbreviated as 1P-GBLM-ES; while this system uses two phase GAbased FANN abbreviated as 2P-GBLM-ES shown in Figure 6.

116

Computational Intelligence and Modern Heuristics

Customer's opinion

1P-GBLM-ES

Specialist believe

Quality score

Fuzzy values

Customer

One phase

Fig. 5. general structure of 1P-GBLM-ES Customer's opinion

2P-GBLM-ES

Specialist believe

Custome

Fuzzy values

Phase I

Quality score

Phase II

Fig. 6. general structure of 2P-GBLM-ES Figure 5 explains the steps of constructing 2P-GBLM-ES. This system is designed in two phases of place-definition and shape-definition; in which a suitable place for fuzzy value is obtained in steps two to eight using support and core of the fuzzy numbers and a suitable shape using middle in steps nine to sixteen [11].

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

117

Algorithm 2: The steps of the 2P-GBLM-ES

1 begin 2 P GBLM 2 begin phase I 3 initialize ( ) 3 x1 create ( ) 4 5

while terminationCrite rion ( ) do xnew update ( x1)

6

if f ( xnew ) f ( x ) then x1 xnew

7 8 9 10

return x1 end phase I begin phase II initialize usin g x1 boundaries ( )

11

x2 create ( )

12 13

while terminationCrite rion ( ) do xnew update ( x 2)

14

if f ( xnew ) f ( x) then x2 xnew

15

return x2

end phase II 17 end 2 P GBLM 16

Here in the implementations, heuristic and uniform models have been used for the crossover and mutation, respectively. It is noticeable that; here GA as an optimization technique is a lateral part of major FANN in evaluator system.

3. Implementation And Results Earlier, an approach were proposed to construct a customer satisfactory evaluator system based on the frame of Figure 6 using Algorithm 2. In this section, proposed approach is implemented to construct this evaluator system; a three-layer GA-based FANN with seven neurons are used to construct 2P-GBLM-ES. In order to have a higher accuracy for 2PGBLM-ES, suitable allotments of learning generations for first and second phases are found. To emerge the superiority of proposed system in comparisons, another customer satisfactory evaluator system has been constructed based on the frame of Figure 5 using Algorithm 1. In this order, a three-layer GA-based FANN consisting of seven neurons have been used to construct 1P-GBLM-ES. The architecture of the networks are designed such that considers the simplicity and less complexity for the network. Two datasets are used to test the implementation; utilized datasets have been generated based on indicators data of [5], where customer's opinions have been shown based on pre-assumed indicators. Then, computed gap has been computed as the difference between expected value and satisfaction

118

Computational Intelligence and Modern Heuristics

value of customer's opinion from current status. The comparisons results for 1P-GBLM and 2P-GBLM are in terms of generated error and executed time; initially, the first subsection shows the validity of proposed approach by comparison, then the ability of proposed evaluator system has been shown in the second subsection using dataset of Table 4. Validation of Proposed Evaluator System: This subsection shows performance validity of constructed 1P-GBLM-ES and 2P-GVLM-ES for approximating the gap in a small-scaled data environment using the dataset of Table 3 in Appendix. The results are supposed to be a direction of showing the capability for these systems in a more complex environments to show the superiority for 2P-GBLM-ES, which is presented in the next subsection. Regarding the validation test, two customer's opinions are considered that are almost in contradiction to each other as shown in Figure 7 based on Table 3. Then, neural evaluator system is trained to approximate the gap based on new data. The learning processes were done in the same conditions for initial population using size 50 for 200 generations, while the average of received errors were obtained in terms of 100 times iteration. In order to construct 2PGBLM-ES, suitable allotments of learning generations for first and second phases were obtained as shown in Figure 10. Then, trained networks were tested for the validation; two new customers who had a middle opinion were evaluated, as shown in Table 1. One of the customers has an exactly middle opinion, where the gap resulted from his/her is exactly 5.1. The other customer has almost a fair opinion, where the gap resulted from his/her is a value around 5.1. Regarding the validation for 1P-GBLM-ES, the average of generated error for trained system was 0.03 in 16-second time. The results of approximation for this training were obtained as shown in figures 8 and 9 for first and second test customers, respectively. Customer Indicator Product Service Network System Expected Gap

#1

#2

(4.55,4.67,4.76,4.89,5.1,5.3,5.44,5.53,5.65) (4.5,4.61,4.74,4.85,5.1,5.35,5.46,5.58,5.7) (3.6,3.91,4.2,4.5,5.1,5.7,5.99,6.29,6.6) (3.9,4.15,4.39,4 62,5.1,5.59,5.81,6.04,6.3) 5.1

(4,4.21,4.4,4 61,5,5.37,5.6,5.77,6) (4,4 28,4.54,4.8,5.3,5.77,6.02,6.23,6.5) (3.6,4.02,4.43,4.88,5.6,6.04,6.19,6.32,6.5) (4,4.09,4.16,4.24,4.5,4.96,5.25,5.51,5.8) 5.1

Table 1. Fuzzy values of the indicators for validation test.

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

119

Black color for tested customer 1

0.75

Y

0.5

0.25

0 2

3

4

5

Gap of customer 1

6

X

7

8

Gap of customer 2

Fig. 7. Depicted opinions of the customers trained by evaluator systems

Black color for tested customer 1

Y

0.75

0.5

0 25

0 2

3

4

5

6 X

7

Predicted Gap

Fig. 8. Predicted gap for the first test customer using trained 1P-GBLM-ES

8

120

Computational Intelligence and Modern Heuristics

▬ tested customer i

1

Y

0.75

0.5

0.25

0 2

3

4

5

6 X

7

8

Predicted Gap

Fig. 9. Predicted gap for the second test customer using trained 1P-GBLM-ES Figures 8 and 9 shows the values obtained from evaluating new assumed customers are 5.04 and 5.05, which are as expected. Therefore, the results show that customer-preference orientation of 1P-GBLM-ES in approximating customer's opinion works properly for a small-scaled environment. Then, regarding the validation for 2P-GBLM-ES, the same initial population was used to train the system as for 1P-GBLM-ES. In order to have a suitable accuracy for this system, different cases of allotments were tested to find a suitable case for each phase of the system. The result in Figure 10, which is the average of 100 iteration, shows the best-case belonging to 90% and 10% for the first and second phases, respectively. Then, 2P-GBLM-ES was trained using best-case allotment, where the average of overall generated error for the trained system obtained 0.002 in 11-second time. Figures 11 and 12 shows the outcome received form trained 2P-GBLM-ES using best-case allotment in evaluating new assumed customers that is 5.1 and 5.25 as expected.

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

Overall error

Fist phase error

121

Second phase error

0.04 0.035

ERROR

0.03 0.025 0.02 0.015 0.01 0.005 0 90 %

-1 0%

80 %

-2 0%

80 %

-2 0%

40 %

-6 0%

50 %

-5 0%

40 %

-6 0%

30 %

-7 0%

20 %

-8 0%

10 %

-9 0%

ALLOTMENT

Fig. 10. Different cases of allotments for first and second phases of 2P-GBLM-ES using dataset of Table 3.

Black color for tested customer 1

Y

0.75

05

0.25

0 2

3

4

5

6 X

7

Predicted Gap

Fig. 11. Predicted gap for the first test customer using the trained 2P-GBLM-ES

8

122

Computational Intelligence and Modern Heuristics

i

▬ tested customer t

1

Y

0.75

0.5

0.25

0 2

3

4

5

6 X

7

8

Predicted Gap

Fig. 12. Predicted gap for the second test customer using the trained 2P-GBLM-ES The obtained results of figures 8, 9, 11 and 12 in this subsection, validate the performance of both 1P-GBLM-ES and 2P-GBLM-ES in approximating the gap. However, 2P-GBLM-ES showed to have less error in a less execution time. Ability of evaluator system: In this subsection, the ability of 1P-GBLM-ES and 2P-GBLM-ES are analyzed in approximating the gap based on customer's opinion, in which more of them are exist in a more complex environment. The importance of this analysis is to show the approximation ability of both evaluator systems which are based on more available preferences. This makes resulted outcome to be more reliable for the enterprise and, thus, more assured strategic decisions could be taken. Here, ten customers data are utilized, which have been shown in Table 4 of Appendix. Learning behaviors are analyzed based on variation percentage of error decrease using different populations, in order to show the ability of constructed systems in learning data. The results of learning process for 1P-GBLM-ES and 2P-GVLM-ES, using 500 generation and three different population sizes of 50, 200 and 500, have been shown in figures 13 and 15. Figure 11, which illustrates the learning behavior of 1P-GBLM-ES, shows that the variation rate of generated error keeps to its stability before the last generation just after achieving to its high value; this happens by passing a high decrement. Starting point of this, which is a threshold of convergence decrement to the optimum, happens in the 51st generation at the 10% of the 500 training generations. Vertical dashed-line shows this threshold in Figure 11, which the general status of suitable evaluator system is found. However, suitable evaluator system is defined after the threshold that needs ability of learning method in finding precise values. According to achieved threshold, it is possible to say in a pessimistic way that the ability of constructed system in learning the data of Table 6 and utilized populations is in the interval (0.0054-ε <error

III

Computational Intelligence and Modern Heuristics

Edited by

Al-Dahoud Ali

In-Tech

intechweb.org

IV

Published by In-Teh In-Teh Olajnica 19/2, 32000 Vukovar, Croatia Abstracting and non-profit use of the material is permitted with credit to the source. Statements and opinions expressed in the chapters are these of the individual contributors and not necessarily those of the editors or publisher. No responsibility is accepted for the accuracy of information contained in the published articles. Publisher assumes no responsibility liability for any damage or injury to persons or property arising out of the use of any materials, instructions, methods or ideas contained inside. After this work has been published by the In-Teh, authors have the right to republish it, in whole or part, in any publication of which they are an author or editor, and the make other personal use of the work. © 2010 In-teh www.intechweb.org Additional copies can be obtained from: [email protected] First published February 2010 Printed in India Technical Editor: Goran Bajac Cover designed by Dino Smrekar Computational Intelligence and Modern Heuristics, Edited by Al-Dahoud Ali p. cm. ISBN 978-953-7619-28-2

V

Preface The chapters of this book are collected mainly from the best selected papers that have been published in the 4th International conference on Information Technology ICIT 2009, that has been held in Al-Zaytoonah University/Jordan in the period 3-5/6/2009. The other chapters have been collected as related works to the book’s topics. “Heuristics are criteria, methods, or principles for deciding which among several alternative courses of action promises to be the most effective in order to achieve some goal - Pearl 1984 The term computational intelligence has become increasingly fuzzy, as the words “intelligent” and “smart” are used for everything from clever design of cell phones, appliances, computers, to pet robots, cars, and missiles. This collection of chapters will take its readers on a stunning voyage of computational intelligence heuristics research and applications. Computational intelligence techniques, ranging from neural networks, fuzzy logic, via genetic algorithms to support vector machines, case based, neighborhood search techniques, ant colonies, and particle swarm optimization are effective approaches with applications where problem domain knowledge exists. Clearly the use of heuristic is one time honored form of an information based strategy to circumvent the learning process. Modern heuristics criteria, methods represent a set of principles that though may not guarantee, are in practice proven to lead to “good quality” solutions or methods for deciding which among several alternative courses of action promise to be the most effective in order to achieve a specified goal. Collection of chapters of this book will elaborate different ideas in support of quantitative modeling heuristics on suite of applications including Computational Intelligence & Modern Heuristics in: Artificial Neural Network, Cryptography, Encryption, Dependability Evaluation, E-learning, GIS, Modeling, Optimization Problem, Security, Cryptosystems, Social process Design, Web, and Web Architectures.

Al-Dahoud Ali

VI

Dr. Al-Dahoud, is an associated professor at Al-Zaytoonah University, Amman, Jordan. He took his High Diploma form FON University Belgrade 1986, PhD from La Sabianza1/Italy and Kiev Polytechnic/Ukraine, on 1996. He worked at Al-Zaytoonah University since 1996 until now. He worked as visiting professor in many universities in Jordan and Middle East, as supervisor of master and PhD degrees in computer science. He established the ICIT conference since 2003 and he is the program chair of ICIT until now. He was the Vice President of the IT committee in the ministry of youth/Jordan, 2005, 2006. Al-Dahoud was the General Chair of (ICITST-2008), June 23–28, 2008, Dublin, Ireland (www.icitst.org). He has directed and led many projects sponsored by NUFFIC/Netherlands: His hobby is conference organization, so he participates in the following conferences as general chair, program chair, session’s organizer or in the publicity committee: - ICITs, ICITST, ICITNS, DepCos, ICTA, ACITs, IMCL, WSEAS, and AICCSA Journals Activities: Al-Dahoud worked as Editor in Chief or guest editor or in the Editorial board of the following Journals: Journal of Digital Information Management, IAJIT, Journal of Computer Science, Int. J. Internet Technology and Secured Transactions, and UBICC. He published many books and journal papers, and participated as keynote speaker in many conferences worldwide.

VII

Contents Preface 1. Services net modeling for dependability analysis

V 001

Wojciech Zamojski and Tomasz Walkowiak

2. Service based information systems analysis using task-level simulator

017

Tomasz Walkowiak

3. Modelling equipment deterioration vs. maintenance policy in dependability analysis

029

Jarosław Sugier and George J. Anders

4. Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

043

Fredrick Mtenzi

5. Modelling Access Control with Dynamic Role Binding

061

Al-Dahoud Ali and Dr.K.Chitra

6. On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

075

Mircea Neagoe, Dorin Diaconescu, Codruta Jaliu, Sergiu-Dan Stan, Nadia Cretescu and Radu Saulescu

7. Effective knowledge acquisition by means of teaching strategies

099

Marek Woda

8. Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

107

M. Reza Mashinchi and Ali Selamat

9. A Variation of Particle Swarm Optimization for Training of Artificial Neural Networks

131

Masood Zamani and Alireza Sadeghian

10. Resilient Back Propagation Algorithm for Breast Biopsy Classification Based on Artificial Neural Networks

145

Fawzi M. Al-Naima and Ali H. Al-Timemy

11. SIMD Architecture Approach to Artificial Neural Networks Realisation Jacek Mazurkiewicz

159

VIII

12. Smart RFID Security, Privacy and Authentication

175

Mouza A. Bani Shemaili, Chan Yeob Yeun and Mohamed Jamal Zemerly

13. Security and Privacy of Intelligent VANETs

191

Mahmoud Al-Qutayri, Chan Yeun and Faisal Al-Hawi

14. New Classification of Existing Stream Ciphers

219

Khaled Suwais and Azman Samsudin

15. Intelligent Exploitation of Cooperative Client-Proxy Caches in a Web Caching Hybrid Architecture

241

Maha Saleh El Oneis, Mohamed Jamal Zemerly and Hassan Barada

16. Smart Web Based Programming Contests Management Tool

255

Ahmed Bentiba, Mohamed J. Zemerly and Mohamed Al Mansoori

17. Heuristics of social process design

265

Gilbert Ahamer

18. Heuristics and pattern recognition in complex geo-referenced systems

299

Gilbert Ahamer, Adrijana Car, Robert Marschallinger, Gudrun Wallentin and Fritz Zobl

19. Complexity of Instances for Combinatorial Optimization Problems

319

Jorge A. Ruiz-Vanoye, Ocotlán Díaz-Parra, Joaquín Pérez-Ortega, Rodolfo A. Pazos R. Gerardo Reyes Salgado and Juan Javier González-Barbosa

20. Dependability Evaluation Based on System Monitoring Janusz Sosnowski and Marcin Król

331

1

Services net modeling for dependability analysis Wojciech Zamojski and Tomasz Walkowiak

Wroclaw University of Technology Poland

1. Introduction Network technologies are being developed for many years. Most of large technical systems could be seen as a kind of network, for example: information, transport or electricity distribution systems. Networks are modelled as directed graphs with nodes, in which commodities and information media are being processed, and arcs as communication links (telecommunication channels, roads, pipelines, conveyors, etc.) for media transportation. Resources of networks could be divided into two classes: services (functionality resources) and technical infrastructures (hardware and software resources). We propose to analyse the network system from the functional and user point of view, focusing on business service realized by a network system (Gold et al., 2004). Users of the network system realise some tasks in the system (for example: send a parcel in the transport system or buy a ticket in the internet ticket office). We assume that the main goal, taken into consideration during design and operation, of the network system is to fulfil the user requirements. Which could be seen as some quantitative and qualitative parameters of user tasks. Network services and technical resources are engaged for task realization and each task needs a fixed list of services which are processed on the base of whole network technical infrastructure or on its part. Different services may be realized on the same technical resources and the same services may be realized on different sets of technical resources. Of course with different values of performance and reliability parameters. The last statement is essential when tasks are realized in the real network system surrounded by unfriendly environment that may be a source of threads and even intentional attacks. Moreover, the real networks are build of unreliable software and hardware components as well. In (Avižienis et al., 2000) authors described basic set of dependability attributes (i.e. availability, reliability, safety, confidentiality, integrity and maintainability). This is a base of defining different dependability metrics used in dependability analysis of computer systems and networks. In this paper we would like to focus on more functional approach metrics which could be used by the operator of the network system. Therefore, we consider dependability of networks as a property of the networks to reliable process of user tasks, that is mean the tasks have to perform not only without faults but more with demanded performance parameters and according to the planned schedule.

2

Computational Intelligence and Modern Heuristics

We propose to concentrate the dependability analyse of the networks on fulfilling the user requirements. Therefore, it should take into consideration following aspects: specification of the user requirements described by task demands, for example certainty of results, confidentiality, desired time parameters etc., functional and performance properties of the networks and theirs components, reliable properties of the network technical infrastructure that means reliable properties of the network structure and its components considered as a source of failures and faults which influence the task processing, process of faults management, threads in the network environment, measures and methods which are planned or build-in the network for elimination or limitation of faults, failures and attacks consequences; reconfiguration of the network is a good example of such methods, applied maintenance policies in the considered network. As a consequence, a services network is considered as a dynamical structure with many streams of events generated by realized tasks, used services and resources, applied maintenance policies, manager decisions etc. Some network events are independent but other ones are direct consequences of previously history of the network life. Generally, event streams created by a real network are a mix of deterministic and stochastic streams which are strongly tied together by a network choreography. Modelling of this kind of systems is a hard problem for system designers, constructors and maintenance organizers, and for mathematicians, too. It is worth to point out some achievements in computer science area such as Service Oriented Architecture (Gold et al., 2004; Josuttis, 2007) or Business Oriented Architecture(Zhu & Zhang, 2006) and a lot of languages for network description on a system choreography level, for example WS-CDL (Yang et al., 2006), or a technical infrastructure level, for example SDL (Aime et al., 2007). These propositions are useful for analysis of a network from the designer point of view and they may been supported by simulation tools, for example modified SSF.Net simulator (Zyla & Caban, 2008), but it is difficult to find a computer tools which are combination of language models and Monte Carlo (Fishman, 1996) based simulators. The chapter presents a step to a creation of a verbal and formal model of a net of services. It presents a generic approach to modelling performability (performance and reliability) properties of the services net. The Petri Nets will is used for the task realization process modelling. Moreover, an example of service net– the discrete transport system analysed by an event-driven simulator is presented.

2. Service network – overview We can distinguish three main elements of any network system: users, services and technical resources. As it presented in the Figure 1 users are generating tasks which are being realized by the network system. The task to be realized requires some services presented in the system. A realization of the network service needs a defined set of technical resources. In a case when any resource component of this set is in a state "out of order" or "busy" then the network service may wait until a moment when the resource component

Services net modeling for dependability analysis

3

returns to a state "available" or the service may try to create other configuration on the base of available technical resources. Therefore, following problems should be taken into consideration:

RESOURCES

SERVICES

TASKS IN

OUT

FIFO Mapping A TASK SERVICES

into

Mapping A SERVICE into RESOURCES

THREATS

Fig. 1. Task mapping on business services and technical resources description and mapping a service net on existed net resources for each moment of its using; a prognoses process of the service net behaviour in a real life conditions – definition and selection of measures; finding relations between measures/criteria and functional, performance and reliability parameters of the service net; evaluation methods of choose measures of the service net; decision process of maintenance organization - decision steps as a reaction on appeared events, specially on threats; definition of measures and criteria of decision steps - risk of threats, and evaluation of decision risk and its cost. An illustration of problems connected with functional – dependability modelling of services networks is shown in Figure 2.

3. Functional – dependability models The ST model (State - Transition model) is the most popular and useful methodology used in modelling of systems. The system is considered as a union of its hardware, management system and involved personnel (administrators, users, support services etc.), so the system states depend on the states of all these elements. The system transitions are consequences of events connected

4

Computational Intelligence and Modern Heuristics

with execution of system tasks and jobs, system faults and system reactions to them, incidents, attacks and system responses etc., i.e. system events are observable occurrences which change states of the system. Infrastructures Clients tasks requirements

Reactions

Threats

Service Infrastructure

System reactions functional maintenance

Functional Infrastructure

Attacks/Faults Metrics definitions permissible values

Technical Structure reactions elements maintenance

Technical Infrastructure

Failures/Faults Users

Designer/Organizer

FUNCTIONAL – DEPENDABILITY MODEL Fig. 2. Basic terms and a functional - dependability model of a services network (Zamojski, 2009) The functional – reliability model (Zamojski, 2005) of computer system SC is a configuration of hardware H, software SP, men M, management system (operating system) MS, tasks (functions) J and system events ES

SC H SP J M MS E S

(1)

The system events includes those connected with tasks realization, occurrence of incidents (faults, viruses, and attacks) and system reactions to them (hardware and information

Services net modeling for dependability analysis

5

renewals). The system events are very often described by their time parameters which are collected in so called a chronicle of the system. A functional configuration S C(i ) of the computer system is a set of hardware and software resources that are allocated to realize i-th task j (i ) ;

j

(i )

J SC(i ) SC

and SC(i ) H (i ) SP(i ) j (i ) M (i ) MS (i ) ES(i )

(2) (3)

where superscript (i) fix subsets of system resources needed for execution i-th task. A functional – reliability model in the system engineering is regarded as a structured representation of the functions, activities or processes, and events generated inside of the considered system and/or by its surroundings. The system events may be divided into two main classes: functional events and reliable (together with maintenance) events. In practice this classification is very often difficult to be made because a system reaction on an event may involve a lot of functional or/and maintenance reactions. Therefore, it is better to create one common class of functional–reliable events, so called performability events (Zamojski & Caban, 2006). Because of these reasons considered model of services network will be called performability model or functional-dependability model (Zamojski & Caban, 2007). If the functional – reliability model is built as the ST model then the set of the system states is determined by the states of all resources involved in tasks realized at the moment. The system resource allocations are dynamic, modified due to the incoming tasks, occurring incidents and system reactions (especially reconfiguration).

Fig. 3. Exemplar choreography

4. Formal model of a service net 4.1 A service net A services net is a system of business services that are necessary for user (clients) tasks realization process. The services net are built on the bases of technical infrastructure

6

Computational Intelligence and Modern Heuristics

(technological resources) and technological services which are involved into a task realization process according to decisions of a management system. The task realization process may include many sequences of services, functions and operations which are using assignment network resources - in the computer science this process of assignments and realization steps is called as a choreography. An example of choreography for web service is presented in Figure 3. The functional – dependability model of a services network has to consider specificity of the network: nodes and communication channels, the ability of dynamic changes of network traffic (routing) and reconfiguration, and all other tasks realized by the network. The service network could be defined as a tuple:

SNet J , BS , TR, MS , C , where:

J J (i ) ; i 1, 2, ... – a set of tasks generated by users and realized by the service network,

BS BS ( b ) ; b 1, 2, ... – a set of services which are available in the considered network,

(4)

TR TR ( r ) ; r 1, 2, ... – technical infrastructure of the network which consists of technical resources as machines/servers, communication links etc, MS – management system (for example - operating system),

C c t ; t 1, 2, ... – a network chronicle, defined by a set of all essential moments in a “life” of the network.

4.2 Tasks The task J (i ) is understood as a sequence of actions and works performed by services network in a purpose to obtain desirable results in accordance with initially predefined time (i ) (i ) schedule and data results. In this way a single task J (i ) J IN , J OUT

may be defined as an

(i ) ordered pair of so called input task J IN , which is described by the input parameters (i ) (postulated results and prognosis time schedule) and the corresponding output task J OUT

(real results and real time schedule). The input task is define as the triple: (i ) J IN R P( i ) , A( i ) , C P( i ) ,

(5)

where:

R P(i ) - postulated results of the i-th task execution,

C P(i ) - postulated chronicle of the task realization,

A(i ) A(i ) RP(i ) , C P(i )

- a sequence of actions and works necessary to obtain

postulated results in planned time.

Services net modeling for dependability analysis

7

The A (i ) may be described by a flowchart of actions and works, and its realization depends on an availability of network services and technical resources. The output task is define as the pair: (i ) (i ) (i ) , J OUT Rreal , , C real

(6)

where:

(i ) Rreal - real results of the i-th task execution,

(i ) C real - real chronicle of the task realization.

The postulated results and chronicles are defined with assumed tolerance intervals ( R P( i ) R P( i ) R P( i ) and C P( i ) C P( i ) C P( i ) ) and when the real results and chronicles are inside (i ) (i ) the intervals ( Rreal R P( i ) , R P( i ) and C real C P( i ) , C P( i ) ) then the task is assumed to be correctly realised.

4.3 Services The term service is understood as a discretely defined set of contiguously cooperating autonomous business or technical functionalities. Of course, a special mechanism to enable an access to one or more businesses and functionalities should be implemented in the system. The access is provided by a prescribed interface and is monitored and controlled according to constraints and policies as specified by the service description1. The service BS (b) is defined as a sequence of activities described by a set of capabilities (functionalities) (b) BS IN

F

(b) k ,

k 1,2,... , a set of demanded input parameters of data and/or media

(b) and a set of output parameters BS OUT :

BS ( b )

F

(b) k ;k

(b) (b) . 1, 2,... , BS IN , BS OUT

(7)

Because the services have to cooperate with other services than protocols and interfaces between services and/or individual activities are crucial problems which have a big impact on the definitions of the services and on processes of their execution. A service may be realized on the base of a few separated sets of functionalities

F

( b) k1 ,

F

k1 1,2,... ,

(b) k2 ,

k 2 1,2,... … with different costs which are the consequences of

using different network resources. 4.4 Technical infrastructures Hardware is considered as a set of hardware resources (devices and communication channels) which are described by their technical, performance, reliability and maintenance parameters. The system software is described in the same way. OASIS Organization for the Advancement of Structured Information Standards Home Page. http://www.oasis-open.org/home/index.php 1

8

Computational Intelligence and Modern Heuristics

4.5 Management system The management system of service network allocates the services and network resources to realized tasks, checks the efficient states of the services network, performs suitable actions to locate faults, attacks or viruses and minimize their negative effects. Generally the management system has two main functionalities: monitoring of network states and controlling of services and resources, creating and implementing maintenance policies which ought to be adequate network reactions on concrete events/accidents. In many critical situations a team of men and the management system have to cooperate in looking for adequate counter-measures, for instance in case of a heavy attack or a new virus. The maintenance policy is based on two main concepts: detection of unfriendly events (attacks, faults, failures) and network responses to them. In general the network responses incorporate the following procedures: detection of incidents and identification of them, isolation of damaged network resources in order to limit proliferation of incident consequences, renewal of damaged services, processes and resources. It is hard to predict all possible events (for example all new demands for a task realization) or incidents (for example failures, faults, attacks or an end of a renewal procedure) in the services network, especially it is not possible to predict all possible attacks or men faults, so system reactions are very often "improvised" by the management system, by its administrator staff or even by expert panels specially created to find a solution for the existing situation. The time, needed for the renewal, depends on the incident that has occurred, the system resources that are available and the renewal policy that is applied. The renewal policy is formulated on the basis of the required levels of system dependability and on the economical conditions (first of all, the cost of downtime and cost of lost achievements) (Zamojski & Caban, 2006; Zamojski & Caban, 2007). Maintenance policy is based on maintenance rules that are understood as chains of decisions about allocation of services and network resources (hardware, software, information and service staff) that are undertaken to keep the system operational after an incident. These rules are very often connected with small fragments of the system, for example; replacement of a machine (a processor) or communication links. These local operations may have impact on the whole network, e.g. if a communication channel is down for a few minutes, then rates of medium (data) traffic of the network may violently change (Zamojski & Caban, 2007). 4.6 Chronicles The set of system events is created by events connected with tasks realization, incidents occurrence (faults, viruses, and attacks) and system reactions (hardware and information renewals).

Services net modeling for dependability analysis

9

4.7 A process of the task realization The task realization process is supported by two-level decision procedures connected with selection and allocation of the network functionalities and technical resources. There are two levels of decision process: services management and resource management. The first level of decision procedure is connected with selection suitable services and creation a task configuration. Functional and performance task demands are the base for suitable services choosing from all possible network services. The goal of the second level of the decision process is to find needed components of the network infrastructure for each service execution and the next allocate them on the base their availability to the service configuration. If any component of technical infrastructure is not ready to support the service configuration then allocation process of network infrastructure is repeated. If the management system could not create the service configuration then the service management process is started again and other task configuration may be appointed. These two decision processes are working in a loop which is started up as a reaction on network events and (i ) is mapped on the accidences. On the beginning of a task realization procedure the task J IN

network services and a subset of services BS s( i ) necessary for the task realization according to (i ) BS s( i ) . Next, a demand of technical resources for its postulated parameters is created; J IN

each service realization is fixed: BS s( i ) Rn( i , s ) . In a real services network the same task is very often realized on the base of various service subsets and the same service may involved different technical resources. Of course, this possible diversity of task realization is connected with the flowcharts A(i ) and the availability of network resources is checking for each service. In this way a few task configurations service configurations, additionally described by appropriately defined cost parameters, may be fund for the i-th task realization.

5. The Petri net model Petri Nets (Zhou & Kurapati, 1999) are a powerful and often used modelling tool. They allow to represent two aspects of a modelled system static and dynamic (thanks to the token evolution). A common definition of the Petri net is formulating as a triple:

PN P, T , A

(8)

where: P - set of places that represent deterministic states of processes, tasks, services, resources etc. of the considered system. The places are often complemented by tokens that are modeled abilities of these places. T – set of transitions that represent net events characterized by conditions necessary to come them into firing. The transitions are often described by firing time and other probabilistic characteristics etc. A – set of arches (directed and inhibited) that models routes on which events represented by tokens are passed by the net.

10

Computational Intelligence and Modern Heuristics

t1-TASK PICK UP

P1-MANAGER

FIFO

SERVICES

P2-SERVICE SET

t4-TASK START

RESOURCES t2-SERVICE ALLOCATION

t3-RESOURCE VERIFICATION P3-FUNCTIONAL CONFIGURATION

t5-RENEWAL

P5CONFIGURATION FAULT

P4-TASK END

P4-TASK REALIZATION t5-RENEWAL Fig. 4. The Petri net model of a task realization in a services network

A state of the net, described by marking (tokens localization in the places) represents sufficient conditions for arising new events of a net’s life. Net’s events may be divided into many classes, for example functional, reliable or maintenance events, deterministic or probabilistic ones etc. The mention classification depends on assumed criteria. The Petri net model of the ith task realization ( J (i ) ) is shown in the Figure 4. It is assumed (i ) ) is taken from the stack of waiting tasks (transition t1 and its firing time the input task ( J IN

T(i1) ). The choice of the task may be based on the strategy FIFO (as it is illustrated on the Figure 2) and it is conditioned by ending of previously task (the transition t1 is guarded by inhibited arc from the place P6 (end of the task). The place P1 represents the management

Services net modeling for dependability analysis

11

process of mapping the input task into a set of necessary services ( BS (b ) ) and when the services are ready then the transition t2 is fired (time T( i2) ). After checking if the chosen services may be activated on the base of needed efficient technical resources then a functional configuration of the task (place P3) is created (transition t3 with time T( i3) ) and at this moment the manager may take a decision about start of the task process realization (transition t4). There is a build-in system of monitoring and detection of unfriendly accidences like faults and failures (place P5). When such unfriendly accidence is discovered then a renewal process of the functional configuration is started (transition t5 and renewal time T( i5) ) and the task realization process is broken (the inhibited input of the transition t6) till the end of renewal operations. The firing process of each transition is described by conditions (tokens in input places for the transition) which may occur with probabilities, for example a probability of a machine failure, and time duration of transition firing may be a probabilistic function, too. Of course a transition may be many times fired during a task realization, because net events may need to repeat bigger or smaller loops of the net. The Petri net model shown in the Figure 4 is reduced and presented only to show the main idea of the proposed modelling method which may be useful for evaluation of dependability measures of services networks. ) that is modelled as a stochastic timed Petri net with Real time of the ith task realization TJ(ireal k transitions and l loops and sub loops may be evaluated as: ) TJ( ireal

Pre

(i ) l

lL

1

Pr f k

(i ) T k ,l

1 T k ,l ,

(9)

where:

el( i ) 1 - an event (for example, a new task, an allocation a technical resource to the i-th task, an end of a renewal process etc.) which is started a loop or a sub loop in the Petri net model ascribed to the ith task realisation,

f T( ik),l 1 - an event; the k transition is fired during l loop connected with the i-th

task realization. Such dependability measures as a probability that the real time duration of the i-th task may be defined and evaluated on the base of the Petri net models as:

(i ) (i ) ) ) M Depend ( J IN ) Pr TJ( ireal TJ( iOUT .

(10)

6. Discrete transport system – service net case study An example of service net could be a DTSCNTT - Discrete Transport System with Central Node and Time-Table (Walkowiak et al., 2007). This is a simplified case of the Polish Post transport system. Following the definition (4) each elements of service net could be described as follows.

12

Computational Intelligence and Modern Heuristics

The business service (BS) provided the Polish Post and therefore DTSNTT service net is the delivery of mails. The technical infrastructure (TR) consists of a set of nodes placed in different geographical locations and set of vehicles and timetable. There are bidirectional routes between nodes marked by lines. There is distinguished one node called central mode. Mails are distributed among nodes by vehicles. Each vehicle is described by following functional and reliability parameters: mean speed of a journey, capacity – number of containers which can be loaded, reliability function and time of vehicle maintenance. Management system (MS) is defined by time table since vehicles distributing mails among system nodes operate according to the time-table exactly as city buses or intercity coaches. The time-table consists of a set of routes (sequence of nodes starting and ending in the central node, time of approaching each node in the route and the recommended size of a vehicle). The number of used vehicle, or the capacity of vehicles does not depend on temporary situation described by number of transportation tasks or by the task amount for example. It means that it is possible to realize the journey by completely empty vehicle or the vehicle cannot load the available amount of commodity (the vehicle is to small). Timetable is a fixed element of the system in observable time horizon, but it is possible to use different time-tables for different seasons or months of the year. To reduce the complexity of the model we have decided to model the containers not separate mails (Walkowiak & Mazurkiewicz, 2009). Therefore, the tasks (J) of sending mails is modelled as a random process of containers generation. Each generated container has a destination address. The central node is the destination address for all containers generated in the ordinary nodes. Where containers addressed to in any ordinary nodes are generated in the central node. The generation of containers is described by Poisson process. In case of central node there are separate processes for each ordinary node. Whereas, for ordinary nodes there is one process, since commodities are transported from ordinary nodes to the central node or in opposite direction. Postulated result of any task is to transport a container to the destination node within a given time limit. The process of any task realization could be described as follows. The container is generated in some node at a given time (according to Poisson process) and stored in the node waiting for the vehicle to be transported to the destination node. Each day a given time-table is realized, it means that at a time given by the time table a vehicle, selected randomly from vehicles available in the central node, starts from central node and is loaded with containers addressed to each ordinary nodes included in a given route. The loading is done in a service point. This is done in a proportional way. Since the number of service points is limited (parameter of the central node) and loading takes some time is there is no free service point vehicles has to wait in a queue. After loading the vehicle goes to a given ordinary node - it takes some time according to vehicle speed - random process and road length. After approaching the ordinary node the vehicle is waiting in an input queue if there is any other vehicle being loaded/unloaded at the same time. The containers addressed to given node are unloaded and empty space in the vehicle is filled by containers addressed to a central node. The operation is repeated in each node on the route and finally the vehicle is approaching the central node when is fully unloaded and after it is available for the next route. The process of vehicle operation could be stopped at any moment due to a failure (described by a random process). After the failure, the vehicle waits for a maintenance crew

Services net modeling for dependability analysis

13

(if it is not available due to repairing other vehicles), is being repaired (random time) and after it continues its journey (Walkowiak & Mazurkiewicz, 2009). As suggested in the introduction the simulator tool for analysing DTSCNTT service net was developed. The tool was adopting the event simulation approach, which is based on a idea of event, which could be described by time of event occurring, type of event (in case of DTSCNTT it could be a vehicle failure) and element or set of elements of the system on which event has its influence. The simulation is done by analyzing a queue of event (sorted by time of event occurring) while updating the states of system elements according to rules related to a proper type of an event. (Walkowiak et al., 2007) We proposed for the case study analysis an exemplar DTSCNTT based on Polish Post regional centre in Wroclaw. We have modelled a system consisting of one central node (Wroclaw regional centre) and twenty two other nodes - cities where there are local post distribution points in Dolny Slask Province. The length of roads were set according to real road distances between cities used in the analyzed case study. The intensity of generation of containers for all destinations were set to 4,16 per hour in each direction giving in average 4400 containers to be transported each day. The vehicles speed was modelled by Gaussian distribution with 50 km/h of mean value and 5 km/h of standard deviation. The average loading time was equal to 5 minutes. There were two types of vehicles: with capacity of 10 and 15 containers. The MTTF of each vehicle was set to 2000. The average repair time was set to 5h (Gaussian distribution). (Walkowiak & Mazurkiewicz, 2009) The simulation time was set to 100 days and each simulation was repeated 10.000 times. We have calculated the dependability measure defined by (10), the probability that the duration time of a task (delivery of some container) will be longer then a given time limit using Monte-Carlo approach (Fishman, 1996). The achieved results are presented in Figure 5.

Fig. 5. The probability of containers to be transported within a given limit time

7. Conclusion We have given a verbal and formal model of a service net. The formal model consists of a tuple mathematical model and the Petri Nets one. We hope that the proposed Petri net model will be very useful in the synthesis process of the service net. Of course there are a lot

14

Computational Intelligence and Modern Heuristics

problems with building the Petri net model of the real services net in which exist a large number of services and technical resources that are mapped to many concurrent realized tasks. We have also presented an exemplar case study of service net a discrete transport system service net – a simplified case of Polish Post transport system. It was analysed by a usage of a discrete transport system simulator. We plan to develop a simulation tool for a generic service nets with a functionality similar to presented discrete transport system simulator or BS.SSF simulator (Walkowiak, 2009) together with graphical tool for modelling and simulation. We also plan to use high level languages like for examples Business Process Modeling Notation (White & Miers 2008) for a graphical representation for specifying business processes in a workflow. We hope that it could be possible to map BPMN into a Petri net model or a general purpose service net simulator allowing to perform a service net dependability analysis.

8. References Aime, M.; Atzeni, A.; Pomi, P. (2007). Ambra - Automated Model-Based Risk Analysis, Proceedings of the 3rd International Workshop on Quality of Protection, pp. 43-48, Alexandria, ACM, New York Avižienis, A. ; Laprie, J. ; Randell, B. (2000). Fundamental Concepts of Dependability. Proceedinggs of 3rd Information Survivability Workshop, Boston Fishman, G. (1996). Monte Carlo: Concepts, Algorithms, and Applications, Springer-Verlag, New York Gold, N.; Knight, C. ; Mohan, A.; Munro, M. (2004). Understanding service-oriented software. IEEE Software, Vol. 21, 71– 77 Josuttis, N. (2007). SOA in Practice: The Art of Distributed System Design, O’Reilly Walkowiak, T. (2009). Information systems performance analysis using task-level simulator, Proceedings of International Conference on Dependability of Computer Systems, pp. 218225, Brunow, IEEE Computer Society Press, Los Alamitos Walkowiak T. ; Mazurkieiwicz, J. (2009), Analysis of critical situations in discrete transport systems, Proceedings of International Conference on Dependability of Computer Systems, pp. 364-371, Brunow, IEEE Computer Society Press, Los Alamitos Walkowiak, T. ; Mazurkiewicz, J.; Kaplon, K. (2007). Functional analysis of discrete transport system realized by SSF simulation tool. Advances simulation of systems. Proceedings of the XXIXth International Autumn Colloquium, pp. 103-108, Sv. Hostyn, MARQ, Ostrava White, S. A Miers, D. (2008). BPMN Modeling and Reference Guide, Future Strategies Inc., Lighthouse Pt Yang, H.; Zhao, X.; Qiu, Z.; Pu, G; Wang, S. (2006). A Formal Model for Web Service Choreography Description Language (WS-CDL). Proceedings of the IEEE international Conference on Web Services, IEEE Computer Society, Washington Zamojski, W. (2005). Functional-reliability model of computer-human system. Computer engineering, pp. 278-297, Eds. Wojciech Zamojski, WKL, Warszawa (in Polish) Zamojski, W. (2009). Dependability of services networks. Proceedings of the Third Summer Safety and Reliability Seminars, pp. 387-396, Gdnask-Sopot, Polish Safety and Reliability Association, Gdansk

Services net modeling for dependability analysis

15

Zamojski W.; Caban D. (2006). Introduction to the dependability modelling of computer systems. Proceedings of International Conference on Dependability of Computer Systems, pp. 100 – 109, Szklarska Poreba, IEEE Computer Society Press, Los Alamitos Zamojski, W.; Caban, D. (2007). Maintenance policy of a network with traffic reconfiguration. Proceedings of International Conference on Dependability of Computer Systems, pp. 213 – 220, Szklarska Poreba, IEEE Computer Society Press, Los Alamitos Zhu, J.; Zhang, L. Z. (2006). A Sandwich Model for Business Integration in BOA (Business Oriented Architecture). Proceedings of the 2006 IEEE Asia-Pacific Conference on Services Computing, pp. 305-310, IEEE Computer Society, Washington Zhou, M.; Kurapati, V (1999) Modeling, Simulation, & Control of Flexible Manufacturing Systems: A Petri Net Approach. World Scientific Publishing Zyla, M.; Caban, D. (2008). Dependability Analysis of SOA systems. Proceedings of International Conference on Dependability of Computer Systems, pp. 301–306, Szklarska Poreba, IEEE Computer Society Press, Los Alamitos

16

Computational Intelligence and Modern Heuristics

2

Service based information systems analysis using task-level simulator Tomasz Walkowiak

Wroclaw University of Technology Poland 1. Introduction Complex information systems (CIS) are nowadays the core of a large number of companies. And therefore, there is a large need to analyze various system configuration and chose the optimal solution during design and even operation of the information system. In this paper we propose a common approach (Birta & Arbez, 2007) based on modelling and simulation. The aim of simulation is to calculate some performance metrics which should allow to compare different configuration taking into consideration technical (like performance) and economical (like price) aspects. There is a large number of event driven computer network simulators, like OPNET, NS-2, QualNet, OMNeT++ or SSFNet/PRIME SSF(Liu, 2006; Nicol et al., 2003). However, they are mainly focused on a low level simulation (TCP/IP packets). It is obvious that increasing the system details causes the simulation becoming useless due to the computational complexity and a large number of required parameter values to be given. On the other hand a high level of modelling could not allow to record required data for system measure calculation. Therefore, the level of system model details should be defined by requirements of the system measure calculation (Walkowiak, 2009). Modelling and simulation based on TCP/IP packets level results in a large number of events during simulation and therefore in a long simulation time. It is a very good approach if one plans to analyze the influence of the traffic on the network performance. However in modern information systems high speed local networks are used. In a result for a large number of information systems (except media streaming ones) the local network traffic influence on the whole system performance is negligible. Therefore, we want to propose a novel approach based on a higher level then TCP/IP packets. We will focus on a business service realized by an information system (Gold et al., 2007) and functional aspects of the system, i.e. performance aspects of business service realized by an information system (like buying a book in the internet bookstore). We assume that the main goal, taken into consideration during design and operation of the CIS, is to fulfil the user requirements, which could be seen as some requirements to perform a user tasks within a given time limit. Therefore, the presented in the chapter modelling and simulation will be focused on a process of execution of a user request, understand as a sequence of task realised on technical services provided by the system.

18

Computational Intelligence and Modern Heuristics

The structure of the chapter is as follows. In Section 2, a model of information system is given. In Section 3, information on simulator implementation is given, next exemplars information system is analysed and simulation results are presented. It is followed by information on graphical user interface. Finally, there are conclusions and plans for further work.

2. Computer information system modelling As it was mentioned in the introduction we decided to analyze the CIS from the business service point of view. Generally speaking users of the system are generating tasks which are being realized by the CIS. The task to be realized requires some services presented in the system. A realization of the system service needs a defined set of technical resources. Moreover, the services has to be allocated on a given host. Therefore, we can model CIS as a 4-tuple (Walkowiak, 2009):

CIS Client, BS , TI , Conf

Client BS

Conf

– – – –

(1)

finite set of clients, business service, a finite set of service components, technical infrastructure, information system configuration.

During modelling of the technical infrastructure we have to take into consideration functional aspects of CIS. Therefore, the technical infrastructure of the computer system could be modelled as a pair:

TI H , N

(2)

where: H - set of hosts (computers); N – computer network. We have assumed that the aspects of TCP/IP traffic are negligible therefore we will model the network communication as a random delay. Therefore, the N is a function which gives a value of time of sending a packet form one host (vi) to another (vi). The time delay is modelled by a Gaussian distribution with a standard deviation equal to 10% of mean value. The main technical infrastructure of the CIS are hosts. Each host is described by its functional parameters: server name (unique in the system), host performance parameter – the real value which is a base for calculating the task processing time (described later), set of technical services (i.e. apache web server, tomcat, MySQL database), each technical service is described by a name and a limit of tasks concurrently being executed. We have distinguished a special kind of technical service witch models a load balancer (Aweya et al., 2002). A load balancer is described by its name and a limit of tasks (like all technical services) and additionally by a list of technical services, it sends requests to.

Service based information systems analysis using task-level simulator

19

The BS is a set of services based on business logic, that can be loaded and repeatedly used for concrete business handling process (i.e. ticketing service, banking, VoIP, etc). Business service can be seen as a set of service components and tasks, that are used to provide service in accordance with business logic for this process (Michalska & Walkowiak, 2008). Therefore, BS is modelled as a set of business service components (BSC), (i.e. authentication, data base service, web service, etc.), where each business service component is described a name, reference to a technical service and host describing allocation of business service component on the technical infrastructure and a set of tasks. Tasks are the lowest level observable entities in the modelled system. It can be seen as a request and response form one service component to another. We have distinguished two kinds of task: local and external. If request is send to service component and this component is able to respond without asking other service component than this tasks is assumed to be local. If request is send to service component and this component must ask another service component for response then than this tasks is assumed to be external. Each task is described by its name, task processing time parameter and in case of external task by a sequence of task calls. Each task call is defined by a name of business service component and task name within this business service component and time-out parameter. System configuration (Conf) is a function that gives the assignments of each service components to a technical service and therefore to hosts since a technical set is placed on a given host. In case of service component assigned in a configuration to a load balancing technical service the tasks included in a given service component are being realised on one of technical services (and therefore hosts) defined in the load balancer configuration. The client model ( Client ) consist of set of users where each user is defined by its allocation (host name), replicate parameter (number of concurrently ruing users of given type), set of activities (name and a sequence of task calls) and inter-activity delay time (modelled by a Gaussian distribution).

Fig. 1. Task and business services interaction

20

Computational Intelligence and Modern Heuristics

Summarising, a user initiate the communication requesting some tasks on a host, it could require a request to another host or hosts, after the task execution hosts responds to requesting server, and finally the user receives the respond. Requests and responds of each task gives a sequence of a user task execution as presented on exemplar Fig. 1. The user request execution time in the system is calculated as a sum of times required for TCP/IP communication and times of tasks processing on a given host. The request is understood as correctly answered if answers for each requests in a sequence of a user task execution were given within defined time limit (time-out parameter of each request in BS model) and if a number of tasks executed on a given technical service is not exceeding the limit parameter (parameter of TI model). The user request execution time in the system is calculated as a sum of times required for TCP/IP communication (modelled by a random value) and times of tasks processing on a given host. The task processing time is equal to the task processing time parameter multiplied by a number of other task processed on the same host in the same time and divided by a the host performance parameter. Since the number of tasks is changing in simulation time, the processing time is updated each time a task finish the execution or a new task is starting to be processed. with some execution time Let 1 , 2 ,..., e be a time moments when a task ( t ij )

( executiontime t ij ) is starting or finishing processing on a host h allocation (t ij ) . Let

number( h, ) denotes a number of task being processed at time on host h. It is not taking into account tasks which requests tasks on other hosts and waits for responses. Therefore, the time when task

t ij finishes its execution e has to fulfill a following rule: e

k 2

k

k 1

performance( h ) executiontime t ij number( h, k 1 )

.

(3)

Having above notation the task processing time is equal to: pt ( t ij ) e 1 .

(4)

3. Task-level simulator Once a model has been developed, it is executed on a computer. It is done by a computer program which steps through time. One way of doing it is so called event-simulation. Which is based on a idea of event, which could is described by time of event occurring, type of event (in case of CIS it could be host failure) and element or set of elements of the system on which event has its influence. The simulation is done by analyzing a queue of event (sorted by time of event occurring) while updating the states of system elements according to rules related to a proper type of event. As it was described in section 2, the network connections are modelled as a random delays. Therefore, we were not able to use mentioned in the introduction computer network simulators but we have to develop a new one (Walkowiak, 2009). The event-simulation

Service based information systems analysis using task-level simulator

21

program could be written in general purpose programming language (like C++), in fast prototyping environment (like Matlab) or special purpose discrete-event simulation kernels. One of such kernels, is the Scalable Simulation Framework (SSF) (Nicol et al., 2003) which is a used for SSFNet (Nicol et al., 2003) computer network simulator. SSF is an object-oriented API - a collection of class interfaces with prototype implementations. It is available in C++ and Java. SSF API defines just five base classes: Entity, inChannel, outChannel, Process, and Event. The communication between entities and delivery of events is done by channels (channel mappings connects entities). For the purpose of simulating CIS we have used Parallel Real-time Immersive Modeling Environment (PRIME) (Liu, 2006) implementation of SSF due to much better documentation then available for original SSF. We have developed a generic class (named BSObject) derived from SSF Entity which is a base of classes modeling CIS objects: host and client which models the behavior of CIS presented in section 2. Each object of BSObject class is connected with all other objects of that type by SFF channels what allows communication between them. In the first approach we have realized each client as a separated object. However, in case of increasing of the number of replicated clients the number of channels increases in power of two resulting in a large memory consumption and a long time for initialization simulation objects. Therefore, we have changed the implementation, and each replicated client is represented by one object. The developed simulator is called SSF.BS (from SSF – the simulation framework and BS – business service).

4. Computer information system simulation analysis 4.1 First case study For testing purposes of presented CIS system model (section 2) and developed extension of SSF (SSF.BS, section 3) we have analysed a case study information system. It consists of one type of client placed somewhere in internet, firewall, three hosts (Figure 2), three technical services and three business service components. An interaction between a client and tasks of each business service component is presented on UML diagram in Figure 1. The CIS structure as well as other functional parameters were described in a DML file (see example in Figure 3). The Domain Modeling Language (DML) (Nicol et al., 2003) is a SSF specific text-based language which includes a hierarchical list of attributes used to describe the topology of the model and model attributes values.

22

Computational Intelligence and Modern Heuristics

Fig. 2. Case study system overview Net [ Host [ Name DNS-Server Service [ Name DNSService Limit 110 LocalTask [ Name GetDnsAddress Time 0.01]]] … Client [ Name Client Replicate 1000 Sleep 10.0 Activity [ Name WWWRequest TaskCall [ Host DNS-Server Service DNSService Task GetDnsAddress ] … Fig. 3. Exemplar CIS description in DML file In the presented information system we have observed the response time to a client request in a function of number of clients. The achieved results are presented in Figure 4.

Service based information systems analysis using task-level simulator

23

Fig. 4. Response time to users requests in a function of number of concurrent users 4.2. Simulator performance analysis Next, we have tested the SSF.BS simulator performance and scalability. We calculated the time of running one batch of simulation of the exemplar IS described in previous chapter on a 2.80 GHz Intel Core Duo machine. We have compared the performance results with PWR.SSF.Net simulator (Zyla & Caban 2008) developed in Java. The CIS model used in PWR.SSF.Net differs from SSF.BS mainly in a method of calculation a task performance time and therefore the results of simulating cannot be compared. As it could be noticed on Figure 5 & 6 the presented in the paper simulator (SSF.BS) simulates the CIS in shorter time, and a difference with PWR.SSF.Net is increasing with an increase of number of users. For a number of concurrent users less than 300 (Figure 5) the SSF.BS is 10 times faster than PWR.SSF.Net. The main reason of this difference is the level of modelling details. In both cases simulators perform similar number of events per second. However, PWR.SSF.Net simulates the transmission of TCP/IP packets whereas SSF.BS works on higher level the tasks and therefore in case of presented here approach the number of events is smaller. Not, only computational complexity of SSF.BS is lower than PWR.SSF.Net but also the usage of memory for SSF.BS is much smaller. For a case study example the SSF.BS requires 1.8 Mbytes for 0.1 client requests per second upto 4.8 Mbytes for a 1000 concurrent users. In case of PWR.SSF.Net it is hard to state the memory usage due to the memory management techniques in Java. This is the problem of enlarging the difference of speed between analysed simulators. For number of clients more then 300 (Figure 6) Java based PWR.SSF.Net starts to have problems with memory management and large number of processing time is used by JVM garbage collector (even Java based simulator was started 1 Gbyte memory limit). It results in 1000 faster simulation of SSF.BS in case of 1000 concurrent users.

24

Computational Intelligence and Modern Heuristics

Fig. 5. Simulation time (time of running the simulator) for case study system in a function of number of users (till 300 concurrent users)

Fig. 6. Simulation time (time of running the simulator) for case study system in a function of number of users (for more than 300 users) 4.3. Second case study – load balancer A very common technique of achieving height availability of their services in CIS is using a load balancer. Load balancer allows a traffic distribution among replicated services on a server farm. Therefore, the most common load balancing algorithm – round robin (Aweya, et al. 2002) - has been implemented in the SSF.BS.

Service based information systems analysis using task-level simulator

Fig. 7. Load balancer case study system overview

Fig. 8. Task and business services interaction for case study

25

26

Computational Intelligence and Modern Heuristics

For the case study analysis of CIS with load balancing we propose an exemplar service system illustrated in Fig.7 . Essentially the test-bed system consists of two server farms A (included host ,,hostA1”-,,hostA3”) and B (included host ,,hostB1”-,,hostB3”) and a database server. Both farms are connected with LoadBalancer as a gate to internet users. For the case study, let us imagine, that this system is responsible for some Web Application that allows searching the database and executes a Tomcat based application. Fig. 8 shows choreography of this service, based on three service components. WWW service component has been replicated on hosts: A1-A3, Application of on hosts: B1- B3 and Database is not replicated is placed on one host. For this scenario two configuration has been proposed: first (I) standard and second (II) with all hosts with doubled performance parameter. The achieved simulation results, the response time to user requests in a function of number of concurrent users is presented in Figure 9. The simulation time was set to 1000 seconds. The limit of concurrent tasks for all technical services was equal to 1000, whereas the interactivity delay time equal to 1 s. As it could be expected the response time for configurations II is almost twice shorter than for configuration I. However, if we slightly change configuration II, setting the performance of database host equal to the value used in configurations I the resulting response time will be very similar to results of configuration I. These small experiment shows the ability of simulator to compare performance of different system configurations.

Fig. 9. Response time to users requests in a function of number of concurrent users for two configurations of load balancer case study

5. Graphical interface The previous section showed the possibilities of using SSF.BS simulator and its good computational performance capabilities. However, nowadays the practical usage of any computer tool requires a good graphical interface. As it was mentioned in the section 3, all

Service based information systems analysis using task-level simulator

27

input information of modelled CIS is described in DML text file. Even the DML file format is simple (Figure 3), it is difficult for a human being to describe a CIS with large number of host and sophisticated service interaction without any error in text file. Within the framework of DESEREC EU grant (http://www.deserec.eu) a Java based graphical tool called ''Integrated Analysis Environment'' (IAE) was developed (Michalska & Walkowiak, 2008b) for a usage of PWR.SSF.Net simulator. After a few changes in IAE it was adopted to SSF.BS simulator. In IAE we took into consideration an inconvenient format of Domain Modelling Language and we proposed its XML representation with all supplements attributes of proposed extended simulation framework - called XDML. Creation of XDML language gave many processing possibilities. IAE framework using JAXB techniques and implemented translation methods creates one model (XDML) from other modelling languages: system infrastructure from SDL (System Description Language, http://www.positif.org/) and task interaction from WS-CDL (WebServices Choreography Description Language, http://www.w3.org/). This XDML model is visualized showing the structure of the network and it's element (Figure 10). Each network element has several functional parameters and user can graphically edit this information. In proposed framework user is able to put its own variables and attributes based on XDML specification or use extend models (i.e. consumption model, operational configuration model) to simplified its work. After setting up all parameters of network elements and service components the user is able to perform simulation. It is done by transforming XDML into DML. The resulting DML file is then simulated. Simulation is integrated into IAE since both tools are developed in Java therefore user can see on the screen text output from the simulator on-line. The results from simulation (output file from simulator) are caught by IAE and response time to user requests is calculated and displayed.

Fig. 10. Integrated Analysis Environment - screenshot

28

Computational Intelligence and Modern Heuristics

6. Conclusion We have presented a simulation approach to functional analysis of complex information systems. Developed simulation software allows to analyze the effectiveness (understood in given exemplar as a the response time to a client request) of a given configuration of computer system. Changes in a host performance or in a number of clients can be easily verified. Also, some economic analysis could be done following the idea presented in (Walkowiak & Mazurkiewicz, 2005). The implementation of CIS simulator done based on SSF allows to apply in a simple and fast way changes in the CIS model. Also the time performance of SSF kernel results in a very effective simulator of CIS. We are now working on implementing other load balancing algorithms what should allow to analyze a wider range of enterprise information systems and compare different load balancing algorithms. We also plan to extend the model and simulator to include the reliability model of technical infrastructure components. It should allow to measure the availability of a business service in a function of functional and reliability parameters of information systems components.

7. References Avižienis, A. ; Laprie, J. ; Randell, B. (2000). Fundamental Concepts of Dependability. Proceedinggs of 3rd Information Survivability Workshop (ISW-2000), Boston, Massachusetts Aweya, J.; Ouellette, M.; Montuno, D.; Doray, B.; Felske, K. (2002). An adaptive load balancing scheme for web servers. International Journal of Network Management, Vol. 12 Birta, L. ; Arbez, G. (2007). Modelling and Simulation: Exploring Dynamic System Behaviour. Springer, London Gold, N.; Knight, C. ; Mohan, A.; Munro, M. (2004). Understanding service-oriented software. IEEE Software, Vol. 21, 71– 77 Liu, J. (2006). Parallel Real-time Immersive Modeling Environment (PRIME), Scalable Simulation Framework (SSF), User’s maual. Colorado School of Mines Department of Mathematical and Computer Sciences, 2006, [Online]. Available: http://prime.mines.edu/ Nicol, D. ; Liu, J., Liljenstam, M. ; Guanhua, Y. (2003). Simulation of large scale networks using SSF. Proceedings of the 2003 Winter Simulation Conference, Vol. 1, pp. 650–657, New Orleans, Michalska, K. ; Walkowiak, T. (2008). Hierarchical Approach to Dependability Analysis of Information Systems by Modeling and Simulation. Proceedings of the 2008 Second international Conference on Emerging Security information, Systems and Technologies, , pp. 356-361 Cap Esterel, IEEE Computer Society, Washington Walkowiak, T. ; Mazurkiewicz, J. (2005) Reliability and Functional Analysis of Discrete Transport System with Dispatcher. Advances in Safety and Reliability, European Safety and Reliability Conference – ESREL 2005, Gdynia, pp. 2017-2023, Taylor & Francis Group, London Walkowiak, T. (2009). Information systems performance analysis using task-level simulator, Proceedings of International Conference on Dependability of Computer Systems, pp. 218225, Brunow, IEEE Computer Society Press, Los Alamitos Zyla, M.; Caban, D. (2008). Dependability Analysis of SOA systems. Proceedings of International Conference on Dependability of Computer Systems, pp. 301–306, Szklarska Poreba, IEEE Computer Society Press, Los Alamitos

3

Modelling equipment deterioration vs. maintenance policy in dependability analysis Jarosław Sugier

Wrocław University of Technology Poland

George J. Anders

Technical University of Łódź Poland 1. Introduction Effective and efficient maintenance is a significant factor in operation of today’s complex computer systems. Selecting the optimal maintenance strategy must take numerous issues into account and among them reliability and economic factors are often of equal importance. On one side, it is obvious that for successful system operation failures must be avoided and this opts for extensive and frequent maintenance activities. On the other, superfluous maintenance may result in very large and unnecessary cost. Finding a reasonable balance between these two is a key point in efficient system operation. This text describes Asset Risk Manager (ARM) – a computer software package provided as a decision support tool for a person selecting maintenance activities. Its main task is to help in evaluation of risks and costs associated with choosing different maintenance strategies. Rather than searching for a solution to a problem: “what maintenance strategy would lead to the best dependability parameters of system operation”, in our approach different maintenance scenarios can be examined in “what-if” studies and their reliability and economic effects can be estimated. The main idea of the approach is based on the concept of a life curve and discounted cost used to study the effect of equipment ageing under different maintenance policies. First , the deterioration process in the presence of maintenance activities is described by a Markov model and then its various characteristics are used to develop the equipment life curve and to quantify other reliability parameters. Based on these data, effects of various “what-if” maintenance scenarios can be visualized and their efficiency compared. Simple life curves computed from the model can be combined to represent equipment deterioration undergoing diverse maintenance actions, while computing other parameters of the model allows evaluating additional factors, such as probability of equipment failure. Special care is paid to one particular problem: having a model that describes the deterioration of an element that undergoes some maintenance policy with particular repair frequencies, it is often needed to create a model representing the same element being subjected to a new policy that differs only in repair frequencies. The method proposed for

30

Computational Intelligence and Modern Heuristics

creation of such a model adjusts the initial one through fine-tuning probabilities of the repair states in an iterative process that converges to the desired goal. Discussion of different possible approximation methods applied during the adjustment is included and effectiveness of this approach is illustrated with practical examples. The ARM system itself has been initially presented in (Anders & Sugier, 2006). This text extends that presentation with additional discussion of the method for Markov model adjustment and its impact on new results that can be included in the studies (Sugier & Anders, 2007).

2. Modelling the ageing process in the presence of maintenance activities In the proposed approach it is assumed that the equipment will deteriorate in time and, if not maintained, will eventually fail. If the deterioration process is discovered, preventive maintenance is performed which can often restore the condition of the equipment. Such a maintenance activity will return the system to a specific state of deterioration, whereas repair after failure will restore to “as new” condition (Hughes & Russell, 2005; Anders & Endrenyi, 2004). Markov models, which form the underlying structure of the models investigated here, have been applied during planning and operation of large networks (IEEE/PES Task Force, 2001). Equipment aging processes with non-exponential time of sojourn in the states can be represented by several series of stages (Li & Guo, 2006). Each stage can be represented as a state in the Markov process so that the non-Markovian processes can be transformed into Markovian processes (IEEE/PES Task Force, 2001; Singh & Billinton, 1997; Tomasevicz & Asgarpoor, to be published). Fuzzy Markov models have also been developed in which uncertainties in transition rates / probabilities are represented by fuzzy values (Mohanta et al., 2005; Duque & Morinigo, 2004; Cugnasca et al., 1999; Ge et al., 2007). In these models, fuzzy arithmetic was applied to mimic the crisp Markov process calculations which are computationally tedious and even more so when the number of states increases. 2.1 The life curves A convenient way to represent the deterioration process is by a life curve of the equipment (Anders & Endrenyi, 2004). Such a curve shows the relationship between asset condition, expressed in either engineering or financial terms, and time. Since there are many uncertainties related to the prediction of equipment life, probabilistic analysis must be applied to construct and evaluate life curves. Fig. 1 (a) shows an example of a simple life curve of some equipment that models its continuous deterioration up to the point of failure. Fig. 1 (b) illustrates application of this curve in a case study of some specific scenario in which equipment refurbishment and equipment failure occur. 2.2 The ageing process There are three major factors that contribute to the ageing behaviour of equipment: physical characteristics, operating practices, and the maintenance policy. Of these three aspects the last one relates to events and actions that should be properly incorporated in the model. The maintenance policy components that must be recognized in the model are: monitoring or inspection (how is the equipment state determined), the decision process (what

Modelling equipment deterioration vs. maintenance policy in dependability analysis

31

determines the outcome of the decision), and finally, the maintenance actions (or possible decision outcomes). Equipment condition

Equipment condition Maintenance action

Time

Failure

Time

(a) (b) Fig. 1. Life curve of an equipment (a) and its application to modelling equipment condition over some time period (b). In practical circumstances, an important requirement for the determination of the remaining life of the equipment is the establishing its current state of deterioration. Even though at the present state of development no perfect diagnostic test exists, monitoring and testing techniques may permit approximate quantitative evaluation of the state of the system. It is assumed that four deterioration states can be identified with reasonable accuracy: (a) normal state, (b) minor deterioration, (c) significant (or major) deterioration, and (d) equipment failure. Furthermore, the state identification is accomplished through the use of scheduled inspections. Decision events generally correspond to inspection events, but can be triggered by observations acquired through continuous monitoring. The decision process will be affected by what state the equipment is in, and also by external factors such as economics, current load level of the equipment, its anticipated load level and so on. 2.3 The model All of the above assumptions about the ageing process and maintenance activities can be incorporated in an appropriate state-space (Markov) model. It consists of the states the equipment can assume in the process, and the possible transitions between them. In a Markov model the rates associated with the transitions are assumed to be constant in time. The development described in this paper uses model of Asset Maintenance Planner (Anders & Maciejewski, 2006; Anders & Leite da Silva, 2000). The AMP model is designed for equipment exposed to deterioration but undergoing maintenance at prescribed times. It computes the probabilities, frequencies and mean durations of the states of such equipment. The basic ideas in the AMP model are the probabilistic representation of the deterioration process through discrete stages, and the provision of a link between deterioration and maintenance. For structure of a typical AMP model see Fig. 2. In most situations, it is sufficient to represent deterioration by three stages: an initial (D1), a minor (D2), and a major (D3) stage. This last is followed, in due time, by equipment failure (F) which requires extensive repair or replacement.

32

Computational Intelligence and Modern Heuristics

In order to slow deterioration and thereby extend equipment lifetime, the operator will carry out maintenance according to some pre-defined policy. In the model of Fig. 2, regular inspections (Is) are performed which result in decisions to continue with minor (Ms1) or major (Ms2) maintenance or do nothing (with the state number s = 1, 2 or 3). The expected result of all maintenance activities is a single-step improvement in the deterioration chain; however, allowances are made for cases where no improvement is achieved or even where some damage is done through human error in carrying out the maintenance resulting in the next stage of deterioration. The choice probabilities (at the points of decision making) and the probabilities associated with the various possible outcomes are based on user input and can be estimated e.g. from historical records or operator expertise. For the needs of further tuning of the model the probabilities linked to transitions to the maintenance states Msi are the most important ones as they are directly related to the repair frequencies. These probabilities will be denoted as Psr (P11, P12, … P32) , where s = state number and r = repair index.

D1 Initial 10

P

D2 Minor deterioration P20

I1 11

P

M11

12

P

P

M12

P30

I2 21

M21

D3 Major deterioration

22

I3 P32

31

P

P

M22

F Failure

M31

M33 D1

D2

D2

D1

D3

Choice possibilities (decisions)

D1

D3

D2

F

Outcome possibilities

D2

F

Waiting periods

Fig. 2. Model of the ageing process for equipment undergoing inspections and maintenance activities. Decision probabilities after inspection states are placed by respective transitions. K = 3, R = 2. Mathematically, the model in Fig. 2 can be represented by a Markov process, and solved by well-known procedures. The solution will yield all the state probabilities, frequencies and mean durations. Another technique, employed for computing the so-called first passage times (FPT) between states, will provide the average times for first reaching any state from any other state. If the end-state is F, the FPT’s are the mean remaining lifetimes from any of the initiating states.

3. Adjusting model parameters Preparing the Markov model for some specific equipment is not an easy task and requires participation of an expert. The goal is to create the model representing closely real-life deterioration process known from the records that usually describe average equipment

Modelling equipment deterioration vs. maintenance policy in dependability analysis

33

operation under regular maintenance policy with some specific frequencies of inspections and repairs. Compliance with these frequencies in behaviour of the model is a very desirable feature that verifies its trustworthiness. This section describes a method of model adjustment that aims at reaching such a compliance (Sugier & Anders, 2007). It can be used also for a different task: fully automatic generation of a model for a new maintenance policy with modified frequencies of repairs. 3.1 The method Let K represents number of deterioration states and R – number of repairs in the model under consideration. Also, let Psr = probability of selecting maintenance r in state s (assigned to decision after state Is) and Ps0 = probability of returning to state Ds from inspection Is (situation when no maintenance is scheduled as a result of the inspection). Then for all states s = 1 … K: P s 0 P sr 1 r

(1)

Let Fr represents frequency of repair r acquired through solving the model. The problem of model tuning can be formulated as follows: Given an initial Markov model M0, constructed as above and producing frequencies of repairs F0 F00 , F01 ,...F0R , adjust probabilities Psr so that some goal frequencies FG are

achieved. Typically, the vector FG represents observed historical values of the frequencies of various repairs. In the proposed solution, a sequence of tuned models M0, M1, M2,… MN is evaluated with each consecutive model approximating desired goal with a better accuracy. The tuning procedure begins with an initial model M0 and then in each iteration the following steps are performed: 1° For the current model Mi compute vector of repair frequencies Fi. 2° Evaluate an error of Mi as a distance between vectors FG and Fi. 3° If the error is within the user-defined limit consider Mi as the final tuned model and stop the procedure (N = i); otherwise proceed to the next step. 4° Create model Mi+1 through tuning values of Pisr ; adjust also Pis 0 according to (1). 5° Go to step 1° and proceed with the next iteration. The error computed in step 2° can be expressed in may ways. As the frequencies of repairs may vary in a broad range within one vector Fi, yet values of all are significant in model interpretation, the relative measures work best in practice: FG Fi

or

1 R r r Fi / FG 1 R r 1

FG Fi max Fir / FGr 1 . r

The latter formula is more restrictive and was used in examples of this work.

(2)

34

Computational Intelligence and Modern Heuristics

3.2 Approximation of model probabilities Of all the steps outlined in the previous section, it is clear that adjusting probabilities Pisr in step 4° is the heart of the whole procedure. In general, the probabilities represent K· R free parameters and their uncontrolled modification could lead to serious deformation of the model. To avoid this, a restrictive assumption is made: if the probability of some particular maintenance must be altered, it is modified proportionally in all deterioration states, so that at all times P01r : P02 r : … : P0Kr ~ Pi1r : Pi2 r : … : PiKr .

(3)

for all repairs (r = 1…R). This assumption also significantly reduces dimensionality of the problem, as now only a vector of R scaling factors Xi+1=[ X 1i 1 , X i21 , … X iR1 ] must be found to compute probabilities of the next model Mi+1: Pisr1 X ir1 P0sr , r = 1…R, s = 1…K

Moreover, although frequency of a repair r depends actually on probabilities of all repairs (modifying probability of one repair changes, among others, state durations in the whole model, thus it changes frequencies of all states) it can be assumed that in case of a singlestep small adjustment its dependence on repairs other than r can be neglected and

Fir X1i , X i2 ...X iR Fir X ir .

(4)

With these assumptions generation of a new model in step 4° is reduced to finding roots of R non-linear equations in the form of Fir X ir FGr . This can be accomplished with one of standard numerical algorithms. For the needs of development described in this work the following three approximation algorithms has been implemented and verified on practical examples: (A) Newton method working on linear approximation of Fir () , (B) the secant method and (C) the false position (falsi) method. (A) Newton method On Linear Approximation (NOLA) In this solution it is assumed that Fir () is a linear function defined by points Fir ( X i ) (computed for the current model Mi in step 1°) and Fir (0) (which is zero). Then the scaling factor for any repair r is taken simply as: X ir1 FGr / Fir .

Applying these factors to all repair probabilities creates the next model Mi+1. This method is very simple and may seem primitive but its noteworthy advantage lies in the fact that no other point than the current frequency Fir ( X i ) is required to compute the next approximation. As errors of the previous iteration steps do not accumulate, convergence is good from the very first iteration.

Modelling equipment deterioration vs. maintenance policy in dependability analysis

35

(B) The secant method In this standard technique the function is approximated by the secant defined by the last two approximations in points X ir1 , X ir so that a new one is computed as: X ir1 X ir

X ir X ir1 r Fi FGr . Fir Fir1

(5)

After that X ir1 is discarded; X ir1 and X ir are considered in the next iteration. To start the procedure two initial points are needed. In this method it is proposed to choose the initial frequency of the model M0 ( X 0r = 1) as the first point, while the second one is computed as in NOLA method above, i.e. X1r FGr / F0r . Starting with these two, the next solutions are computed as in (5). (C) The false position (falsi) method In this approach X ir1 is computed as in (5) but the difference lies in choosing points for the next iteration. While in (B) always X ir1 is dropped, now the new solution X ir1 is paired with r that one of Xi , X ir1 which lies on the opposite side of the root. In this way when (5) is r applied the solution is bracketed between Xi and X ir1 (which is the essence of falsi method). As in (B), to begin the iteration the two initial points are needed but now they must lie on both sides of the root, i.e.

F

r 0

FGr F1r FGr 0 .

(6)

Choosing such points may pose some difficulty. To avoid multiple sampling, it is proposed to select X 0r =1 (as previously) and then to compute X1r like in NOLA method but with some "overshoot" that would guarantee condition (6):

X1r FGr / F0r

.

(7)

The parameter > 1 limits the overshoot effect. The overshot must be sufficient to ensure (6) but, on the other hand, should not produce too much of an error because that would deteriorate convergence process during initial steps and would add extra iterations. In practice values of = 1.5 2.5 work well. Even if the initial value of X1r computed this way does not meet (6) for particular value of then (7) can be re-applied with increased, although it should be noted that each such correction requires solving a new M1 model and in effect this is the extra computational cost almost equal to that of the whole iteration. 3.3 Comparison of the methods We shall now discuss effectiveness of the above three approximation methods using a sample Markov model tuned for four different repair frequencies. The final result presented to the user - life curves that were obtained from the tuned models - is shown in Fig. 3. The model of the equipment consisted of 3 deterioration states and 3 repairs (K = R = 3), with Ms1 representing minor, Ms2 medium and Ms3 major repair. The life curve estimated

36

Computational Intelligence and Modern Heuristics

from model M0 is shown as case 1 and serves as a point of reference. Cases 2 to 5 were created through adjusting M0 to modified maintenance as follows: case 2: frequencies of all repairs were reduced by half, FG = ½ F0 3 case 3: all repairs but major (Ms3) were removed, FG = [0, 0, F0 ] case 4: frequencies of all repairs were reduced to 25%, FG = ¼ F0 case 5: all repairs were removed, FG = [ 0, 0, 0 ]. All the three approximation methods (NOLA, secant and falsi) converged properly to the same set of probabilities that gave desired goal frequencies. For an example, Fig. 4 compares convergence rate of the methods in the case 2, i.e. during adjustment towards repair frequencies decreased by 50%. The value of the relative error (2) was reduced from initial 100% to 1% after just 3 iterations proving the high effectiveness of the proposed model tweaking. This also shows that simplifications (3) and (4) from section 3.2 are justifiable and do not deteriorate the approximation process.

Fig. 3. Life curve of equipment for some default maintenance policy (1) and life curves generated from Markov models adjusted to modified policies (2-5). What also can bee seen for this specific case in Fig. 4 is that the three approximation methods, although significantly different from the mathematical point of view, yield very similar results during the first iterations 1 3. The difference becomes visible starting from iteration no. 4 when, apparently, the secant method generated the approximating point that did not met condition (6) and, effectively, lost this iteration reaching accuracy of the falsi method one step later. The same situation happened also in iterations no. 6 and 7. Compared to this, the NOLA method showed no such fluctuations and produced steady improvement in every step, although at a rate not as high as that of the falsi method. Fig. 5 presents the convergence rate in the other cases.

Modelling equipment deterioration vs. maintenance policy in dependability analysis

37

1000

Max relative error [%]

100

i

10 1 0

1

2

3

4

5

6

7

0 1 2 3 4 5 6 7

NOLA Secant Falsi

0.1 0.01 0.001

NOLA 1.05E+02 2.54E+01 4.44E+00 7.26E–01 1.18E–01 1.83E–02 4.00E–03

Error [%] Secant 1.05E+02 2.54E+01 1.07E+01 7.83E–01 6.04E–01 2.18E–02 1.20E–02 8.40E–03

Falsi 1.05E+02 4.08E+01 9.22E+00 5.05E–01 3.13E–02 1.40E–03

Iteration no.

Fig. 4. Effectiveness of the three approximation methods in model tuning for FG = ½F0.

Max relative error [%]

Comparing the effectiveness of the methods it should be noted that although simplifications of the NOLA solution may seem critical, in practice it works quite well. As it was noted before, this method has one advantage over its more sophisticated rivals: since it does not depend on previous approximations, selection of the starting point is not so important and the accuracy during the first iterations is often better than in the secant or falsi methods. For example, in the case 2 (Fig. 4) NOLA method reached accuracy of 4.4% already after 2 iterations, while for secant and falsi methods the errors after two iterations were, respectively, 11% and 9.2%. Superiority of the latter methods, especially of the falsi algorithm, becomes undisputable in the later stages of approximation when the potential problems with initial selection of the starting points have been diminished. 100

1000

10

100 10

1 0

1

2

3

0.1 0.01

4

5

NOLA Secant Falsi

1 0

1

2

3

4

5

0.1 0.01

0.001

0.001

0.0001

0.0001

Iteration no.

Iteration no.

Fig. 5. Convergence rate in tuning for FG = [0, 0, F03 ] (case 3, left) and FG = ¼ F0 (case 4, right).

38

Computational Intelligence and Modern Heuristics

4. Asset Risk Manager The Asset Risk Manager (ARM) is a software package which uses the concept of a life curve and discounted cost to study the effect of equipment ageing under different hypothetical maintenance strategies (Anders & Sugier, 2006). The curves generated by the program are based on Markov models that were presented in the two previous sections. For the program to generate automatically the life curves, default Markov model for the equipment has to be built and stored in the computer database. This is done through the prior running of the AMP program by an expert user. Therefore, both AMP and ARM programs are closely related, and usually, should be run consecutively. Implementation details of Markov models, tuning its parameters and all other internal particulars should not be visible to the non-expert end user. All final results are visualized either through an easy to comprehend idea of a life curve or through other well-known concepts of financial analysis. Still, prior to running the analysis some expert involvement is needed, largely in preparation, importing and adjusting AMP models. 4.1 User input A typical study is described through a comprehensive set of parameters that are supplied by an non-expert end user. They fall into three broad categories. (A) General data. The Markov model of the equipment in question and its current state of deterioration form the primary information that is the starting point to most of ARM computations. The Markov model represents the equipment with present maintenance policy and is selected from a database of imported AMP models which needs to be prepared by an expert in advance. Deterioration state, referred to as “Asset Condition” (AC) throughout the ARM, must be supplied by the end user as percentage of “as-new” condition. Besides, a number of additional general parameters need to be specified, such as the time horizon over which the analysis will be performed, discount and inflation rates for financial calculations etc. (B) Description of the present maintenance policy. It is assumed that three types of maintenance repairs can be performed: minor, medium and major. These correspond to appropriate states in Markov model and not all of them must be actually present in the policy. For each repair user supplies its basic attributes, e.g. cost, duration and frequency. (C) List of alternative actions. These are the hypothetical maintenance policies that decision-maker can chose from. Each action is defined as one of four types: • continue as before (i.e. do not change the present policy), • do nothing (i.e. stop all the repairs), • refurbish, • replace. Apart from the first type, every action can be delayed for a defined amount of time. Additionally, for “non-empty” actions (i.e. any of the last two types) user must specify what to do in the period after action; the choices are: (a) to change type of equipment and / or (b) to change maintenance policy. For every action user must also specify what to do in case of failure: whether to repair or replace failed equipment, its condition afterwards, cost of this operation etc. Thanks to these options a broad range of maintenance situations can be described and then analysed.

Modelling equipment deterioration vs. maintenance policy in dependability analysis

39

The first action on the list is always “Continue as before” and this is the base of reference for all the others. The ARM can be directed to compute life curves, cost curves, or probabilities of failure – for each action independently – and then to visualize computed data in many graphical forms to assist the decision-maker in effective action assessment. It should be noted that while the need for some action (e.g., overhaul or change in maintenance policy) is identified at the present moment, the actual implementation will usually take place only after a certain delay during which the original maintenance policy is in effect. Using ARM it is possible to analyze effect of that delay on the cost and reliability parameters. 4.2 Life curves As it has been pointed out before, computing the average first passage time (FPT) from the first deterioration state (D1) to the failure state (F) in the Markov model yields the average lifetime of the equipment, i.e. length of its life curve. On the other hand, solving the model for state probabilities of all consecutive deterioration states makes possible computing state durations, which in turns determine shape of the curve. Simple life curves obtained for different maintenance policies are later combined in constructing composite life curves which describe various maintenance scenarios. For sake of simplicity and consistency, always exactly three deterioration states, or levels, are presented to the end user: minor, medium and major, with adjustable AC ranges. In case of Markov models which have more than three Ds states, the expert decides how to assign Markov states to the three levels when importing the model. Fig. 6 shows exemplary life curves computed by ARM for typical maintenance situations. In each case the action is delayed for 3 time units (months, for example) and the analysis is performed for a time horizon of 10 time units. In case of failure seen in “Do nothing” action, equipment is repaired and its condition is restored to 85%. 100 90

Asset condition [%]

80 70 60 Continue as before Action1 (type: Replacement) Action2 (type: MajorRef.) Action3 (type: DoNothing)

50 40 30 20 10 0

0

1

2

3

4

5 6 Delay [t.u.]

7

8

9

10

Fig 6. Life curves computed for three different actions (“Action1” … “Action3”) and compared to the present maintenance policy (“Continue as before”).

40

Computational Intelligence and Modern Heuristics

4.3 Probability of failure For a specific action, probability of failure within the time horizon (PoFTH) is a sum of two probabilities: of failure taking place before (PoFB) and after (PoFA) the moment of action. It is assumed that failures in these two periods making up the time horizon are independent, so PoFTH = PoFB + PoFA – PoFB PoFA. To compute PoF( T ) within some time period T, the Markov model for the equipment and the life curve are required. The procedure is as follows: (1) For initial asset condition, find from the life curve the current deterioration state DS n; compute also state progress (SP, %), i.e. estimate how long the equipment has been in the DSn state. (2) Running FPT analysis on the model, find distributions Dn and Dn+1 of first passage time from DSn and DSn+1 to the failure state F. (3) Taking state progress into account, probability of failure is evaluated as PoF = Dn( T ) (1 – SP) + Dn+1( T ) SP For better visualization, rather than finding a single PoFTH value for action defined by the user in input parameters, ARM computes a curve which shows the PoFTH as a function of action delay varying in a range 0 200% of user-specified initial value. An example is demonstrated in Fig. 7 for “Do nothing” action (user-defined delay = 3 time units), where also the two probability components PoFB and PoFA are shown. 100 90

Failure probability[ %]

80 70 60 50

Total After Before

40 30 20 10 0

0

1

2

3 Delay [t.u.]

4

5

6

Fig 7. Probability of equipment failure within the time horizon for “Do nothing” action, computed as a function of action delay. 4.4 Cost curves In many financial evaluations, the costs are expressed as present value (PV) quantities. The present value approach is also used in ARM because maintenance decisions on ageing

Modelling equipment deterioration vs. maintenance policy in dependability analysis

41

equipment include timing, and the time value of money is an important consideration in any decision analysis. The cost difference is often referred to as the Net Present Value (NPV). In the case of maintenance, the NPV can be obtained for several re-investment options which are compared with “Continue as before” policy. Cost computations involve calculation of the following cost components: 1. cost of maintenance activities, 2. cost of the action selected (e.g. refurbishment or replacement), 3. cost associated with failures (cost of repairs, system cost, penalties, etc.). To compute the PV, inflation and discount rates are required for a specified time horizon. The cost of maintenance over the time horizon is the sum of the maintenance costs incurred by the original maintenance policy for the duration of the delay period, and the costs incurred by the new policy for the remainder of the time horizon. The costs associated with equipment failure over the time horizon can be computed similarly except that the failure costs before and after the action is multiplied by the respective probabilities of failures (PoFB and PoFA), and the two products are added. As in case of probability of failure, ARM presents the end user with a curve which shows the cost as a function of action delay varying in a range 0 200% of user-specified value.

5. Conclusions The purpose of the ARM tool is to help in choosing effective maintenance policy. Based on Markov models representing maintenance actions and deterioration processes, life curves and other reliability parameters can be evaluated. Once a database of equipment models is prepared, the end-user can perform various studies about different maintenance strategies and compare expected outcomes. Since the equipment condition is visualized through the relatively simple concept of a life curve, no detailed expert knowledge about internal reliability parameters or configuration is required. The system can also automatically adjust the model to requested repair frequencies and thus provides for fully automatic computation of dependability parameters in cases when maintenance policy needs to be modified within some range. This also reduces the model preparation time that requires involvement of the reliability expert and allows for broader range of studies that can be done fully automatically by the end user.

6. References Anders G.J. & Endrenyi J. (2004). Using Life Curves in the Management of Equipment Maintenance, Proceedings of PMAPS’2004 Conference, Ames, Iowa, September 2004. Anders G.J. & Leite da Silva A.M. (2000). Cost Related Reliability Measures for Power System Equipment, IEEE Transactions On Power Systems, Vol. 15, No.2, pp. 654-660. Anders G.J. & Maciejewski H. (2006). Estimation of impact of maintenance policies on equipment risk of failure, Proceedings of International Conference on Dependability of Computer Systems DepCoS – RELCOMEX 2006, pp. 351-357, ISBN 0-7695-2565-2, Szklarska Poręba, Poland, May 2006, IEEE Computer Society Press.

42

Computational Intelligence and Modern Heuristics

Anders G.J. & Sugier J. (2006). Risk Assessment Tool for Maintenance Selection, Proceedings of International Conference on Dependability of Computer Systems DepCoS – RELCOMEX 2006, pp. 306-313, ISBN 0-7695-2565-2, Szklarska Poręba, Poland, May 2006, IEEE Computer Society Press. Cugnasca P.S., De Andrade M.T.C. & Camargo Jr. J.B. (1999). A fuzzy based approach for the design and evaluation of dependable systems using the Markov model, Proceedings of 1999 Pacific Rim International Symposium on Dependable Computing, pp.112-119, ISBN 0-7695-0371-3, Hong Kong, December 1999. Duque O. & Morinigo D. (2004). A fuzzy Markov model including optimization techniques to reduce uncertainty, Proceedings of the 12th IEEE Mediterranean Electrotechnical Conference, vol.3, pp. 841-844, ISBN 0-7803-8271-4, Dubrovnik, May 2004. Endrenyi J. (1978). Reliability Modeling in Electric Power Systems, J. Wiley & Sons, Chichester, 1978. Endrenyi J., Anders G.J. & Leite da Silva A. M. (1998). Probabilistic Evaluation of the Effect of Maintenance on Reliability - An Application. IEEE Transactions on Power Systems, vol. 13, no. 2 (May 1998), pp. 575-583. Ge H., Tomasevicz C.L. & Asgarpoor S. (2007). Optimum Maintenance Policy with Inspection by Semi-Markov Decision Processes, Proceedings of 39th North American Power Symposium, pp.541-546, ISBN 9-7814-2441-7254, Las Cruces, NM, USA, September/October 2007. Hughes D. T. & Russell D. S. (2005). Condition Based Risk Management (CBRM), a Vital Step in Investment Planning for Asset Replacement, Proceedings of IEE-RTDN Conference, London UK, February 2005. IEEE/PES Task Force on Impact of Maintenance Strategy on Reliability of the Reliability, Risk and Probability Applications Subcommittee (2001). The present status of maintenance strategies and the impact of maintenance on reliability, IEEE Transactions on Power Systems, vol. 16, no. 4 (November 2001), pp. 638-646. Li Z. & Guo J. (2006). Wisdom about age-aging electricity infrastructure, IEEE Power and Energy Magazine, vol.4, no.3 (May-June 2006), pp. 44-51. Mohanta D.K., Sadhu P.K. & Chakrabarti R. (2005). Fuzzy Markov model for determination of fuzzy state probabilities of generating units including the effect of maintenance scheduling, IEEE Transactions on Power Systems, vol.20, no.4 (November 2005), pp. 2117-2124. Singh C. & Billinton R. (1977). System Reliability Modeling and Evaluation, London, Hutchinson Educational Publishers, 1977 [Online]. Available: http://www.ece.tamu.edu/People/bios/singh/sysreliability. Sugier J. & Anders G.J. (2007). Modeling Changes in Maintenance Activities through FineTuning Markov Models of Ageing Equipment, Proceedings of International Conference on Dependability of Computer Systems DepCoS – RELCOMEX 2007, pp. 336-343, ISBN 0-7695-2850-3, Szklarska Poręba, Poland, June 2007, IEEE Computer Society Press. Tomasevicz C.L. & Asgarpoor S. (to be published). Optimum Maintenance Policy Using Semi-Markov Decision Processes, Electric Power Systems Research, to be published.

4

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem Fredrick Mtenzi

Dublin Institute of Technology School of Computing, DIT Kevin Street, Dublin 8 Ireland 1. Introduction The Sparse Travelling Salesman Problem (Sparse TSP) which is a variant of the classical Travelling Salesman Problem (TSP) is the problem of finding the shortest route of the salesman when visiting cities in a region making sure that each city is visited at least once and returning home at the end. In the Sparse TSP, the distance between cities may not obey the triangle inequality; this makes the use of algorithms and formulations designed for the TSP to require modifications in order to produce near-optimal results. When solving the Sparse TSP, our main interest is in computing feasible tours at a reasonable computational cost. In addition because it is not possible to get an optimal solution most of the time, we would like to have some guarantee on the quality of the tours (solutions) found. Such guarantees can most of the time be provided if a lower bound on the length of a shortest possible tour is known. It is also the case that most algorithms for finding exact solutions for large Standard TSP instances are based on methods for finding upper and lower bounds and an enumeration scheme. For a given instance, lower and upper bounds are computed. In most cases, these bounds will not be equal, and therefore, only a quality guarantee for the feasible solution can be given, but optimality cannot be proved. If the upper and lower bounds coincide, a proof of optimality is achieved. Therefore, the determination of good tours and derivation of tight lower bounds can be keys to a successful search for optimal solutions. Whereas there have been a lot of work and progress in designing heuristic methods to produce upper bound, the situation for lower bounds is not as satisfying. In general for the Standard TSP, lower bounds are obtained by solving relaxations of the original problem in the sense that one optimizes over some set containing all feasible

44

Computational Intelligence and Modern Heuristics

solutions of the original problem as a (proper) subset. This then means, for example, that the optimal solution of the relaxed problem gives a lower bound for the value of the optimal solution of the original problem. In practice, the methods usually used for computing lower bound for the Standard TSP are the Held-Karp lower bound (Johnson et al., 1996) and Lagrangian relaxation (Reinelt, 1994). Since the Sparse TSP is an NP-Hard combinatorial optimization problem as per Fleischmann (Fleischmann, 1985), the standard technique to solve it to optimality is based on an enumeration scheme which for large problems is computationally expensive. Therefore a natural way is to use the Sparse TSP heuristics to obtain a near-optimal solution. Solutions obtained by heuristics for the Sparse TSP provide the upper bounds. Heuristics produce feasible solutions but without any quality guarantees as to how far off they may be from the optimal feasible solution. In order to be able to assess the performance of heuristics we need to find the lower bound of the problem. Therefore, in this chapter we are interested in exploring methods for computing tight lower bounds for the Sparse TSP. This is the case because we do not have the luxury of comparing with what other researchers have done, since most of the work in the TSP has been focused on the Standard TSP. For example, in the Standard TSP there are sample instances with optimal solutions provided in the TSPLIB for most of the problems (see (Reinelt, 1992)). The results given in TSPLIB include a provable optimal solution if available or an interval given by the best known lower bound and upper bound. As far as we are aware there are no such benchmark results for the Sparse TSP which is studied in this chapter. A lower bound gives us the quality guarantee of the near-optimal solution obtained by using heuristic methods. The most widely used procedure for finding the lower bound for the Standard TSP is the Held and Karp lower bound (Held & Karp, 1970). Johnson et al (Johnson et al., 1996) provide empirical evidence in support of using the Held and Karp (HK) lower bound as a stand-in for the optimal tour length when evaluating the quality of near-optimal tours. They show that for a wide variety of randomly generated instances the optimal tour length averages less than 0.8% over the HK lower bound, and for the real world instances in TSPLIB the gap is always less than 2%. A tight lower bound for the Sparse TSP will play a key role in developing and assessing the performance of the Sparse TSP heuristic methods. Definitions A relaxation of an optimization problem P is another optimization problem R, whose set of feasible solutions properly contains all feasible solutions of P. The objective function of R is an arbitrary extension on of the objective function of P. Consequently, the objective function value of an optimal solution to R (minimisation case) is less than or equal to the objective function value of an optimal solution to P. If P is a hard combinatorial problem and R can be solved efficiently, the optimal value of R can be used as a lower bound in an enumeration scheme to solve P. The closer the optimal value of R to the optimal value of P, the more efficient is the enumeration algorithm.

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

45

A lower bound of the TSP is the value obtained by solving a relaxation of the original problem or by using heuristics. Its value is in most cases less than the optimal value of the original problem, it is equal to optimal value when the value of lower bound is equal to the value of the upper bound. In this chapter, we propose and give computational experience on two methods of finding lower bounds for the Sparse TSP, the chapter is organised as follows. In section 2, we give the background and related research in the Travelling Salesman Problem and specifically how this work relates to the Sparse TSP. In section 3, we discuss methods for finding the lower bound of the Sparse TSP, and give the formulation and relaxation for the Linear Programming relaxation of the Sparse TSP. Further, we introduce the Arc-cutset Partial Enumeration Strategy as a strategy for finding the lower bound of the Sparse TSP. Finally, section 4 gives the conclusions and summary.

2. Related works The Standard TSP has been an area of intensive research since the late 1950's as demonstrated in (Lawler et al., 1985). The first major breakthrough came in 1954, in a seminal paper by (Dantzig et al., 1954) where a description of a method for solving the Standard TSP was given and its power illustrated by solving an instance of 49 cities. From there on there has been a lot of research published on the Standard TSP and its variants. Most of the methods used for solving the Standard TSP to optimality are of the branch and bound variety where, at each node of the branch and bound tree, lower bounds are computed by solving related problems which are relaxations of the original TSP (see (Camerini et al., 1975), (Gabovich, 1970), Held and Karp (Held & Karp, 1970), Padberg and Hong (Padberg & Hong, 1977), and Rubinshtein (Rubinshtein, 1971). As for all branch and bound methods, the quality of the computed lower bounds at each node has much greater influence on the effectiveness of the algorithm than any branching rules that may be used to generate the subproblems during the search. Branch and Bound techniques have been used successfully in optimization problems since the late 1950's. Several different branch and bound algorithms are possible for the travelling salesman problem. A survey of these is given in Bellmore and Nemhauser (Bellmore & Nemhauser, 1968). A variation of Branch and Bound techniques using cutting plane techniques called Branch-and-Cut by Padberg and Rinaldi((Padberg & Rinaldi, 1989), (Padberg & Rinaldi, 1991)) is a much more powerful technique for computing solutions for the Standard TSP. Held and Karp (Held & Karp, 1970), (Held & Karp, 1971) pioneered an iterative approach which uses a technique called Lagrangian Relaxation to produce a sequence of connected graphs which increasingly resemble tours. This technique is based on the notion of a 1-tree and the bound generated is called the Held-Karp lower bound (HK lower bound). Formulating the Standard TSP as an integer linear programming problem (see Dantzig et al (Dantzig et al., 1954), Miller et al (Miller et al., 1960), Fox et al (Fox et al., 1980), and Claus (Claus, 1984) and systematically solving its relaxations is another way of obtaining a lower bound for TSP. Bounds from the solutions of the assignment problem, the matching problem, and the shortest n-path problem have also been suggested and explored by

46

Computational Intelligence and Modern Heuristics

Christofides (Christofides, 1979) who also gave a brief survey and references. Johnson et al (Johnson et al., 1996) use the HK lower bound as a stand-in for the optimal tour length when evaluating the quality of near-optimal tours in a number of their studies in which they solve problems of up to one million cities. When the theory of NP-completeness was developed, the Standard TSP was one of the problems shown to be NP-hard by Karp in (Karp, 1972). This remains true even when additional assumptions such as the triangle inequality or Euclidean distances are involved (see Garey (Garey, 1976)). These results imply that a polynomially bounded exact algorithm for the TSP is unlikely to exist. Nevertheless ingenious algorithms for the TSP have been proposed by Little et al (Little et al., 1963), Held and Karp (Held & Karp, 1970), (Held & Karp, 1971), Miliotis (Miliotis, 1976), Crowder and Padberg (Crowder & Padberg, 1980). Over the past four decades the TSP has remained the prototype of a “hard” combinatorial problem. Since the introduction of NP-completeness theory in 1971 and the subsequent inclusion of the TSP in the NP-complete class, some of the mystery has gone out of the TSP. A complete treatment of NP-completeness theory and its relationship to the TSP is given in Garey and Johnson (Garey & Johnson, 1979). The NP-complete results have given a new impetus to heuristic methods for solving “hard” combinatorial problems. Due to the difficulty of the TSP, many heuristic procedures have been proposed and developed. These heuristics have been compared analytically in the ground-breaking paper of Rosenkrantz, Stearns and Lewis (Rosenkrantz et al., 1977) by studying their worst-case behaviour. Alternatively, computational experimentation may be used to compare the performance of these heuristics, as in the work of Golden et al (Golden et al., 1980) and Stewart (Stewart Jr, 1987). For example, Stewart (Stewart Jr, 1987) describes a number of new algorithms designed specifically to perform well on Euclidean problems. Much work has been done on fast heuristic algorithms for the Standard TSP. There is a trade-off between the speed of an algorithm and its ability to yield tours which are close to the optimal. The following studies show an enormous interest which researchers have shown to heuristic algorithms. These studies include those of Adrabinski and Syslo (Adrabinski & Syslo, 1983) , Golden et al (Golden et al., 1980), Johnson and McGeoch (Johnson & McGeoch, 1995), Bentley (Bentley, 1993), Reinelt (Reinelt, 1992), and Júnger et al (Júnger et al., 1995). There are two broad classes of heuristics for the travelling salesman problem constructive and improvement heuristics. A typical tour construction heuristic method starts with a node and adds others one by one until the tour is complete. Many other variants are described in Bellmore and Nemhauser (Bellmore & Nemhauser, 1968), Rosenkrantz et al (Rosenkrantz et al., 1977), Johnson (Johnson, 1990), Golden et al (Golden et al., 1980), Golden and Stewart (Golden & Stewart, 1985), Gendreu et al. (Gendreau et al., 1992), and Bentley (Bentley, 1993). The arc-exchange strategy was first applied to the Standard TSP by Croes (Croes, 1958). He suggested the 2-optimal algorithm for the symmetric TSP. About the same time and independently, a 3-optimal strategy was suggested by Bock in (Bock, 1958). However, it was Lin in (Lin, 1965) who truly established through extensive empirical study that the 3-optimal algorithm was indeed an excellent approximation algorithm for the Standard TSP. A

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

47

substantial improvement in implementation of the 3-optimal (in general, r-optimal where r ≥ 2) algorithm was given by Christofides and Eilon in (Christofides & Eilon, 1979). Lin and Kernighan (Lin & Kernighan, 1973) added another level of sophistication to the r-optimal algorithm. Instead of having a fixed value of 2 or 3, r was allowed to vary. Their paper is a classic paper on the local search heuristics for the Standard TSP. In particular, LinKernighan(LK) and its variants are widely recognized as the best (most accurate) local search heuristic for the TSP. The ejection chains method introduced by Glover (Glover, 1992) have been used to generate compound neighbourhood structures for the Standard TSP by Rego (Rego, 1998). It should be noted that this neighbourhood has been used to solve problems taken from Travelling Salesman Problem LIBrary(TSPLIB) and performed better than the best iterated LK, but it took more time. In order for the heuristics algorithms to work well efforts should be spent on designing efficient data structures. Data structures play an important role in the design and implementation of the Standard TSP algorithms. The following data structures have been used in the Standard TSP study, the k-d tree of Bentley discussed and used in Bentley (Bentley, 1993), (Bentley, 1975), (Bentley, 1990), and (Bentley, 1990). Fredman et al (Fredman et al., 1995) discuss and give implementation details on the following data structure for the Standard TSP, array-based and splay trees. We have witnessed remarkable progress in Mathematical Programming, Polyhedral Theory, and significant advances in computer technology that have greatly enhanced the chances of finding exact solutions to reasonably large combinatorial optimization problems. Nevertheless, these problems still pose a real challenge in the sense that it is hard to solve realistically large problem instances in reasonable computational times. This challenge has led to the development of many approximate algorithms and has made the science of heuristics a fast growing area of research. For more details on combinatorial optimization problems we refer the reader to Nemhauser and Wolsey (Nemhauser & Wolsey, 1988), Papadimitriou and Steiglitz (Papadimitriou & Steiglitz, 1982), Garey and Johnson (Garey & Johnson, 1979). Metaheuristics are a class of approximate solution methods, which have developed dramatically since their inception in the early 1980s. They are designed to solve complex optimization problems where classical heuristics and other optimization methods have failed to be effective and efficient. A metaheuristic can be defined as an iterative generation process which guides a subordinate heuristic by combining intelligently different concepts for exploring and exploiting the search space, learning strategies are used to structure information in order to find efficiently near-optimal solutions (see Osman (Osman, 1995), and Osman and Kelly (Osman & Kelly, 1996)). Hence, metaheuristics include, but are not limited to: Constraint Logic Programming; Genetic Algorithms; Greedy Random Adaptive Search Procedures; Neural Networks; Non-monotonic search strategies; Problem and heuristic search-space; Simulated Annealing; Tabu Search; Threshold Algorithms and their hybrids. These techniques are based on concepts borrowed from biological evolution, intelligent problem solving, Mathematical and Physical Sciences, Nervous System, and

48

Computational Intelligence and Modern Heuristics

Statistical Mechanics. For details we refer the reader to Reeves (C.R.Reeves, 1993; Reeves, 1993). However, Meta-heuristics have not been very successful in solving the Standard TSP according to Johnson and McGeoch (Johnson & McGeoch, 1995). They have been very effective in other areas such as industrial applications and communications networks. The solution produced by using local search procedures can be very far off from optimality. In order to avoid such disadvantages while maintaining the simplicity and generality of the approach, the following concepts which form the basis of most metaheuristics are considered see Reeves (Reeves, 1993). Start from good initial solutions which can be generated intelligently using a greedy random adaptive search designed by Feo and Resende (Feo & Resende, 1995), or space-search methods in Storer, Wu and Vaccari (Storer et al., 1995). Use the learning strategies of neural networks discussed in Sharda (Sharda, 1994), and Tabu search in Glover (Glover, 1995) that gather information during the algorithms execution in order to guide the search to find possibly better solutions. Employ non-monotonic search strategies that sample/accept neighbours based on hybrid modifications of simulated annealing and Tabu Search methods or others see (Glover (Glover, 1995), (Glover, 1995)), (Hu, Khang and Tsao (Hu et al., 1995)), (Osman (Osman, 1993), (Osman, 1995), (Osman, 1995)) and (Osman and Christofides (Osman & Christofides, 1994)). Sahni and Gonzales in (Sahni & Gonzales, 1976) showed that if a triangle inequality is not satisfied, the problem of finding an approximate solution to the TSP within any fixed bound ratio of the optimum is as hard as finding an exact solution. A comprehensive treatment of various aspects of the TSP can be found in the collection of research papers in Lawler et al (Lawler et al., 1985).

3. Methods for finding Lower bound for the Sparse TSP The standard technique for obtaining lower bounds on the Standard TSP is to use a relaxation that is easier to solve than the original problem. These relaxations can have either discrete or continuous feasible sets. Several relaxations have been considered over years for the Standard TSP. We are going to introduce modifications to these relaxations, so that they can be used to find lower bounds for the Sparse TSP at a reasonable computational effort. We can illustrate the relaxation of an optimization problem by figure 1 in which the region ABCD is the feasible region of the relaxed problem, while the region MNOPQRS is the feasible region of the original “true” problem, which in this case happens to contain integer points. Solution ABCD may be obtained when we relax integrality constraints. Relaxation of the combinatorial optimization has become so popular because in most cases the problems can be solved with reasonable computational effort, if not easier than the original problem.

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

49

D

3 S

R

Q C

2

M

A 1

P

N

O

B 0

1

2

3

4

Fig. 1. Region MNOPQRS shows a feasible solution to the original “true” problem while region ABCD shows a feasible solution to the relaxed problem The HK lower bound is the solution to the LP relaxation of the integer programming formulation of the Standard TSP (see Dantzig et al (Dantzig et al., 1954), Reinelt (Reinelt, 1994) and Johnson et al (Johnson et al., 1996). That is, it is the Integer Linear Programming with the integrality constraints relaxed. The HK lower bound provides a very good estimate of optimal tour length for the Standard TSP. This measure has enormous practical value when evaluating the quality of near optimal solutions for large problems where the true optimal solutions are not known or are computationally expensive to find. The HK lower bound has been used as a stand-in for the optimal tour length when evaluating the quality of near-optimal tours in a lot of studies (for example, in Johnson et al (Johnson et al., 1996)). Although the HK lower bound can be evaluated exactly by Linear Programming techniques, code for doing this efficiently for problems larger than a few hundred cities is not readily available or easy to produce (see Valenzuela and Jones (Valenzuela & Jones, 1996)). In addition linear programming implementations (even efficient ones) do not scale well and rapidly become impractical for problems with many thousands of cities. To be able to find the HK lower bound, a procedure for finding violated inequalities must be provided. This is not a simple matter of automatically generating violated inequalities. It is because of the above mentioned difficulties that most researchers have preferred to use the iterative estimation approach for finding lower bound for the Standard TSP proposed by Held and Karp (Held & Karp, 1970), (Held & Karp, 1971). In this chapter we use this method and modify it to solve the Sparse TSP problems. 3.1 The LP Relaxations for the Sparse TSP The formulation for the Integer Linear Programming (ILP) Sparse TSP is given as: N

N

min cij xij x

i 1 j 1

(1.1)

50

Computational Intelligence and Modern Heuristics

Subject to

j ( i j ) A

iS , j N S , i j

xij

xij

j ( j i ) A

x ji 2mi , for all i N

iS , j N S , j i

x ji 2, for all S N, S

(1.2) (1.3)

mi 0 for all i N

(1.4)

xij {0,1} for all i, j 1,, N

(1.5)

By relaxing the integrality constraint (1.5) we get the Linear Programming (LP) relaxation for the ILP Sparse TSP where equations (1.1, 1.2, 1.3 and 1.4) remains the same and constraint (1.5) becomes, xij 0 for all i, j 1,, N (1.6) Note: that any integral solution to the LP relaxation is a tour. We solved the LP relaxation for the modified ILP Sparse TSP formulation problems, results given in figure 7 were obtained by using violated arc-cutset constraints. 3.2 The LP relaxation for the EFF for the Sparse TSP From the single commodity flow formulation, we present its modification which we call the Embedded Flow Formulation (EFF) for the Sparse TSP. This formulation involves a polynomial number of constraints, even though the number of variables is increased considerably. The EFF for the Sparse TSP is given as: N

(1.7)

(1.8)

x

Subject to

j ( i j ) A

xij

N

min cij xij i 1 j 1

j ( j i ) A

x ji 2mi , for all i N

yij (n 1) xij 0, for all (i, j ) A

j ( i j ) A

yij

y ji 1, for all i 2,3, , n

j ( j i ) A

(y

(1.9) (1.10)

yi1 ) n 1

(1.11)

mi 0, for all i N

(1.12)

xij 0 or 1, for all (i, j ) A

(1.13)

yij 0, for all (i, j ) A

(1.14)

i A

1i

The LP relaxation for the EFF for the Sparse TSP formulation is obtained by relaxing the integrality constraint (1.13). All other equations remain the same except constraint (1.13) changes to: xij 0, for all (i, j ) A (1.15) It was interesting to know how close the lower bound Z LB obtained by solving the subtour relaxation is to the length of an optimal tour Z opt . Worst-case analysis of HK lower bound by

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

51

Wolsey (Wolsey, 1980) and Shmoy and Williamson (Shmoys & Williamson, 1990) show that for any cost function C satisfying the triangle inequality, the ratio Z LB Z opt is at least 2 3 . The 2 3 lower bound is not shown to be tight and actually it is conjectured by Goemans (Goemans, 1995) that ( Z LB Z opt ) 3 4 . Our computational results show that for many instances the above ratio is very close to 1. The results we obtained for the EFF for the Sparse TSP are presented in figure 8. In general the LP relaxation is not equal to the minimum tour length but it is very close. LP relaxation for the ILP Sparse TSP gives a much tighter lower bound than the LP relaxation for the EFF for the Sparse TSP and requires less iterations. 3.3 An Arc-cutset Partial Enumeration Strategy (APES) In this section we are proposing a strategy for quickly generating some of the violated arccutset constraints which we call an Arc-cutset Partial Enumeration Strategy (APES). The APES is based on the following observation, using the formulation for the ILP Sparse TSP, we can drop the connectivity constraints. When the resulting formulation is solved the solution produces a lot of disconnected components, all have at least two nodes connected by two arcs. That is to say each component is a subtour, and the obtained solution is not a tour. These components needed to be connected with other components to produce a single connected component, a tour. To be able to achieve this, we generated an arc-cutset constraint for each component. In other words we generated an arc-cutset constraint for each arc in the graph. This approach is reasonable to the Sparse TSP because the number of arcs m in the sparse graph is O(n) as opposed to O(n 2 ) in the complete graph. Arc cutset identified between two components resulted in those components being connected plus several others. Therefore, even if when the APES is applied at first, there are may be say five disconnected components, it does not mean that five arc cutset will have to be identified. Our computational study showed that the number of arc cutset to be identified is always less than five. However, we were not able to come up with the relationship between the size of the problem and the number of arc cutset to be identified before obtaining a tour. The arc-cutset constraints generated this way are all valid inequalities. Naddef and Rinaldi (Naddef, 1992), Cornuéjols et al (Cornuéjols et al., 1985), and Swamy and Thulasiraman (Swamy & Thulasiraman, 1981) have shown the validity of the arc-cutset constraints. They say that once the components are connected then the violated arc-cutset constraints are valid inequalities.

52

Computational Intelligence and Modern Heuristics

Our algorithm for the APES is given below. An Arc-cutset Partial Enumeration Strategy algorithm Step 1: Formulate the problem using evenness condition Constraints and integrality constraints only. Let nodes be the number nodes in the starting path Let nodesv be the number of nodes to be visited Let k := 2 Step 2: For nodes := k to n do For nodesv := 3 to n – k do List all arcs incident to the path with end node 1 and nodesv add the arc-cutset constraint to the formulation EndFor EndFor Step 3: Solve the new formulation using any LP solver Step 4: stop In forming the arc-cutset constraints, we first used a subtour component consisting only of two end nodes i and j with (i,j) as a connected component. The violated arc-cutset constraints were constructed by listing all arcs incident to node i and node j to form one violated arc-cutset constraint, i.e., all arcs incident with a subtour component. The arc connecting node i and node j was not included in the arc-cutset constraints. Figure 2 shows how using component (i,j) arc-cutset constraints was formed. This is what takes place in step 2 of the APES algorithm. j

i (a) subtour component (i,j).

xd

xa xij

xb

i

xe

j

xc

xf

(b) subtour component with incident arcs to node i and node j.

Fig. 2. Formulation of the arc-cutset constraint

xa xb xc xd xe x f 2

(1.16)

The arc-cutset constraints which are generated by the APES are used to connect components. Since the APES starts by using the evenness condition constraints and integrality constraints, while omitting the connectivity constraints. For example the twenty nodes problem shown in figure 3, is used to demonstrate how the APES works.

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

53

4 5

13

32

30

3

6

22 2

41

35

17

7 8

28

22

1

50

9

10

30

30

33

12

21

35

77

24 11

21

12

32

13

15

17

16

30 14

38

16

18 15 20

19 18

Fig. 3. A twenty nodes problem to demonstrate how APES works Solving the twenty nodes problems before adding the violated arc-cutset constraints generated by the APES gives the disconnected tours illustrated in figure 4 and whose objective function is 524. 4 5 3 6 2 7 8 1

9 10 12

11

13

14

15

17

16 19

20

18

Fig. 4. A twenty nodes problems with disconnected subtour components

54

Computational Intelligence and Modern Heuristics

After adding the violated arc-cutset constraints generated by the APES we got a tour as illustrated in figure 5 and its objective function was 765, which in this case happened to be the optimal tour. 4 5 3 6 2 7 8 1

9 10 12

11

13

14

15

17

16 19

20

18

Fig. 5. A twenty nodes problem tour For all the problems reported in this study, we used the APES to generate violated arc-cutset constraints from each arc. This strategy was used to ensure that disconnected components were connected to form a tour. The APES was able to produce optimal tours for all small problems we solved of up to 1000 nodes. It is interesting to note how the algorithm performed in some graphs. For example, in the case of the 30 nodes problem we had to add eleven violated arc-cutset constraints before getting a tour, while we had to add only two violated arc-cutset constraints for the 67 nodes problem to get a tour. As pointed out earlier the number of violated arc-cutset required to be identified seem to be a function of the nature of the graph and not its size. We then extended this technique of identifying violated arc-cutset constraints. These new violated arc-cutset constraints were formed by visiting a path of three or more nodes together. The first violated arc-cutset constraint was formed by visiting any three nodes which formed a path. When forming these constraints, we included all arcs which were incident to nodes 1 or 2 or 3 and ignore arcs connecting nodes 1, 2, and 3. The next constraint was formed by adding the fourth node to the path and the violated arc-cutset constraint was identified by listing all nodes incident to the path consisting of four nodes ignoring the arcs which form the path. The process continued until we got a tour. Figure 6 shows how these violated arc-cutset constraints were formed.

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

55

x4j x6k j k

x7k

x5j x8k

x1i

i

x2i x31

Fig. 6. An example of how the extended technique for identifying violated arc-cutset constraints works From figure 6 the following violated arc-cutset constraint (1.17) will be formed: (1.17)

x1i x2 i x3i x4 j x5 j x6 k x7 k x8 k 2

The results in figure 6 shows how the APES method performed when the starting path visited 3, 4, … , 10 nodes together. In other words at first the starting path had 3 nodes and we extended the path by adding one node at a time. The second time the starting path had 4 nodes and we extended the path by adding one node at a time. We continued increasing the number of nodes in a starting path, until at last our starting path had 10 nodes to start with. We got in a good number of cases substantial improvements in the lower bound as we increased the number of nodes in the starting path. However, as the number of nodes in the starting path went beyond 10 we got marginal improvement. Comparison of methods for finding Lower Bound for the Sparse TSP to the Optimal solution

2500

2000

Solution

1500

1000

500

0 5

10

20

30

67

Problem Size

Optimal Solution

LP Relaxation

APES solution

Extended APES

LP Relaxation for EFF

Fig. 7. Comparison of methods for finding Lower Bound for the Sparse TSP to the optimal solution

56

Computational Intelligence and Modern Heuristics

Computational experience for finding the Lower Bound for the Sparse SP

250000

200000

Solution

150000

100000

50000

0 5

10

20

30

67

100

391

80

595

75

797

80

882

1010

1023

1797

1830

2859

3058

923

Problem Size

LP Relaxation for EFF

APES solut on

Extended APES

Fig. 8. Computational experience for finding the Lower Bound for the Sparse TSP The order of complexity of our APES is O(n) . This is far less than the connectivity constraints with the order of complexity of O(n 2 ) . This makes our strategy much easier to use.

4. Summary and future work When optimization problems arise in practice we want to have confidence in the quality of the solutions. Quality guarantees are required because in most cases and especially for large problems, it is not always possible to find an optimal solution. Quality guarantees become possible by being able to compute tight lower bounds at a reasonable computational cost. In this chapter we have proposed two methods for finding tight lower bound for the Sparse TSP using the modified Linear Programming relaxation method and the Arc-cutset Partial Enumeration Strategy. When the LP relaxation method is used to find a lower bound for the ILP Sparse TSP, finding arc-cutset constraints is a headache especially for large problems. There are procedures for identifying violated arc-cutset constraints automatically in practice, such as the separation routines. These procedures are computational expensive and therefore were not used in this study. The Arc-cutset Partial Enumeration Strategy proposed is a simple and fast way of getting a lower bound without spending time in a separation algorithm. Computational results show that the lower bounds obtained by using this method are as comparable as those obtained using Separation algorithms. A lower bound on the optimal value (assuming a minimization problem) is obtained from a relaxation of the integer program. In the past fifteen years attention has shifted from

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

57

Lagrangian Relaxation to Linear Programming relaxation, since the latter type of relaxation can be strengthened more easily by using cutting planes. Combining cutting planes and Lagrangian relaxation usually causes convergence problems as discussed by Aardal et al (Aardal et al., 1997). Utilising various modified LP relaxation to suit the Sparse TSP has given us the tightest lower bound of all lower bound techniques we have discussed in this chapter.

5. References Aardal, K. et al. (1997). A decade of Combinatorial Optimization, Working paper, Uetrecht University, Computer Science Department, Netherlands. Adrabinski, s. A. & Syslo, M. M. (1983). Computational experiments with some approximation algorithms for the travelling salesman problem. Zastos. mat., 18, 1, 91-95. Bellmore, M. & Nemhauser, G. L. (1968). The Traveling salesman problem: A survey. Operations Research, 16, 538-558. Bentley, J. J. (1993). Fast Algorithms for Geometric Traveling Salesman Problems. ORSA Journal on Computing, 4, 4, 387-411. Bentley, J. L. (1990). Experiments on traveling salesman heuristics, The 1st Annual ACMSIAM Symposium on Discrete Algorithms, SIAM, Philadelphia, PA., 91-99. Bentley, J. L. (1990). K-d trees for semidynamic point sets, The 6th Annual Symposium on Computational Geometry, ACM, New York, 187-197. Bentley, J. L. (1975). Multidimensional binary search trees used for associative search. Comm. ACM, 18, 309-517. Bock, F. (1958). An algorithm for solving Traveling Salesman and related network optimization problems, inproceedings 14th National meeting of the ORSA, St. Louis, Mo., St. Louis, Mo. Reeves C.R. (1993). Modern Heuristic Techniques for Combinatorial Problems, McGraw-Hill Book Company. Camerini, P. et al. (1975). Travelling salesman problem: Heuristically guided search and modified gradient techniques. Christofides, N. (1979). The Travelling Salesman Problem, Combinatorial Optimization, N. Christofides, Mingozzi, A., Toth, P. and Sandi, C., 131-149, John Wiley and Sons. John Wiley and Sons. Christofides, N. & Eilon, S. (1979). Algorithm for large-scale Traveling Salesman Problems. Operational Research Quarterly, 23, 4, 511-518. Claus, A. (1984). A new formulation for the traveling salesman problem. SIAM Journal of Algebraic Discrete Methods, 5, 21-25. Cornuéjols, G. et al. (1985). The travelling salesman problem on a graph and some related integer polyhedra. Mathematical Programming, 33, 1-27. Croes, G. A. (1958). A method for solving traveling salesman problems. Operations Research, 6, 791-812. Crowder, H. & Padberg, M. (1980). Solving large-scale symmetric travelling salesman problem to optimality. Management Science, 26, 495-509. Dantzig, G. et al. (1954). Solution of a large-scale Traveling-Salesman Problem. Operations Research, 2, 393-410.

58

Computational Intelligence and Modern Heuristics

Feo, T. A. & Resende, M. G. C. (1995). Greedy randomized adaptive search procedures. Journal of Global Optimization, 6, 109-118. Fleischmann, B. (1985). A cutting plane procedure for travelling salesman problem on road networks. European Journal of Operational Research, 21, 307-317. Fox, K. et al. (1980). An n-constraint formulation of the (time-dependent) traveling salesman problem. Operations Research, 28, 1018-1021. Fredman, M. L. et al. (1995). Data Structures for Travelling Salesmen. Journal of Algorithms, 18, 432-475. Gabovich, E. J. (1970). The small travelling salesman problem. 19, 27-51. Garey, M. (1976). Some NP-complete geometric problems, inproceedings Proceedings of the 8th SIGACT Symp. on the theory of computing, 10-22. Garey, M. R. & Johnson, D. S. (1979). Computers and Intractability: A Guide to the theory of NPCompleteness, W.H. Freeman, San Francisco. Gendreau, M. et al. (1992). New Insertion and Postoptimization procedure for the traveling salesman problem. Operations Research, 40, 1086-1094. Glover, F. (1995). Tabu thresholding: improved search by non-monotonic trajectories. ORSA Journal on computing, 7, 426-436. Glover, F. (1995). Tabu search fundamentals and uses, Graduate School of Business, University of Colorado, Boulder. Glover, F. (1992). New ejection chain and alternating path methods for the traveling salesman problems, Operations research and computer science: new developemnts in their interfaces, O. Balci, Sharda, R. and Zenios, S. A., 27-49, Pergamon Press, Oxford., Pergamon Press, Oxford. Goemans, M. X. (1995). Worst-case Comparison of valid Inequalities for the TSP. Mathematical Programming, 69, 335-349. Golden, B. et al. (1980). Approximate travelling salesman algorithms. Operations Research, 28, 3, 694-711. Golden, B. L. & Stewart, W. R. (1985). Empirical analysis of heuristics, The Traveling Salesman Problem, E. L. Lawler, Lenstra, J. K., Kan, A. H. G. R. and Shmoys, D. B., 207-249, John Wiley and Sons Ltd., John Wiley and Sons Ltd. Held, M. & Karp, R. M. (1970). The Travelling Salesman Problem and Minimum spanning Trees, Part I. Operations Research, 18, 1138-1162. Held, M. & Karp, R. M. (1971). The Travelling Salesman Problem and Minimum spanning Trees, Part II. Mathematical Programming, 1, 6-25. Hu, T. C. et al. (1995). Old bachelor acceptance: A new class of non-monotonic threshold accepting methods. ORSA Journal on computing, 7, 417-425. Johnson, D. S. & McGeoch, L. A. (1995). The Traveling Salesman Problem: A case study, Local search in Combinatorial Optimization, E. Aarts and Lenstra, J. K., 215-310, John Wiley and Sons Ltd., John Wiley and Sons Ltd. Johnson, D. S. et al. (1996). Asymptotic Experimental Analysis for the Held-Karp Traveling Salesman Bound, Proceedings of the 7th Annual ACM-SIAM symposium on Discrete Algorithms, 341-350, January 1996. Johnson, D. S. (1990). Local optimization and the traveling salesman problem, ICALP '90, 446-461, Springer-Verlag.

Computational Experience in Methods for Finding Tight Lower Bounds for the Sparse Travelling Salesman Problem

59

Júnger, M. et al. (1995). The traveling salesman problem, Network Models, Handbooks in Operations Research and Management Science, M. O. Ball, Magnanti, T. L., Monma, C. L. and Nemhauser, G. L., 225-330, North-Holland. Amsterdam, North-Holland, Amsterdam. Karp, R. M. (1972). Reducibility among Combinatorial Problems, Complexity of Computer Computations, R. E. Miller and Thatcher, J. W., 85-103, Plenum Press, New York., Plenum Press, New York. Lawler, E. L. et al. (1985). The Traveling Salesman Problem, John Wiley and Sons Ltd. Lin, S. (1965). Computer solutions of the traveling salesman problem. The Bell system technical journal, 44, 2245-2269. Lin, S. & Kernighan, B. W. (1973). An effective heuristic algorithm for the traveling salesman problem. Operations Research, 21, 498-516. Little, J. et al. (1963). An algorithm for the traveling salesman problem. Operations Research, 11, 6, 972-989. Miliotis, P. (1976). Integer programming approaches to the traveling salesman problem. Mathematical Programming, 15, 367-378. Miller, C. et al. (1960). Integer programming formulations and traveling salesman problem. Journal of the Association for Computing Machinery, 7, 326-329. Naddef, D. (1992). The binested inequalities for the symmetric traveling salesman Polytope. Mathematics of Operations Research, 17, 4, 882-900. Nemhauser, G. L. & Wolsey, L. A. (1988). Integer and Combinatorial Optimization, John Wiley and Sons Ltd. Osman, I. H. & Kelly, J. P. (1996). Meta-heuristics : Theory and Applications, Kluwer Academic Publishers. Osman, I. H. (1995). An Introduction to Meta-Heuristics, Operational Research Tutorial papers, M. Lawerence and Wilson, C., 92-122, Operational Research Society Press. Birmigham, U.K., Operational Research Society Press, Birmigham, U.K. Osman, I. H. (1993). Metastrategy simulated annealing and Tabu search for the vehicle routing problem. Annals of Operations Research, 41, 421-432. Osman, I. H. (1995). Heuristics for generalized assignment problem, simulated annealing and Tabu search approaches. OR Spektrum, 17, 211-228. Osman, I. H. & Christofides, N. (1994). Capacitated clustering problems by hybrid simulated annealing and tabu search. International Transactions in Operational Research, 1, 317329. Padberg, M. & Rinaldi, G. (1989). A branch-and-cut approach to a traveling salesman problem with side constraints. Management Science, 35, 11, 1393-1414. Padberg, M. & Rinaldi, G. (1991). A branch-and-cut algorithm for the resolution of largescale symmetric traveling salesman problems. SIAM review, 33, 1, 60-100. Padberg, M. W. & Hong, S. (1977). On the symmetric travelling salesman problem: A computational study. Papadimitriou, C. H. & Steiglitz, K. (1982). Combinatorial Optimization : Algorithms and Complexity, Prentice-Hall, Inc. Reeves, C. R. (1993). Modern Heuristic Techniques for Combinatorial Problems, McGraw-Hill Book Company. Rego, C. (1998). Relaxed tours and path ejections for the traveling salesman problem. European Journal of operational research, 2, 522-538.

60

Computational Intelligence and Modern Heuristics

Reinelt, G. (1992). Fast Heuristics for Large Geometric Traveling Salesman Problems. ORSA Journal on Computing, 4, 2, 206-217. Reinelt, G. (1994). The traveling salesman: Computational solutions for TSP applications, Springer Verlag, 0-387-58334-3. Rosenkrantz, D. J. et al. (1977). An analysis of several heuristics for the travelling salesman problem. Siam Journal of Computing, 6,3, 1977. Rubinshtein, M. I. (1971). On the symmetric TSP. Automatika I Telemekhanika, 6, 126-126. Sahni, S. & Gonzales, T. (1976). P-complete approximation problem. J. ACM, 23, 555-565. Sharda, R. (1994). Neural networks for the MS/OR analyst. An application bibliography. Interfaces, 24, 116-125. Shmoys, D. A. & Williamson, D. P. (1990). Analyzing the Held-Karp TSP bound: A monotonicity property with application. Information Processing Letters, 35, 281-285. Stewart Jr, W. R. (1987). Accelerated branch exchange heuristics for symmetric travelling salesman problems. Networks, 17, 423-437. Storer, R. H. et al. (1995). Local search in problem and heuristic space for job shop scheduling. ORSA Journal on Computing, 7, 453-458. Swamy, M. N. S. & Thulasiraman, K. (1981). Graphs, Networks, and Algorithms, John Wiley and Sons Ltd. Valenzuela, C. L. & Jones, A. J. (1996). Estimating the Held-Karp lower bound for the geometric TSP. European Journal of Operational Research, 102, 157-175. Wolsey, L. A. (1980). Heuristic analysis, linear programming and Branch and Bound. Mathematical Programming Study, 13, 121-134.

5

Modelling Access Control with Dynamic Role Binding 1Al-Zaytoonah

Al-Dahoud1 Ali and Dr.K.Chitra2

University, Jordan, 2Department of Computer Applications, Thiagarajar School of Management Madurai, Tamil Nadu, India [email protected], [email protected]

Abstract To achieve the goal of realizing object adaptation to environments, we model the object with its role using parameterized UML models. An environment is defined as a field of collaboration between roles and an object adapts to the environment assuming one of the roles. Objects can freely enter or leave environments and belong to multiple environments at a time so that dynamic adaptation or evolution of objects is realized. Organizations use Role-Based Access Control to protect computer-based resources from unauthorized access. This paper describes a method for modeling access control for dynamic role binding using parameterized UML design models. Reusable parameterized UML models are specified as patterns and are expressed using UML template diagrams. Developers can use the models to identify their policy violations. The method is illustrated using a small banking application. Key Words: Parameterized UML, Object adaptation, Evolution, Reusable.

1. Introduction Objects represent things or concepts of the real world and it is this representation feature that gives the object-oriented technology the high modeling capability. Objects in the real world exist in various environments. If an object permanently resides in a fixed environment, the structure and behavior of the object can possibly stay unchanged over time. However, environments surrounding objects may not be stable due to various reasons. If objects are humans or manufacturing equipment, their environment changes periodically between the day and the night and between the weekdays and the weekend. When an object moves, the surrounding environment naturally changes. Even if an object stays at the same place for a certain period of time, the environment itself may dynamically change. Corresponding to such environmental change, objects adaptively change themselves. Conversely, objects may spontaneously evolve, causing change in their relation to the environment and that in turn may trigger change in the environment. Moreover, there generally exist multiple environments around an object and the object may selectively

62

Computational Intelligence and Modern Heuristics

belong to a subset of them at a time and the selection of environments may also change dynamically. How is such adaptation or evolution of objects handled in the world of object-oriented modeling and programming? As many researchers have pointed out, current widely-used object-oriented modeling and programming languages do not conveniently support such flexibility. Motivation of our research is to build a parameterized UML model that is flexible enough to cope with future changes but simple enough to describe and reason about the design validity. The model to be described in the succeeding sections has the following features. 1. Objects can freely enter or leave environments and belong to multiple environments at a time so that dynamic adaptation or evolution of objects is realized. 2. Environments and roles are the first class constructs at model description time so that separation of concerns is not only materialized as a static structure but also observed as behaviors. 3. Environments are independent reuse components to be deployed separately from objects that participate in them.

2. Access Control for Dynamic Role Binding (DRBAC) Roles are considered for listing up functions or behaviors of an object to define a clear boundary of the object, thus their granularity is smaller than objects and conceptually comparable to the level of methods. However, the major motivation of this paper is to design access control for object adaptation to environments using parameterized UML. An environment in the context of role model is regarded as a collaboration field and in order to realize adaptation, objects should be allowed to enter collaboration environments by assuming roles and to leave from environments by discarding roles dynamically. Dynamic Role Binding Access Control (DRBAC) constraints can be organized as follows: Core DRBAC, Hierarchical DRBAC, Static Separation of Duty Relations, and Dynamic Separation of Duty Relations. The Core DRBAC requires that users (i.e. Objects) be assigned to environment, users be assigned to roles (job function) corresponding to that environment, roles be associated with permissions (approval to perform an operation on a database), and users acquire permissions by being assigned to roles. The Core DRBAC places a constraint on the cardinalities of the user-role assignment relation that when a user enters an environment he is assigned a role when he/she leaves that environment he/she discards that role. The Core DRBAC does not place any constraint on the cardinalities of the permission-role association. Core DRBAC also includes the notion of user environments. A user enters an environment during which he activates a subset of the roles assigned to him. Each user may belong to multiple environments; however, each environment is associated with only one user. The operations that a user can perform in an environment depend on the roles activated in that environment and the permissions associated with those roles.

Modelling Access Control with Dynamic Role Binding

63

Hierarchical DRBAC adds features supporting role hierarchies (RH). Hierarchies are used to describe a structure of roles in an organization. Role hierarchies define an inheritance relation among the roles. Role r1 inherits from role r2 only if all permissions of r2 are also permissions of r1 and all users of r1 are also users of r2. The inheritance relationship is reflexive, transitive and anti-symmetric. Static Separation of Duty (SSD) relations are necessary to prevent conflict of interests that arise when a user gains permissions associated with conflicting roles (roles that cannot be assigned to the same user). SSD relations are specified for any pair of roles that conflict. The SSD relation places a constraint on the assignment of users to roles, that is, assignment to a role that takes part in an SSD relation prevents the user from being assigned to the related conflicting role. The SSD relationship is symmetric, but it is neither reflexive nor transitive. SSD may exist in the absence of role hierarchies (referred to as SSD DRBAC), or in the presence of role hierarchies (referred to as hierarchical SSD DRBAC). The presence of role hierarchies complicates the enforcement of the SSD relations: before assigning users to roles not only should one check the direct user assignments but also the indirect user assignments that occur due to the presence of the role hierarchies. Dynamic Separation of Duty (DSD) relations aim to prevent conflict of interests as well. The DSD relations place constraints on the roles that can be activated in a user’s environment. If one role that takes part in a DSD relation is activated, the user cannot activate the related (conflicting) role in the same session. A model of DRBAC is shown in Fig. 1. RH DSD

SSD

ENV

Enters/ Exits

PERM Role Assignment

ROLE

OPER

DB

Permission Assignment

Activates

Session Assignment

OBJ Object Sessions

SESSIONS

Fig. 1. Access Control in Dynamic Role Binding The DRBAC in Fig. 1 consists of: 1) a set of objects (OBJ) where an object is an intelligent autonomous agent, 2) a set of environments (ENV) where an object enters or leaves 2) a set

64

Computational Intelligence and Modern Heuristics

of roles (ROLE) where a role is a job function which is assigned to the object when it enters an environment and is discarded when it exits the environment, 3) the database (DB) where DB is an entity that contains or receives information, 4) a set of operations (OPER) where an operation is an executable image of a program, and 5) a set of permissions (PERM) where a permission is an approval to perform an operation on database. The cardinalities of the relationships are indicated by the absence (denoting one) or presence of arrows (denoting many) on the corresponding associations. For example, the association of an object to an environment and the association of an object to role are one-to-many. All other associations shown in the figure are many-to-many. The association labeled Role Hierarchy (RH) defines the inheritance relationship among roles. The association labeled SSD specifies the roles that conflict with each other. The association labeled DSD specifies the roles that cannot be activated within an environment by the same user.

3. A Reusable DRBAC Model In this section a DRBAC pattern is described as a UML template class diagram. A class diagram is obtained from a template diagram by binding the parameters to values. Fig. 2 shows a class diagram template describing hierarchical DRBAC with SSD and DSD. The symbol “|” is used to indicate parameters. The class diagram template shown in Fig. 2 consists of class and association templates. A class template is a class descriptor with parameters. Class templates are associated with attribute templates (e.g., |Name : String in Role) and operation templates (e.g., |grantPermission in Role). Association templates (e.g., |UserAssignment) consist of parameters for association names and association-end multiplicities. The OCL constraints in Fig. 2 restrict the values that can be bound to association-end multiplicity parameters. The multiplicity “1” on the UserSessions association-end attached to Object is strict: a session can only be associated with one user. The User Object class template defines classes that describe Objects. When a user enters an environment, he is assigned a role (assignRole). Then he creates a new session (createSession), delete a session (deleteSession). When he exits that environment, his role is discarded (deassignRole). A UserSessions link (i.e., an instance of an association obtained by binding the parameters of UserSessions to values) is created by a createSession operation (i.e., an operation obtained by binding the operation template parameters to values) and deleted by a deleteSession operation. The operation assignRole creates a RoleAssignment link; the deassignRole removes a RoleAssignment link. The class template Role is used to produce classes representing roles with behavior that (1) associates a new permission with the role (grantPermission), (2) deletes an existing permission associated with the role (revokePermission), (3) adds an immediate inheriting role (addInheritance), (4) deletes an immediate inheriting role (deleteInheritance), (5) adds a role to the set of conflicting roles (addSSDRole), (6) deletes a role from the existing set of conflicting roles (deleteSSDRole), (7) checks whether the role is in an SSD relationship with a given role in the presence of hierarchies (checkSSD), (8) checks whether the role has a given permission (checkAccess), (9) checks whether the role is in a DSD relation with a given role (checkDSD), (10) deletes a DSD relation between the role and a given role (deleteDSDRole), and (11) adds a DSD relation with a given role (addDSDRole).

Modelling Access Control with Dynamic Role Binding

65

|Environment assgnRole(|r : |Role) 1 deassignRole(|r :|Role)

* |UserAssignment

*

createSession() : |s:|Session deleteSession(|s : |Session)

*

*

1 |User Sessions

* |SessionAssignment

*

|Session

grantPermission(|p : |Permission) revokePermission(|p : |Permission) checkAccess(|db : |DB, |op : |Operation) : |Boolean checkSSD(|r : |Role) : |Boolean deleteSSDRole(|r : |Role) addSSDRole(|r : |Role) addInheritance(|r : |Role) deleteInheritance(|r : |Role) checkDSD(|r : |Role) : |Boolean deleteDSDRole(|r : |Role) addDSDRole(|r : |Role) bind(|u : |User) unBind(|u : |User)

*

|Permission Assignment

*

addActiveRole(|r : |Role) dropActiveRole(|r : |Role) checkAccess(|db : |DB, |op : |Operation) : |Boolean

Senior *

Name : String

|Enters/|Exits

1 |User

|RH

Junior *

* * |Role

*

|Role Assignment

1..*

|DSD

|SSD

* |Permission checkAccess(|db : |DB, |op : |Operation) : |Boolean

*

* |DB

1..*

*

1..*

* |Operation

Fig. 2. A DRBAC Class Diagram Template The class template Session is associated with the template operations: addActiveRole (activates a role in a session), dropActiveRole (deactivates a role in a session), and checkAccess (checks whether the role has the permission to perform an operation on the database). The class template Permission is associated with an operation template, checkAccess, that checks whether the role has the permission to perform the operation on the database. Each operation template is associated with an OCL template expression that produces OCL preand post-conditions when the template parameters are bound to values. Pre- and post-condition templates associated with the createSession and grantPermission operation templates are given below: context | User::| createSession( ):(| s: | Session) post: result = |s and |s.oclIsNew( ) = true and self.| Session includes(|s) context |Role:: |grantPermission ( |p: |Permission) post: self.| Permission includes(|p)

66

Computational Intelligence and Modern Heuristics

We express DRBAC constraints that restrict SSD and DSD relationships as OCL template expressions. Examples of these constraints are given below: – SSD constraint. A user cannot be assigned to two roles that are involved in an SSD relation. context |User inv: self. |Role forAll(r1, r2 | r1.| SSD excludes(r2)) – Hierarchical SSD constraint. There cannot be roles in an SSD relation which have the same senior role. context _ Role inv: let allSenior(r1) = r1.senior -> union(r1.senior -> collect(r2 | allSenior(r2))) in self. |SSD -> forAll(r1 | allSenior(r1) -> excludesAll(allSenior(self)) – DSD constraint. A user cannot activate two roles in DSD relation within a session. context | User inv: |self. |Session. |Activates -> forAll(r1, r2 |r1. |DSD -> excludes(r2))

4. DRBAC Model on Banking Application To illustrate this approach we use a simple banking application taken from [5]. The application is used by various bank officers to perform transactions on customer deposit accounts, customer loan accounts, ledger posting rules, and general ledger reports. The transactions include 1) create, delete, or modify customer deposit accounts, 2) create, delete, or modify customer loan accounts, 3) modify the ledger posting rules, and 4) create general ledger report. When a user enters Bank environment, he is assigned a BANKROLE when he exits bank environment he is assigned another role according to the environment he enters and assigned permissions depending on the role he is assigned. Fig. 3 shows DRBAC class diagram for the bank environment.

5. DRBAC Policies applied using Object Diagrams DRBAC policies when applied to a role in an environment constrain how system users access system resources. They determine 1) the assignment of roles to system users, 2) the permissions associated with roles in the environment, 3) the inheritance relationships between roles, and 4) the SSD and DSD relationships between roles. In this section we illustrate how DRBAC policies can be described by object diagrams when the user is assigned a ROLE. The DRBAC model supports the specification of four types of policies: 1) core policies that conform to core DRBAC, that is, policies that determine user-role and role-permission assignments, 2) hierarchical policies that conform to hierarchical DRBAC, that is, policies that determine inheritance relationships between roles, 3) SSD policies that conform to SSD DRBAC, that is, policies that determine what roles are conflicting, and 4) DSD policies that conform to DSD DRBAC, that is, policies that determine what roles to be activated in a session. A set of DRBAC policies for the banking system is given below:

Modelling Access Control with Dynamic Role Binding

67

Environment

1..*

* User Assignment

1..*

createSession() : s:BankSession deleteSession(s : BankSession)

1 1..*

User Sessions

SessionAssignment

1..* BankSession

Senior *

Name : String

Enters/Exits

1..*

RH

Junior *

* * BankRole

*

Role Assignment

1 BankUser

DSD

SSD

assignRole(r : BankRole) deas signRole(r : BankRole) 1

1..*

grantPermission(p : Permission) revokePermission(p : Permission) checkAccess(db : BankDB, op : Transaction) : Boolean checkSSD(r : BankRole) : Boolean deleteSSDRole(r : BankRole) addSSDRole(r : BankRole) addInheritance(r : BankRole) deleteInheritance(r : BankRole) checkDSD(r : BankRole) : Boolean deleteDSDRole(r : BankRole) addDSDRole(r : BankRole) bind(u : BankUser) unBind(u : BankUser) 1..* Permission Assignment 1..*

Permission

addActiveRole(r : BankRole) dropActiveRole(r : BankRole) checkAccess(db : BankDB, op : Transaction) : Boolean

(from )

checkAccess(db : DB, op : Operation) : Boolean

1..*

1..* 1..* BankDB

Account

LedgerPostingRule

1..* *

Transaction

* *

isInputOf

*

GeneralLedgerReport

*

*

Create

Modify

Delete

regulatesPostingOf

CustomerAccount

LoanAccount

Fig. 3. A DRBAC Class Diagram for a Banking Application Core policies: The roles of the banking system (instances of BankRole) are teller, customerServiceRep, accountant, accountingManager and loanOfficer. The permissions assigned to these roles are given below: P1 A teller can modify customer deposit accounts. P2 A customer service representative can create or delete customer deposit accounts. P3 An accountant can create general ledger reports. P4 An accounting manager can modify ledger-posting rules. P5 A loan officer can create and modify loan accounts. Fig. 4. Shows the object diagrams describing policies P1 to P5 respectively.

68

Computational Intelligence and Modern Heuristics

Fig. 4. Object Diagrams for Policies P1 to P5 Hierarchical policies: A role hierarchy defines inheritance relationships between roles. Through the inheritance relationship, a senior role inherits the permissions of its junior roles and any user assigned to the senior role is also assigned to the junior roles. The hierarchical policies in the banking application are stated below: H1 Customer service representative role is senior to the teller role. H2 Accounting manager role is senior to the accountant role. Fig. 5(a),(b) describe policies H1 and H2 respectively.

Fig. 5(a), (b) Object Diagrams for Policies H1 and H2

Modelling Access Control with Dynamic Role Binding

69

SSD policies: SSD policies prevent a user from being assigned to two conflicting roles. For the banking system the following pairs of roles are conflicting: {(teller, accountant), (teller, loanOfficer), (loanOfficer, accountant), (loanOfficer, accountingManager), (customerServiceRep, accountingManager)} The object diagram in Fig. 6 describes the SSD RBAC policies.

Fig. 6. Object Diagram for SSD Policies DSD policies: DSD policies prevent a user from playing a role in a session, if another role in a DSD relation has been activated. For the banking system the following pair of roles are in DSD relation: {(customerServiceRep, loanOfficer)} The object diagram in Fig. 7 describes the DSD DRBAC policy.

Fig. 7. Object Diagram for DSD Policy

6. Identifying Conflicts in Application-Specific DRBAC Policies In this section we show how DRBAC violation patterns expressed as object diagram templates can be used to identify conflicts. If a violation pattern exists in an object diagram describing a policy, then a conflict exists. Fig. 8 shows object diagram templates that when instantiated produce object structures that violate DRBAC constraints. Fig. 8(a) describes structures in which a user is assigned to roles in an SSD relationship (violation of the SSD constraint). Fig. 8(b) describes structures in which two roles in an SSD relationship have a

70

Computational Intelligence and Modern Heuristics

common senior role and structures in which a senior role is in an SSD relationship with a junior role (both are violations of the hierarchical SSD constraint). Fig. 8(c) describes structures in which a user in a session activates two roles that are in a DSD relationship (a violation of the DSD constraint). Formally, an object diagram has the violation described by a violation pattern if there exists a binding that produces an object structure contained in the object diagram.

Fig. 8. (a) Violation of SSD Constraint

Fig. 8. (b) Violations of Hierarchial SSD Constraint

Fig. 8. (c) Violation of DSD Constraint

Modelling Access Control with Dynamic Role Binding

71

7. Related Work Tidswell and Jaeger [21] propose an approach to visualizing access control constraints. They point out the need for visualizing constraints and the limitations of previous work on expressing constraints. A drawback of their work is that they created a new notation for specifying constraints and it is not clear how the new notation can be integrated with other widely-used design notations. Aspect-oriented programming with AspectJ has a feature of adding aspects dynamically as well as statically [14]. The main objective of writing aspects is to deal with cross-cutting concerns. It implies that there already exists some structure of module decomposition but in adding a new type of concern, related pieces of code are distributed among modules, crosscutting the existing structure. Although there have been efforts of designing software from the beginning based on the AOP method under the name of “early aspects”[20], the normal framework of mind for thinking aspects assumes the existing program code as a target of inserting advices to join points. A large volume of research (e.g., see [2–4, 6, 7, 11, 12, 14] exists in the area of access control policy specification. Formal logic-based techniques (e.g., see [2–4, 6, 11, 14]) are often used to specify security policies. The use of mathematical concepts and notation that are not familiar to software developers makes them difficult to use and understand. Other researchers have used high-level languages to specify policies [12, 13, 19, 20]. Although high-level languages are easier to understand than formal logic-based approaches, they are not analyzable. Some work has been done on modeling system security using UML. Jurjens [15] proposes UMLsec, a UML profile for modeling and evaluating security aspects based on the multilevel security model. Lodderstedt et al. propose SecureUML [17], an extension of the UML that defines security concepts. These approaches mainly focus on extending the UML notation to better reflect security concerns.

8. Conclusion The work described in this paper focuses on specifying the dynamic role binding and access control when a role is assigned to an Object. Checking for the presence of a pattern in an object diagram specifying a set of policies is essentially a search for a sub graph in an object diagram. The approach of binding objects and roles have the following characteristics: Composition takes place when an object instance and a role instance are bound together; an object instance can be bound to multiple role instances residing in different environments; when an object enters an environment it is assigned a role, when it exits that environment the associated role is discarded by the object.

9. References 1. G.J. Ahn and R. Sandhu. Role-based Authorization Constraints Specification. ACM Transactions on Information and Systems Security, 3(4):207–226, November 2000. 2. S. Barker. Security Policy Specification in Logic. In Proceedings of the International Conference on Artificial Intelligence, pages 143–148, Las Vegas, NV, 2000.

72

Computational Intelligence and Modern Heuristics

3. S. Barker and A. Rosenthal. Flexible Security Policies in SQL. In Proceedings of the 15th Annual IFIP WG 11.3 Working Conference on Data and Applications Security, Niagara-onthe-Lake, Canada, 2001. 4. E. Bertino, P. Bonatti, and E. Ferrari. TRBAC: A Temporal Role-Based Access Control Model. In Proceedings of the 5th ACM Workshop on Role-Based Access Control, pages 21–30, Berlin, Germany, 2000. 5. R. Chandramouli. Application of XML Tools for Enterprise-Wide RBAC Implementation Tasks. In Proceedings of 5th ACM workshop on Role-based Access Control, Berlin, Germany, July 2000. 6. F. Chen and R. Sandhu. Constraints for Role-Based Access Control. In Proceedings of the 1st ACM Workshop on Role-Based Access Control, Gaithersburg, MD, 1995. 7. N. Damianou and N. Dulay. The Ponder Policy Specification Language. In Proceedings of the Policy Workshop, Bristol, U.K., 2001. 8. D.F. Ferraiolo, R. Sandhu, S. Gavrila, D. R. Kuhn, and R. Chandramouli. Proposed NIST Standard for Role-Based Access Control. ACM Transactions on Information and Systems Security, 4(3), August 2001. 9. Geri Georg, Robert France, and Indrakshi Ray. An Aspect-Based Approach to Modeling Security Concerns. In Proceedings of the Workshop on Critical Systems Development with UML, Dresden, Germany, 2002. 10. Geri Georg, Indrakshi Ray, and Robert France. Using Aspects to Design a Secure System. In Proceedings of the Interational Conference on Engineering Complex Computing Systems (ICECCS 2002), Greenbelt, MD, December 2002. ACM Press. 11. R. J. Hayton, J. M. Bacon, and K. Moody. Access Control in Open Distributed Environment. In IEEE Symposium on Security and Privacy, pages 3–14, Oakland, CA, May 1998. 12. M. Hitchens and V. Varadarajan. Tower: A Language for Role-Based Access Control. In Proceedings of the Policy Workshop, Bristol, U.K., 2001. 13. J. A. Hoagland, R. Pandey, and K. N. Levitt. Security Policy Specification Using a Graphical Approach. Technical Report CSE-98-3, Computer Science Department, University of California Davis, July 1998. 14. S. Jajodia, P. Samarati, and V. S. Subrahmanian. A Logical Language for Expressing Authorizations. In IEEE Symposium on Security and Privacy, pages 31–42, Oakland, CA, May 1997. 15. J. Jurjens. UMLsec: Extending UML for Secure Systems Development. In Proceedings of Fifth International Conference on the Unified Modeling Language, pp. 412-425, pages 412–425, Dresden, Germany, October 2002. 16. Dae-Kyoo Kim, Robert France, Sudipto Ghosh, and Eunjee Song. Using Role-Based Modeling Language (RBML) as Precise Characterizations of Model Families. In Proceedings of the International Conference on Engineering Complex Computing Systems (ICECCS 2002), Greenbelt, MD, December 2002. ACM Press. 17. T. Lodderstedt, D. A. Basin, and J. Doser. SecureUML: A UML-Based Modeling Language for Model-Driven Security. In Proceedings of Fifth International Conference on the Unified Modeling Language, pages 426–441, Dresden, Germany, October 2002. 18. B.T. Messmer and H. Bunke. Subgraph Isomorphism in Polynomial Time. In Lecture Notes in Computer Science Graph Theory - ECCV’98, Springer-Verlag, Berlin, 1998.

Modelling Access Control with Dynamic Role Binding

73

19. OASIS. XACML Language Proposal, Version 0.8. Technical report, Organization for the Advancement of Structured Information Standards, January 2002. Available electronically from http://www.oasis-open.org/committees/xacml. 20. C. Ribeiro, A. Zuquete, and P. Ferreira. SPL: An Access Control Language for Security Policies with Complex Constraints. In Proceedings of the Network and Distributed System Security Symposium, San Diego, CA, February 2001. 21. J. E. Tidswell and T. Jaeger. An Access Control Model for Simplifying Constraint Expression. In Proceedings of 7th ACM conference on Computer and communications security, pages 154–163, Athens, Greese, November 2000. 22. G. B. andWilliam Cook. Mixin-based inheritance. In OOPSLA 1990, pages 303–311, 1990. 23. D. Bardou and C. Dony. Split objects: a disciplined use of delegation within objects. In OOPSLA ’96, pages 122–137, San Jose, California, USA, Oct. 1996. 24.K.Beck and W. Cunningham. A laboratory for teaching object-oriented thinking. In OOPSLA ’89, pages 1–6, 1989.

74

Computational Intelligence and Modern Heuristics

6

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation Mircea Neagoe1, Dorin Diaconescu1, Codruta Jaliu1, Sergiu-Dan Stan2, Nadia Cretescu1 and Radu Saulescu1

Transilvania University of Brasov, Romania Technical University of Cluj-Napoca, Romania 1

2

1. Introduction The accuracy modelling of parallel-type robot structures is based on finding out the position and orientation errors of the end-effector in relation with the modelled error-sources. In the case of small (infinitesimal) deviations, the error model is expressed through a linear function using special matrices called error Jacobeans (Neagoe, 2001). Hence, the main objective of accuracy modelling is to express the error Jacobeans. The accuracy modelling of the parallel robots represents a real challenge for the researchers, due to the high level difficulties implied in the direct modelling of the errors and, as a result, in the errorJacobean description. Unlike the case of the serial robots, the analytical expression of the direct error-Jacobean for parallel structures is generally inaccessible or very complex; contrary, the inverse Jacobean can be obtained without major difficulties. The studies referring to the precision modelling of parallel structures are scarcely found in literature, the most of the papers dealing especially with the inverse kinematics problem of parallel structures. There can not be found important results concerning the direct Jacobean modelling, neither a generalization of modelling, due to the severe difficulties of modelling. Many papers present specific solutions for different specific parallel structures: Tau parallel robot (Cui et al., 2008), six-dof parallel kinematic machine Linapod (Pott & Hiller, 2008), a 4-DOF parallel manipulator H4 (Wu & Yin, 2008), 3-DOF planar parallel robots (Briot and Bonev, 2008), etc. Currently, the problem of the parallel robots kinematics is reduced to the expression of the inverse kinematic Jacobean. Three representative methods applied in kinematic modelling of parallel robots were identified: 1. The partial derivatives method, which consists firstly in identifying the geometric relations for the modelled parallel structure and, than, the partial derivation relative to the independent parameters (Merlet, 1990; Merlet & Gosselin, 1991). Generally, the obtained model can be expressed by the relation A dq B dX , used for the joint velocities dq/dt calculus in relation with the operational velocities dX/dt. In this case, the inverse matrix A-1 is easily obtained, A being a square matrix for Stewart platforms. On the other hand, to express

76

Computational Intelligence and Modern Heuristics

the operational deviations dX and, implicitly, the direct Jacobean assumes to inverse the matrix B, which has the dimension equal to the number of independent modelling parameters. 2. The vectorial method, which expresses the articular velocities through the vectorial relations of the kinematic modelling of velocities (Benea, 1996; Merlet, 1990). 3. The kinematic screws method, which obtains the kinematic model by vectorial transformations applied to the plückerien coordinates of a line in space (Ficher, 1986; Lee et al., 1999; Toyama & Hatae, 1989). Starting from the previous revealed aspects, the authors propose in the paper a general method, based on the use of homogenous operators, useful for accuracy modelling of parallel structures with any configuration and complexity, with application for a StewartDeltalab parallel platform. The chapter is structured in four main sections. The first section introduces the theoretical background on the proposed method meant for accuracy modelling of parallel robots and presents the steps and mathematical support of a general algorithm derived from this method. In the second part, the proposed modelling is concretely applied to derive the accuracy model of the Stewart–Deltalab platform, considering the independent kinematic parameters (independent joint variables) as error–sources. Numerical examples will be presented, based on the analytical closed-form accuracy model previously obtained. The third section will contains the authors’ contribution to the modelling of the Stewart– Deltalab platform accuracy, applying the same proposed modelling method and algorithm, considering a set of geometric parameters as error–sources. Also, numerical examples will be done. In the last section, relevant aspects regarding the experimental testing of the error models used in accuracy studies of spatial parallel–structures will be presented. The theoretical accuracy models of the Stewart–Deltalab platform are verified by experimental testing, in conformity with a concrete experimental research program and a specific mathematical support.

2. Theoretical background The method proposed for parallel robot accuracy modelling includes three main steps: 1. Breaking of parallel structure into open kinematic chains (OKC) and description of the error models for the obtained OKC, considered as independent chains, by applying the specific error modelling of serial robots (Gogu, 1995; Gogu et al., 1997). 2. Recovering the parallel structure by assembling the error models of OKC and finally expressing the dependent errors. 3. Description of the end-effector errors related to the independent errors, by replacing the dependent errors in the error model derived for one of the OKC (step 1) with their corresponding expressions (identified at step 2). Explanatory notes: ― Structurally, a parallel robot includes: Active (actuated) joints; the relative displacements in the actuated joints are the robot generalized variables (independent joint variable) of the structure. Thus, the deviations

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

77

of these variables become input errors (independent errors) in the accuracy modelling. Passive (non-actuated) joints; these joints are included in any parallel structure in order to obtain parallel-type links. The relative displacements in passive joints are functions of independent joint variables and, hence, displacement errors in passive joints, called dependent errors, depend on the independent errors. ― Modelling the influence of geometrical parameters on the end-effector accuracy is done on an equivalent structure, obtained from the initial structure by associating fictive joints to the geometrical parameters affected by errors: a prismatic joint is introduced for each linear error and a revolute joint – for each angular error. ― The proposed modelling requires only the inverse geometrical model of the parallel structure and the direct geometrical models of OKC. All these models are expressed, generally, without significant difficulty. The general case of a parallel robot structure (Fig. 1,a) is considered; it consists of a mobile platform (m) connected to the fixed one (f) by p kinematic chains (legs) AiBi, in a parallel layout. The spatial guiding of the mobile platform is obtained by actuating n joints nominated as active joints. In practice, generally p = n, each leg including only one active joint. For the sake of clarity, the following explanations have to be mentioned: ― For the simplicity, but without reducing the generality, Figure 1 shows only symmetrical legs in a parallel layout and their connecting joints to the base and moving platforms. In a general case, the robot legs can have different structures and usually include intermediate joints. ― The breakage of the parallel structure can be done in different ways: to the characteristic point of the end-effector, to the base joints or to any intermediate joints.

m

Bi

Om

Mobile platform (m)

Arm i

m

Bi

Om

Arm i

f Ai

f

Ai

Of

a

Base (fixed) platform (f)

Of

b

Fig. 1. Parallel robot structure in a general configuration (a), and the open chain i obtained by "disassembling" the parallel structure (b)

78

Computational Intelligence and Modern Heuristics

―

In the following modelling, the independent parameters will be designated by notation pind, k k while the dependent parameters by pdep; pind and pdep designate independent parameters

and respectively dependent parameters for the leg k (OKC k) of the parallel structure. The independent parameters pind designate active joint variables, in the case of joint error modelling, or geometrical parameters when the error model for geometrical deviations has to be established. In the global error modelling, both types of kinematic and geometrical parameters are considered independent. ― The end-effector errors can be reduced in the base, end-effector or other intermediate reference frame. In order to simplify the notations, the reference frame where the errors are reduced is not specified. The proposed modelling begins with a preliminary step: breaking the parallel structure into open kinematic chains (OKC); there are many splitting variants that can be applied, each of them giving specific features to the modelling algorithm (Neagoe, 2001). The variant used in the paper is based on breaking the parallel structure in the origin Om of the mobile frame m, obtaining the open chains OfAiBiOm, i = 1..p (Fig. 1,b); all the open chains have the mobile platform (end-effector) as the final element. The obtained p independent OKC have the same property: their extremity points are permanently coincident and, consequently, the end-effector’s errors for all the p OKC are identically! Further on, the steps of the proposed modelling algorithm and its specific mathematical aspects are briefly presented. ―

Step I: deriving the end-effector errors for the p OKC By applying the well known relations for open kinematic chains accuracy modelling (Gogu, 1995; Gogu et al., 1997 ; Paul, 1981), in the case of OKC i will be obtained: i

dx d y dz i i i i i J ind dpind J dep J dep dpdep , x y z

(1)

where J iind is the error Jacobean for the independent errors and J idep – the error Jacobean for the dependent errors of the parallel structure, i = 1..p. In this step, having only independent open kinematic chain (OKC), all the modelling parameters are characterized by independent errors. Step II: identification of the dependent errors In the parallel structure, the end-effector’s errors are the same for all the p OKC (the existence condition of a parallel structure). As a result, the following p-1 independent matrix equations are obtained:

J dp J dp J dp J dp , j ind

j ind

j dep

j dep

k ind

k ind

k dep

k dep

jk.

(2)

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

79

Without reducing generality, the following assumptions can be accepted: j = 1 and k = 2..p or j = 1..p–1 and k = j+1. Grouping together only the dependent terms from the left member of the equation (2), the relation (3) will be obtained:

J dp J dp 1 dep

k dep

1 dep

k dep

(3)

k k J ind dp ind J 1ind dp 1ind .

The p-1 equations (3) are grouped into a matrix system (4):

J dp J dp . dep

dep

ind

(4)

ind

where:

J dep

J 1dep 1 J dep 1 J dep

J 2dep 0 0

dp dp dep

0 J 1ind 1 0 J J ind ind , 0 1 J ndep J ind

0 J 3dep 0

dp dp

p dp 2dep dp dep ,

1 dep

ind

1 ind

0 0 , 0 J nind

0 3 J ind

2 J ind 0

0

0

2 p dp ind dp ind .

Finally, the dependent errors can be expressed through the following relation:

dp J J dp J dp . dep

dep

1

ind

ind

* dep

(5)

ind

The central problem of this modelling is to reverse the matrix Jdep. For kinematically determinate structures, matrix Jdep is always a square matrix of s×s dimension; s is equal to the number of dependent parameters and does not depend on the number of independent parameters considered in modelling. For the structures with a reduced complexity, the reversion can be obtained analytically; for the other cases, a numerical approach is recommended. Step III: end-effector errors establishment

The end-effector errors can be expressed by introducing the dependent error expressions (rel. 5) into (rel. 1), particularised for each arm. Considering the chain i, the end-effector errors become: i

dx d y dz i i i i* J ind dpind J dep J dep dpind J dpind . x y z

(6)

J J J J

(7)

Introducing the notation i dep

i* dep

*

* 1

J *2 J i* J *p ,

80

Computational Intelligence and Modern Heuristics

the error-Jacobean J of the parallel structure can be described as:

J

J 1* J *2 J i* J iind J *p .

(8)

The Jacobean matrix J given by relation (8) describes the linear transformation of independent errors into operational errors associated to the end-effector. The complexity of the Jacobean J depends on the reference frame used for reducing the errors. Most frequently in practice, the Jacobean J is reduced in the final reference frame m or in the fixed frame f (Fig. 1).

3. The Stewart platform presentation The Stewart DELTALAB platform (Fig. 2) is a parallel manipulator, composed by a moving platform connected to the base through 6 telescopic legs (of variable length). The links between the six legs and the two platforms are materialized by spherical joints. The parallel structure geometry is completely defined by the coordinates of the points Ai şi Bi (the centres of spherical joints, Fig. 3), which can be established by means of parameters rf = 270 mm; rm = 195 mm; = 4.25°; = 5.885° (Fig. 2). As a result, the analyzed Stewart platform can be geometrically defined as follows (Fig. 2): The fixed platform: — The fixed coordinate system attached to the fixed platform: f(Ofxfyfzf), is placed in the plate’s centre (the centre of the circle of radius rf). — The centres of the spherical joints, formed of the six cylinders (legs) with the fixed platform, are placed in points Ai, distributed on the circle of radius rf. — The points Ai are organized in equidistant groups formed of two appropriate adjacent points separated by the angle 2. The moving platform: — The mobile coordinate system: m(Omxmymzm), placed in the plate’s centre (the centre of the circle of radius rm). — The centre points Bi of the spherical joints, distributed on a circle of radius rm. — The points Bi are also organized in equidistant groups with the centre angle 2. The platform initial position (at minimum high) is characterized through the position of point Om' in f (see Fig. 2), the moving platform being parallel to the base. The distance between Om' and Of in this position is defined by the parameter h = OfOm = 326.679 mm, for which the minimum length of the cylinders (active joints) is Li = AiBi = 387 mm. The spatial guidance of the mobile platform related to the fixed one, is described by a set of 6 parameters: 3 position (displacement) parameters, given by the coordinates of the point Om in relation to the reference frame m' attached to the moving platform, expressed in the fixed reference frame f, Om'Om xm i f y m j f zm k f . (9)

3 orienting parameters: the angles 1, 2 şi 3 , which characterize the reference frame m orienting in relation to the reference frame m'; the associated rotational matrix is described by the following relation:

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

zm

ym r m

zf

B3

B2

B4

x m B1

The moving platform

Om' Om

B5

L4

Bi

L2 L3 A3

B6

L5

L1

A2

L6

A5 The fixed platform

Ci yf

Of

A4

81

rf Ai

A1

a

b

xf

A6

Fig. 2. The structure of the Stewart–DELTALAB platform (a) and of the leg i (b) zm

Bi zi, yi, xi

ym

xm

P (rmi, zi, yi)

yi ║zf

Om

xi

Bi

║xf zf

Li

║yf

Ai xi, yi

yf

Of

Ai b

(rfi, fzi, fyi) xf a

Fig. 3. Decomposition of the parallel structure in open chains and their parameterization

82

Computational Intelligence and Modern Heuristics

c1c 3 s1s 2 s 3 Rm'm = Rz ( 1 ) Rx ( 2 ) Ry ( 3 ) = s1c 3 c1s 2 s 3 c 2 s 3

s1c 2 c 1c 2 s 2

c1s 3 s1 s 2 c 3 s1 s 3 c1 s 2 c 3 , c 2 c 3

(10)

where ci = cos(i) and si = sin(i). The position of the points Ai in the fixed reference frame f is defined through a set of spherical coordinates (zfi, yfi, rfi), and of the points Bi through coordinates (zmi, ymi, rmi) defined in m (Fig. 3). The relative angular displacements from joints Ai are modelled by means of angles xi and yi (Fig. 3,b) and the displacements from the spherical joints Bi by means of angles (zi, yi, xi).

4. Direct error modelling The objective of the direct error modelling is to establish the operational errors of the end-effector related to the values of the source errors; in the paper both active joint variable errors and geometric errors are considered. 4.1 Joint variable errors modelling In this section, the error sources considered in the accuracy modelling are nominated by the relative displacements from the active joints (the prismatic joints Ci, Fig. 2,b). In the infinitesimal errors hypothesis, the error model becomes a linear model, where an error Jacobean JL describes the influence of the independent kinematical parameters (L1,..., L6) on the end-effector accuracy. This modelling is based on the following assumptions: a) the modelling of I order errors is used; b) the geometrical parameters of both moving and fixed platforms have no errors (ideal geometry); c) the passive joints (joints Ai and Bi ) are ideal joints; d) the error model expresses the end-effector errors for the characteristic point P (Fig. 3,a); e) The errors are reduced in the end-effector reference frame p. In these assumptions, the linear error model is expressed by the following relation:

dXp JL p dL ,

(11)

where dXp dx dy dz x y z Tp is the 6 dimensions vector of the operational errors of

the end-effector, for point P, reduced in p, while dL dL1 dL2 dL3 dL4 dL5 dL6 T is the vector of the active joint variable errors. According to the error model (rel. 11), the central objective of this modelling is to establish the error Jacobean JL (through a similar approach, the error Jacobean JL can be expressed also in any other frame). In order to describe the Jacobean JL, the former algorithm (section 2) is proposed further on. Step 1. Description of the end-effector errors for the six open chains (OKC) Due to the fact that the effector errors are described in the reference frame p¸ the direct kinematic modelling for finite displacements of OKC must be done with the homogenous operators of D–F type (type K) (Gogu, 1995; Gogu et al., 1997). The kinematic model will also include, in this step, the relative displacements from the passive joints Ai and Bi as independent parameters.

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

83

The operational errors of each OKC can be now described easily by applying the well-known relations for open chains (Gogu, 1995; Gogu et al., 1997): i

dx i xi d yi yi dz i dLi , J J i J i x i z i yi yi z i P x i

xi

J

JL

yi

i

J

J

zi

J

yi

xi

, i = 1..6,

(12)

where the column vectors from matrix Ji describe the influence of the errors of the modelling parameters. Step 2.Identification of dependent errors By splitting the parallel structure into open chains, the passive joints Ai and Bi became fictively actuated and, so, the displacements errors from these joints became independent too. In the parallel structure, all these errors are dependent of the independent error sources Li. That’s why, to express the dependent errors related to the independent ones represents the objective of this step; this desideratum becomes possible by modelling the recovering of the parallel connections of the Stewart platform, for which the following condition is used: the effector errors are the same for all the six OKC; analytically, the condition is expressed through the following equalities: dx i x 6 x 1 d 1 y y i y6 dz i dL1 dL6 , J 1 J 6 xi z1 z 6 yi y6 y1 z i P x 6 x 1

(13)

which lead to 5 independent matrix equations. Applying separation of dependent terms from the independent ones, the following relation is obtained:

J

x 1

J

y1

J

J

z1

y1

J

x1

x 1 y1 z 1 J y 1 x1

xk

J

J

yk

zk

J

yk

J

xk

xk yk z k J L dLk J L dL1 , y k xk k

1

(14)

for k = 2..6. The systems (14) are assembled into one matrix equation:

J J dL , *

where

x 1

x 2

dependent errors, while

z 1

y 1

(15)

* L

x 1 y 6

x 6

T

is

the

global

vector

of

84

Computational Intelligence and Modern Heuristics

J 1 J 1 * J J 1 J 1 J 1

J 2 0

0 J3

0 0

0 0

0 0 0

0 0 0

J4 0 0

0 J5 0

J k J

xk

J

yk

J

J

zk

J

yk

xk

0 0 0 , 0 J 6

J L1 J L1 * J L J L 1 J L 1 J L1

JL2 0

0 JL3

0 0

0 0

0 0 0

0 0 0

JL4 0 0

0 J L5 0

, k = 1..6 and dL dL

1

0 0 0 , (16) 0 J L 6

dL2 dL6 T .

Finally, the dependent errors can be expressed with relation (17):

J * 1 J L* dL J * dL .

(17)

The main problem for expressing analytically the error model consists in reversing the

square matrix J * of 30×30 dimension. In the case of Stewart platform, the reverse matrix

J was obtained numerically. Step 3.Establishment of the and-effector errors For each open kinematic chain, a set of 5 dependent parameters was used in modelling; in matrix J* (relations 17), for each set correspond 5 lines: the first 5 for leg 1, the following 5 for leg 2 a.s.o. The operational errors of the end-effector can be expressed by replacing the dependent errors expressions (rel. 17) into (rel. 12), with particularization for one of legs. Considering the chain 1, the end-effector errors expressed in the frame p become: *

x 1 dx d y1 y dL1 dz * J 1 J 1 J 1 z 1 x y1 y z P x 1

J L

1

dL1 L dL J 2 dL 3 , J * 1 1 L J dL 4 L dL J 5 L dL6 J

x1 1

y1

1

z1

1 y1 1

x1

J L J L 0

J L J L 0

J L J L 0

J L J L 0

J L J L 0

J L J L J L

J L J L J L

J L J L J L

J L J L J L

J L J L J L

2

x1 2

y1

2 z1 2 y1 2 x1

3

x1 3

y1

3 z1 3 y1 3 x1

4

x1 4

y1

4 z1 4 y1 4 x1

5

x1 5

y1

5 z1 5 y1 5 x1

6

x1 6

y1

6 z1 6 y1 6 x1

,

(18)

where J tL is an element of matrix J* (relations 17) and represent the influence factor of i

1

deviation dLi on the dependent parameter t1. By generalizing the relations 18, the error Jacobean for deviations of active joint variables can be expressed through any of the following relations:

J J J J J J J . L

1

* 1

2

* 2

6

* 6

(19)

4.2 Geometrical parameter errors modelling The influence of deviations of the parameters which define the parallel structure geometry on the endeffector errors is described through a linear model, where the error Jacobean JG represents the system matrix:

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

85

dXp JGp dG ,

(20)

where dXp dx dy dz x y z Tp is the 6 dimensions vector of the operational errors of the end-effector, corresponding to the characteristic point P (Fig. 3), reduced in p;

dG z1

y1 drf 1 drm1 y1 z1 z6 y6 drf 6 drm6 y6 z6

T

is the vector of

geometric errors. This modelling is based on the following assumptions: Platform’s command is considered to be ideal and so the joint errors dL are null. Structure geometry is affected by known and constant in time errors. In this case, the parallel structure is fictitious splitted into 6 open kinematic chains (OKC), one for each leg: OfAiBiOmP (see Fig. 3). Further on, the following algorithm, consisting of three main steps, is applied.

Step 1. Description of the end-effector errors for the 6 OKC In order to model the influence of the geometrical deviations, in the proposed method is used an equivalent structure, in which for each geometrical modelling parameter is associated one degree of freedom fictitious joint (prismatic or revolute). Each OKC associated to the Stewart platform becomes a serial structure with 12 one degree of freedom joints (therefore 12 independent parameters – see. Fig. 2): RRTRRTRRRTRR. Because the end-effector errors will be expressed in the final frame p¸ the direct kinematical modelling for finite displacements of OKC will be done with the following homogenous operators of D–F type (type K) (Gogu, 1995; Gogu et al., 1997): A01 = Rz(zi); A12 = Ry(yi); A23 = Tx(rfi); A34 = Rx(xi); A45 = Ry(yi)· Tz(Li); A56 = Rz(zi); A67 = Ry(yi); A78 = Rx(xi); A89 = Tx(-rmi); A9_10 = Ry(-yi); A10_11 = Rz(-zi)· Tz(hmp). The operational errors for each OKC are described using the general relations for open chains:

d

xi

T

dy i dzi xi y i zi

Ji dGi ,

J J i

zi

P

Ji zi yi drfi xi yi zi y i xi drmi yi zi

J

Jr

yi

fi

J

xi

J

yi

J

zi

J

yi

J

xi

Jr

mi

J

yi

J

zi

, T

i 1..6,

T

(21)

where the column vectors from matrix Ji describe the influence of the modelling parameters errors, used in kinematical description of OKC.

Step 2. Identification of dependent errors Even if there are considered independent in the equivalent structure, the relative displacements from the joints which are not commanded Ai and Bi are dependent displacements and, thus, the displacements errors are also dependent; there expressions can be identified by remodelling the parallel structure through the following condition: the effector errors are identical for all the 6 OKC:

d

xi

dy i

dz i

x i

y i

zi

T

P

J 1 dG1 J 6 dG6 .

(22)

86

Computational Intelligence and Modern Heuristics

Five independent matrix equations are derived from (rel. 22); separating the dependent terms from the independent ones, it results:

J

J

x1

J

J

zk

yk

J

y1

Jr

Jr

fk

J

z1

mk

J

y1

J

J

yk

zk

x1

x 1 y1 z 1 J y 1 x1

zk yk drfk J drmk yk zk

z1

J

xk

J

yk

Jr

y1

f1

J

J

zk

Jr

J

m1

J

yk

J

y1

z1

xk

xk yk z k y k xk

z1 y1 drf 1 , k = 2..6. drm1 y1 z1

(23)

The five systems (23) are assembled into one matrix equation:

where

J J dG , *

x 1

x 2

z 1

y 1

0

0 J3

0 0

0 0

0 0 0

0 0 0

J4

0 J5

(24)

* G

x 1 y 6

T

x 6 is

the

global

vector

of

dependent errors and J 1 J 1 * J J 1 J 1 J 1

J 2

J k J

xk

J

yk

0 0 J

zk

0

J

J

yk

xk

0 J G1 J 0 G1 * 0 , J G J G 1 0 J G 1 J J6 G1

,

JGk J

zk

J

yk

Jr

Jr

fk

mk

JG2 0

0 JG3

0 0

0 0

0 0 0

0 0 0

JG4 0 0

0 JG5 0

J

yk

J

zk

, k = 1..6.

0 0 0 ,(25) 0 J G 6 (26)

Finally, the dependent errors expressions can be expressed by relation:

J

J

* 1

* G

J 1* dG J dG , J . J 6*

*

*

(27)

The matrix J * is a square matrix, of 30×30 dimension, and, therefore, reversible. Step 3. Establishment of effector errors Matrix J* (relations 27) has the dimension 30×36 and it can be split into 6 submatrix J i* of 5 lines, representing the error Jacobean of the dependent deviations from leg i related to deviations dG. Particularized for one of the chains, for instance OKC 1, the end-effector errors expressed in p become:

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

87

d

xi

dy i dzi x i y i zi

T

P

T

J1 z1 y 1 drf 1 x1 y 1 z1 y 1 x 1 drm1 y 1 z1

dG ,

J1 J * 1

1 0 0 J J J J J 0 0 0

J

z1

x1

J

z1

J * 1

y1

J J

z1

z1 z1

y1

J

z1

x1

(28)

0

0

0

0

0

1 0

0 1

0 0

0 0

0 0

y1 x1 y1 y1 y1 z1 y1 y 1 y1 x 1

rf 1 x1 rf 1 y1 rf 1 z1 rf 1 y 1 rf 1 x 1

J

J

rm 1 x1 rm 1 y1

J J

rm 1 z1 rm 1 y 1

J J

y1 x1 y1 y1 y1 z 1 y 1 y 1 y 1 x 1

J J J J J

0 0 0

0 0 0

J

J r

m1 x1

J

J

1 0 0

0 1 0

J J

J J

z1 x1 z1 y1

J J J

0 0 0 y6

x1 y6

y1

y 6

J J

z1 z1 z1 y1

z1 y6 y1

y 6

J

z1 x1

0 0 1

x1

0 0 0

0 0 0 J J J , J J 0 0 0 z6

x1

z6

y1

z6 z1

(29)

z6

y1 z6

x1

where J tp represents the influence factor of deviation dpi on the dependent parameter t1 i

1

which is a component part of matrix J* (rel. 27). Generalizing, the error Jacobean for the deviations of joint variables can be expressed through any of the following relations:

J J J J J J J . 1

G

* 1

2

* 2

6

* 6

(30)

4.3 The error model for geometrical and kinematical parameters deviations The complete kinematical error model, which includes both the influences of the active joint variables Li and of the geometrical parameters can be deduced through a similar approach; the only changing in the modelling prerequisites is referring to the fact that the displacements deviations from the commanded joints have to be included between the error sources of Stewart platform. Therefore, the number of error source parameters is changing from 36 to 42. In the first step of the modelling algorithm is included also deviation dLi generated when the relative displacements from the actuated joints Ci are commanded. In step 2 the 30 dependent deviations are identified in relations with the 42 independent variables. In this case is also necessary to reverse the matrix of 30×30 dimension. Finally, the end-effector errors expressed in reference frame p can be deduced by replacing the expressions of the dependent errors in the error model of one of the OKC. In conclusion, the complete error model can be obtained by assembling the previous partial models:

d

xi

dy i

dz i

x i

y i

zi

T

P

= J 1G J* 1G dG J1L J * 1L dL JG dG J L dL .

(31)

88

Computational Intelligence and Modern Heuristics

5. Accuracy numerical simulations The numerical simulation of the error model for Stewart-DELTALAB platform had the following objectives:

Validation of the error model by verifying the results obtained in the numerical and graphical simulation. Thus, for a set of representative configurations of Stewart platform were applied the known deviations of source-parameters and the end-effector errors were calculated (rel. 18). The configurations tested with error, were generated with a graphical tool (in this case AutoCAD) and were established the effective values of the modeling independent and dependent parameters, using specific functions. In all the tested variants, the simulation showed the correctness of the elaborated models. 2. Identification of the end-effector errors on a given trajectory, for specified values of the source errors. Using numerical simulation, the global effect of error sources and the importance of each error parameter on the positioning and orienting precision of end-effector can be calculated. In this way, can be identified the factors with a maximum influence and thus recommendations for constructive and functional design can be elaborated. The results of numerical simulation of the precision model for the case of a linear trajectory, given through the start configuration (xm, ym, zm, 1, 2, 3) = (-100mm, 100mm, 100mm, 0°,0°,0°) and –final (100mm, -100mm, 200mm, 45°, 30°, -30°), are presented in Figure 4. The represented end-effector errors were generated considering that all active joint errors Li = 1 mm. Thus, the positioning on axe z is achieved with the biggest deviations (Fig. 4,a), while the maximum angular deviations are registered on axis y (Fig. 4,b). 1.

Positioning errors

dy

dz

dr

29

27

25

23

21

19

17

15

13

9

29

27

25

23

21

19

17

15

13

9 dx

11

7

5

3

1

0,00

11

0,20

7

0,40

5

0,60

dLi = 1 mm

3

0,80

0,08 0,07 0,06 0,05 0,04 0,03 0,02 0,01 0,00 -0,01

1

1,00

[grade]

(dx,dy,dz,dr) [mm]

Orienting errors

dLi = 1 mm

1,20

a b Fig. 4. Numerical simulation of the joint error model: end-effector positioning errors (a) and orienting errors (b) obtained for joint errors Li = 1mm The objective of the numerical simulation of the geometric error model was to identify the end-effector errors on a given trajectory, for the specified values of source errors (Fig. 5). Thus, it can be established both the global effect of all the error sources and the importance of each error parameter on the positioning and orienting precision of the end-effector; therefore, the factors with a maximum influence can be identified and the recommendations for constructive and functional design can be elaborated. Considering the former trajectory, the end-effector errors were generated in the assumption that all the linear geometrical parameters have 1 mm deviations, while the angular ones

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

89

have 1° deviation. The following conclusions and recommendations can be formulated analyzing the graphical representations of the end-effector errors (Fig. 5): Referring to the positioning precision it can be noticed the superior influence of the parameters yi (Fig. 5,a) and yi (Fig. 5,b) similar to the relatively reduced effects of parameters rfi (Fig. 5,c) and rmi (Fig. 5,d). The orienting precision depends in a small measure of the deviations of parameters rfi (Fig. 5,e) and rmi (Fig. 5,f). On the other hand, the orienting precision is more dependent on the deviations of parameters zi and zi.

21

23

25

27

29

23

25

27

29

23

25

27

29

19

17

15

21

dr

0,20 0,15 0,10 0,05 19

17

15

13

5

3

0,00 -0,05

1

-0,40

(dx,dy,dz,dr) [mm]

29

27

25

23

21

19

17

15

13

11

9

7

5

3

0,00 1

-0,10

-0,80

dx

dr

0,20

-0,10

0,10 19

17

0,00 -0,10

5

29

27

25

23

21

19

17

15

13

11

9

7

5

0,00

3

0,05

1

[grade]

0,30

0,10

3

dr

drmi = 1 mm

0,40

0,15

1

dz

15

drfi = 1 mm

0,20

dy

d Orienting errors

c Orienting errors

13

dz

11

dy

9

dx

7

(dx,dy,dz,dr) [mm]

0,20

-0,60

[grade]

dz

drmi = 1 mm

0,25

0,40

-0,05

dy

b Positioning errors

0,60

-0,20

= 1 grad

21

dx

drfi = 1 mm

0,80

9

dr

11

dz

a Positioning errors

9

dy

7

dx

11

-6,00

7

-4,00

5

29

27

25

23

21

19

17

15

13

9

11

7

5

3

0,00 -2,00

yi

3

2,00

4,00 3,50 3,00 2,50 2,00 1,50 1,00 0,50 0,00 -0,50

1

4,00

1

(dx,dy,dz,dr) [mm]

6,00

Positioning errors

= 1 grad

(dx,dy,dz,dr) [mm]

yi

13

Positioning errors

-0,20

-0,15

-0,30

-0,20

e

f

Fig. 5. The influence of some geometric parameter errors on the trajectory end-effector errors

From the numerical study of the precision of Stewart platform on the mentioned trajectory, it can be formulated the recommendation that the maximum precision for the angular parameters (yi, yi, zi, zi) has to be assured.

90

Computational Intelligence and Modern Heuristics

6. Accuracy experimental validation Concerning the Stewart DELTALAB platform error modelling, some explanatory notes and the necessary notations in the experimental testing are presented further on: —two categories of reference frames are associated to the tested platform: theoretical reference frames (used in the platform command program) – associated to the theoretical plane given by centres of the spherical joints of mobile platform (points Bi), and measure frames (used in the measure process) – associated to a real surface of the mobile platform; —the taken measurements were of relative type, in relation to a reference frame defined by the 3D measurement machine, on the base of the measure frame for the reference position of the platform; m exp Om exp x m exp y m exp zm exp — the theoretic frame associated to the mobile platform in an experimentally specified position; pref Opref x pref y pref z pref — the measurement frame associated to the mobile platform in a reference position; p exp O p exp x p exp y p exp z p exp — the measurement frame associated to the mobile platform in an experimentally established position. In order to become possible and to offer complete data on the accuracy, a first step in experimental testing is to identify the constructive elements of the platform and the accessories. In this context, the following explanatory notes are made:

Working plane

Theoretical plane

hmp

Fig. 6. Theoretical and working planes of Stewart platform 1°. Plane xmOmym of frame m is identical to points Bi plane; being a fictive plane, in experimental research was used frame p for which plane xpOpyp is materialized by a plane finished surface (working plane – see Fig. 6). The frame p is parallel to m and is obtained through a translation with the distance hmp = OmOp = 40.55 mm on the Omzm axis.

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

91

2°. The Stewart platform includes, as additional accessories, two cylindrical finished bolts, assembled on the working plate in point Op and, respectively, in a point on the axis Opxp (Fig. 3 and 4). In this way, frame p is materialized as follows: ― axis Opzp through the normal to the working plane; ― the origin Op as the intersection point of working plane and the axis of the bolt which is assembled in this point; ― axis Opxp as the line described by 2 points: Op and the intersection point of the second bolt axis and the working plane; ― axis Opyp with, implicitly, the unit vector j p k p i p . 6.1 The 3D measurement machine TEMPO The Tri-Mesures machine (Fig. 7) is metrology equipment with high performances. From the structural point of view, the machine is assimilated to an orthogonal robot of portal type, with three independent axes. The final element, which performs a translation on vertical (z axle), has an orientation measurement head at it extremity, that has a sensing head system (Fig. 7). The machine is characterized by a high rigidity, its mobile parts moving on an aerostatic cushion and a high geometrical precision. The logistic administration of measurement machine functioning is obtained through the program METROSOFT 3D. The program allows to measure parts with plane, spherical, cylindrical or conical surfaces. The program is handling almost exclusively through a control desk, with specialized keys for different categories and command types.

Stewart Platform

TEMPO machine

Fig. 7. The 3D Measurement TEMPO machine and the Stewart-DELTALAB platform

92

Computational Intelligence and Modern Heuristics

6.2 The experimental research program The experimental research had in view to fulfil a program based on the following objectives: 1. Establishment of Stewart platform repeatability. 2. Establishment of absolute precision (accuracy). 3. The experimental testing for proposed precision models validation. The experimental testing was preceded by identification of a minimum number of parameters (points and vectors) which have to be measured and which allow the analytical establishment of real position of mobile platform (of the reference frame p). Starting from the experimental and command values, the actual operational errors of the Stewart platform are established, with their help being quantified the accuracy and repeatability. Therefore, the main steps in the measurement process of Stewart platform accuracy are presented: 1. The Stewart platform is placed on the measurement machine working table and runs the platform command program. 2. The platform is put under tension and is commanded to move to the initial position (zero position). 3. After starting up the measurement machine, the necessary configuration of the measurement head is calibrated through filling a standard sphere and their memorization. 4. A frame part is defined, materializing the reference frame p'. This is achieved in 3 phases: a. Establishment of a primary direction, which gives one of the frame part axes. b. Establishment of a secondary direction, which materializes the second axle of the part frame. c. Specification of the origin of the frame part. 5. The platform is moved in the testing pose. 6. Are taken measurements in order to establish the frame pexp position (Fig. 8): a. Measurement of working plane. The procedure imposes a plane command selection and filing of 4 points (4 is the implicit value, which can be modified and represents the minimum accepted number of points). There are supplied to the user the components of the unit vector normal to the plane. b. Fulfil of the two cylinders, placed in the two points P1 and P2, through cylinder command initialization and fulfil of minimum 9 points per cylinder. These cylinders were materialized through calibrated bolts with Ø8×25 dimensions. c. The two points P1 and P2 are obtained as intersections of the two cylinders with working plane. The coordinates of the two points are displayed in the part system declared active. d. Identification of Ox axle as a line which passes through points P1 and P2. It is used the connex command and it is given the axle by the unit vector.

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

93

working plane

central bolt Ox axis bolt

Fig. 8. Geometric elements used in the experimental research Explanatory notes: The machine can report measured values and can make calculus both in the machine frame and in the frame defined by the user. The machine reference frame is defined with the axis parallel to the displacement directions of mobile elements (x axle – the longitudinal axle, y – transversal and z – vertical, see Fig. 7) and the origin in the standard sphere centre. A user frame is defined in accordance to point 4 and is associated to the geometrical form of a part; this will be named further on as frame part. At the intersection of a plane with a cylinder, the machine program obtains a point and not an ellipse (circle), considering the intersection between the plane and the cylinder axle. The algorithm for actual operational errors calculus, corresponding to the relative measurements, is based on scheme from Figure 9. The final purpose of the mathematical processing of experimental values is to identify the 6 dimensions vector of the actual operational errors as a measure of the difference between the real position (experimentally established) and the commanded one (theoretical). So, first are established the expression of the homogenous operator Ap→pexp for each measurement; in phase 2 are identified the real errors Ap→pexp, related to frame p.

94

Computational Intelligence and Modern Heuristics Ap→pexp =? p Am'→p'

Apref→p

pexp m

mexp Apref→pexp

Am'→p' pref Am'→p'

Amref→m mref

p'

Am'→mref

Am'→p' m’

Fig. 9. Reference frames associates to the Stewart platform The selection of frame p as a reference frame (and not of m) is justified through the physical existence of working plane (as a measurement plane); this interferes as a location element in the Stewart platform tasks, unlike frame m¸ which is fictive. In the relative measurements case, the measured values are reported to a part frame defined in a reference position pref. – There are known (Fig. 9): o Am'→p' , Am'→m şi Am'→mref; o Ap'→pref = (Am'→p')-1 ·Am'→mref · Am'→p'; o Apref→pexp, established by means of experimental values, related to pref; – There is identified the homogenous operator Ap→pexp from the following equality (see Fig. 9): Apref→pexp = Apref→p · Ap→pexp

Ap→pexp = (Apref→p)-1 · Apref→pexp,

where Am'→p' · Apref→p = Amref→m · Am'→p' Amref→m = (Am'→mref )-1· Am'→m.

Apref→p = (Am'→p')-1 ·Amref→m · Am'→p' ,

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

95

6.3 The experimental validation of the error models The accuracy model represents the mathematical expression of the dependencies between the operational errors and the source-errors. From the tests on Stewart platform it was pursued the accuracy model validation, considering as source deviations the relative displacements from the actuated joints. Validation of the precision model consists of: ― The platform is moved in the tested reference positions; ― A part frame is defined in pref (the relative measurements case); ― The platform is moved in adjacent positions, by commanding displacements Li bordered to those corresponding to pref; ― The real position of the platform is measured and identified; ― The theoretical and real deviations are established (with the precision model). For the experimental validation of precision model were selected several representative testconfigurations. For one of them, the expression of the error Jacobean, in accordance to (rel. 19), is:

.

As it can be seen in Figure 10, there is a good concordance between the values given by the precision model and the finite displacements, established on the theoretical model (by numerical simulation) and the experimental values. The deviations from Figure 10 have the following meanings: the "exact" deviations were established with the direct kinematical model for finite displacements, in which were included the final values (corrected) of the kinematical variables Li = Liref + Li. The "exact" deviations are theoretical deviations, defined by finite displacements from the reference-test configuration pref to the commanded configuration with errors p; the experimental deviations express the difference between the measured configuration pexp and the reference one pref; the calculated deviations are obtained applying the linear error model, in which the error Jacobean J corresponds to the test-configuration pref. The differences between the results obtained through the proposed model and the “exact” model are explained by the linear nature of the precision model (the infinitesimal displacements are level 1 approximations of the finite displacements); these differences tend to zero only for the small values (infinitesimal) of input parameters (source errors) and, respectively, increase for values from the finite domain of inputs in the model.

7. Conclusion The proposed modelling method allows deriving the error model through a systemic and algorithmic approach and it is applied for parallel structures of any complexity. ― The analytical error model of Stewart–DELTALAB platform has a relatively high complexity, due to the fact that a matrix of 30×30 dimension has to be reversed; the problem was solved numerically. ―

96

Computational Intelligence and Modern Heuristics

The Jacobean JL can be numerically expressed. Numerical simulation was used for checking the correctness of the algorithm and of modeling. The error model was also verified through graphical simulation, using AutoCAD. ― The relations for the Jacobean JG were used, through numerical simulation, to verify the correctness of the algorithm and of the modelling. ― The results, offered by the precision models are in a good concordance both with the values given by numerical simulation and, also, with the experimental values (Fig. 10). ―

r [mm]

Positioning errors r 35,00 30,00 25,00 20,00 15,00 10,00 5,00 0,00 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Calc J

Exact

Experimental

a Orienting errors

[grade]

6,00 5,00 4,00 3,00 2,00 1,00 0,00 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Calc J

Exact

b

d

Experimental

0,05 0 -0,05 -0,1 1 2 3

J- r.exact

4 5 6

7 8 9 10 11 12 13 14 15 16

[grade]

r [mm]

Positioning and orienting errors differences 0,60 0,50 0,40 0,30 0,20 0,10 0,00 -0,10 -0,20 -0,30

-0,15 -0,2

.J- .exp

.J- exact

c

Fig. 10. Experimental validation of theoretical models

.J- exp

On the Accuracy of a Stewart Platform: Modelling and Experimental Validation

97

The differences between the results obtained with the proposed model and the experimental values are relatively small (of 10-1 mm, respectively of 10-1 degrees) and are enclosed in the error limit given by the accuracy error of tested Stewart platform. ― The experimental testing validates the precision models; the conclusion is that the proposed models are correct and the algorithm and the numerical implementation of the models are, also, correct. ―

Acknowledgment The authors would like to acknowledge the support of French Institute of Advanced Mechanics (IFMA), Clermont-Ferrand, France in assuring full access to the robotic facilities for experimental researches in this work. The work was partially supported by Romanian project SMART 72197/1.10.2008.

8. References Benea, R. (1996). Contribution à l’étude des robots pleinement parallèles de type 6R–RR–S. PhD thesis. Université de Savoie, France. Briot, S. & Bonev, I. (2008). Accuracy analysis of 3-DOF planar parallel robots, Mechanism and Machine Theory, Vol. 43, pp. 445–458. Cui, H.; Zhu, Z.; Gan, Z. & Brogardh, T. (2008). Error modeling and accuracy of TAU robot, In: Parallel Manipulators. New Developments, Ryu, J.H. (ed.), pp. 269-286, Vienna: ITech Education and Publishing, ISBN 978-3-902613-20-2. Fichter, E.F. (1986). A Stewart Platform–Based manipulator: General Theory and practical construction. The International Journal of Robotics Research, Vol. 5, no.2, pp. 157-185. Gogu, Gr. (1995). Optimisation of the industrial robot kinematics modelling (in Romanian). PhD thesis. Transilvania University of Braşov. Gogu, Gr.; Coiffet, Ph. & Barraco, A. (1997). Représentation des déplacements des robots, Ed. Hermes, Paris. Lee, J.; Duffy, J. & Keler, M. (1999). The optimal quality index for the stability of in–parallel planar platform devices. Journal of Mechanical Design, Vol.121, pp. 15-20. Merlet, J.P. (1990). Les robot parallèles, Ed. Hermes, Paris. Merlet, J.P. & Gosselin, C.M. (1991). Nouvelle architecture pour un manipulateur parallèle à six degrées de liberté. Mechanisms and Machines Theory, Vol. 26, No. 1, pp. 77–90. Neagoe, M. (2001). Contributions to the study of industrial robot precision (in Romanian). PhD thesis. Transilvania University of Brasov. Paul, R. (1981) Robot manipulators: mathematics, programming and control. The MIT Press. Pott, A. & Hiller, M. (2008). Kinematic Modeling, Linearization and First-Order Error Analysis, In: Parallel Manipulators. Towards New Applications, Wu, H. (ed.), pp. 155174, I-Tech Education and Publishing, ISBN 978-3-902613-40-0. Toyama, S. & Hatae, S. (1989). Error analysis of platform type of robot by means of screw algebra, Proceedings of the 20th ISIR Int. Symp. on Industrial Robots, pp. 635-642, Tokio, Japan. Wu, J. & Yin, Z. (2008). A Novel 4-DOF Parallel Manipulator H4, In: Parallel Manipulators. Towards New Applications, Wu, H. (ed.), pp. 405-448, Vienna: I-Tech Education and Publishing, ISBN 978-3-902613-40-0.

98

Computational Intelligence and Modern Heuristics

7

Effective knowledge acquisition by means of teaching strategies Marek Woda

Wroclaw University of Technology Poland 1. Introduction

Despite of the fact that e-learning already proved its great usefulness, it still suffers from many childlike deficiencies. We can point among the other things, the lack of the coherent vision for learning process accomplishment, practical guidelines how to organize consistent learning content (Woda & Walkowiak, 2004). Due to these disadvantages e-learning is being perceived ambiguously and usually incorrectly implemented in real life e-systems that finally lead to limitation of its reliability. Usually, in real world, theory and practice are not on the par, exactly same situation can be observed in the theory of e-learning and its implementations. In the e-learning, whole stress was put on the learning theory, and there are no restrictions or even practical guidelines present in field of technology used for implementations, best implementation practices, which in many cases has negative influence on newly developed e-systems (Woda & Walkowiak, 2008). Currently most of the academics, and schoolteachers noticed the need of standardization and rationalization of this type of teaching. Not infrequently, knowledge acquisition process in e-learning has a way worse effectiveness than traditional one that takes place in a conventional teaching – and this is especially noticeable in case of the students that are not very proficient in computers. Main cause of this phenomenon is inability to select essential information by students from so-called “informational noise” and the lack of the direct contact with a tutor and/or learning materials have been prepared in inappropriate way by the course organizers. Focusing only on a knowledge delivery problem in e-learning systems, we can find course material selection with relation to expertise level of a particular student as a main shortcoming. The other, also major drawback is an immense burden for the course administrators, when number of course students exceeds a few dozen or so. Then a number of people who are involved in planning, control, scheduling of classes and students’ progress assessment, increases in proportion to a number of students. Effectiveness of knowledge acquisition is a function of different forms, methods and variety of teaching methods (Nichols, 2008). Nowadays, in a computerization era, teaching effectiveness in esystems may increase, only when appropriate steps are undertaken along with an application of classical forms and methods teaching, leading to a construction of suitable teaching structures, which are integrated with latest technologies combined with the formal ways of presentation (Woda, 2008).

100

Computational Intelligence and Modern Heuristics

Teaching technology is an interdisciplinary disciple about education efficiency, pursuing the answer for the question, how to educate quicker, faster, better and less expensive in a defined conditions. Interdisciplinary nature of the disciple relies on that, it draws its subject of the interest and research methods other disciples like computer science, cybernetics, theory of systems and communication theories.

Fig. 1. Teaching material represented as a learning tree In traditional method learning, human factor is responsible for entire teaching process (Woda & Walkowiak, 2004). This may lead to situations (and usually does), like loss of control over learning progress (due to e.g. mental fatigue of a teacher, badly adapted teaching materials to the students’ skills), which finally results in loss of student’s attention and willingness to learn (Mghawish & Woda & Michalec, 2006). Nonetheless, excluding completely “human factor” is not possible, and at the same time from a teaching perspective very disadvantageous factor (Al-Dahoud & Walkowiak & Woda, 2008), and it is tightly connected with students feeling of being alienated and which lead to a loss of the control. The remedy for the presented above distant learning inconveniences and a way to improve efficiency of knowledge acquire process could be application of intelligent system that is driven by smart teaching algorithms (Baloian & Motelet & Pino, 2003, Capusano & Marsella & Salerno, 2000, Dinosereanu & Salomie, 2003, Mghawish & Woda & Michalec, 2006).

Effective knowledge acquisition by means of teaching strategies

101

2. Teaching strategies Teaching strategies are algorithms that support navigation within a learning path, during knowledge acquisition process by a student. These algorithms are responsible for directing students on the suitable lesson’s variants in the nodes of the learning path (Woda, 2006). Appropriate assignment made by the strategies is being made in a way that teaching material is being selected to suit more adequately student’s expertise level, and what is more his ability to learn, according to the criteria. Navigation algorithms have to lead a student or a group of students thru learning path from first node (starting phase), to another, until end of learning path is reached. State after starting phase is named adaptive state (phase) and it lasts to the end of knowledge acquisition process.

Fig. 2. A learning path with selected nodes (lesson’s variants) in the learning tree Teaching algorithm operation is based on the learning adaptation mechanisms, where knowledge absorption process is being scrutinized on the fly, and historical data, about lessons learnt and scores achieved, are being taken into account in order to assign precise and adequate learning material in a next node from the learning path to achieve best possible (optimal) knowledge acquisition. Learning adaptation means drawing conclusions out of gathered historical data, and then based on them learning “parameters” tuning to match optimal learning pace and form, for a student. Main task for an adaptive teaching algorithm is to assign each student from a group, appropriate lesson difficult variant (in current the lesson), in order to achieve best result (a note) in a competence test after the lesson. Best result, means required /set by the teacher at the beginning of learning process, usually it is a combination of notes (after a lesson) and credit points (received upon completion of the most difficult lesson variant in a node).

102

Computational Intelligence and Modern Heuristics

Additionally, at the beginning of learning process one should pay special attention to verify student’s initial expertise level, to assign base lesson variant in a start node (starting phase) to match student capability to learn. If the initial expertise is not detected well, it will affect learning efficiency later on, during learning progress (in the adaptive phase). During the adaptive phase, one of available learning strategies, is being assigned to a student, based on his initial expertise level so when an inaccurate strategy is chosen, it greatly affects learning progress and its effectives. Lesson difficulty factor is correlated with student’s ability to comprehend given material.

3. Learning progress verification The verification of the knowledge acquisition during duration of a course, takes place after each lesson, in a competence test. It is essential, in order to go to next lesson to firstly pass based current lesson variant (usually least complicated one) in a node. Each student is assessed in a competence test and note is being assigned afterwards and it defines knowledge absorption factor for a lesson. Upon a lesson completion on a specific difficulty factor (lesson variant) student receives a number of credit points, which reflects how the variant was elaborated. Note’s value that qualifies student to pass to next lesson is strictly dependent on his base expertise level and lesson’s variant, which defines also current competence test.

Fig. 3. A multi node of the learning path – variants of the lesson. The validation of the knowledge acquisition is being done for both a student and for a group (all course participants), after each lesson passed in a learning path (within competence test). Validation procedure has to substantiate (according to taken assumptions), that in fact, strategies of the learning adaption influence on improved knowledge acquisition during learning phase.

Effective knowledge acquisition by means of teaching strategies

103

The notes received in a competence test, serve as an input data for the strategies. Historical data are taken from student’s records (notes, received in previously passed competence tests along with a sum of credit points), which constitute a base for the final assessment of learning progress quality. In order to be eligible to pass to a next lesson, student must, at least, pass thru easiest material variant in a current lesson node (current competence test must be completed with an acceptable note value) and receiving, at least, one credit point.

4. Learning effectiveness One of the most common e-learning problems is lower than expected effectiveness of the knowledge absorption. Author, in this chapter focused mainly on that issue. Author concentrated on increasing learning effectiveness by means of teaching strategies. It comes down to best teaching algorithm assignment either for a student or a group from a set of possible adaptive learning strategies. Each strategy ought to meet to given down below criteria. These strategies ought to organize learning process in a way that best suits student’s abilities to learn and finally improve the results (grades and credits) received. Main criterion, taken into consideration during assessment of learning effectiveness improvement process, is striving after receiving best possible grades and at the same time, more credits. These are two opposing criteria. Receiving best grades could be achieved in an easy way by assignment in every node easiest lesson variant, however it would result in receiving less credits than expected afterwards. Receiving greatest number of credits is only possible once the most elaborated lesson variants are being assigned and finished in the node. Aforementioned facts allow us to clearly asses the quality of teaching strategies. Other characteristics that prove usefulness of a particular strategy is a total number of students (from a test group) that received at least a half possible credit points during entire learning process. Grades average in a learning process is a supporting factor. Strategies also strive after fulfilling given below assumptions: minimize number of students that cannot comply the optimal learning postulate (minimize drop out from learning process – do not complete competence tests on a required level) detect students with incorrectly detected initial expertise level (especially in a start phase) “exploit“ best students – to assign them more difficult lesson’s variants As a criteria for starting phase strategies quality assessment following have been taken into account: a percentage of students that have received more than half credits possible, number of grades scored above group’s average, group grade’s average, lowest and highest student grade’s average As a criteria for adaptive phase strategies quality assessment following have been taken into account: an expertise level distribution changes in time (compare before and after learning), sum of credits after learning process is over, student/group grade’s average, number of students that finished learning with more than half possible credits to earn

104

Computational Intelligence and Modern Heuristics

Each strategy, should meet at least one of aforementioned (main) criteria. Besides each strategy have its own characteristics e.g. global optimum strategy strives to find strategies should be able to find students that are more talented (once found – they are being assigned more difficult / challenging task / lessons). Each strategy acts in a different way based on a student profile detected during learning process. For example minimalistic strategy, strives after assignment students easiest possible lesson’s variant in a learning path.

6. Results All the results have been received in a simulated environment. There were three groups of students, each 100 student, tested. Each group had different base student’s expertise level (refer to the Table 1.) and it was served with the same amount of the lesson nodes (50). Simulation was divided in two phases: start phase and adaptive one, where groups were governed by the learning strategies.

Table 1. Results for different teaching strategies received after adaptive phase – learning process is over. Grades [0-1]. Starting phase. All the students from the test groups were treated by the start phase strategies, and the experiment data were evaluated against optimal teaching criteria postulate – namely striving after receiving top grades with most possible credits earned and to match difficulty factor with student’s expertise level.

Effective knowledge acquisition by means of teaching strategies

105

Primitive strategy did not prove its usefulness, failing to match second part of requirements (differentiate students base on their expertise level). This strategy was not intended to be applied ever, in any system, and the results received after primitive strategy application, constituted a base for comparison. Random strategy, in spite of the fact that partially (since only some of the students were assigned lesson’s difficulty factors that match their expertise level) met the requirements, gave good results (mainly in the group where most of the students were good learners – no matter what lesson’s difficulty they were faced to they were able to cope with). Proportional lesson difficulty variant assignment done by a proportional third strategy turned to be most efficient (against each test group), both in terms of average grades scored and credits earned. Thanks to it, more than 60% of students received better scores than expected. Adaptive phase. Best strategy assessed in this phase should meet criteria described in section 4. In order to quickly sum up discussion of received results, if the priority was to get most students that passed learning path with higher than a group credit points average number, one should focus on Reference strategy or Optimal one. Focusing only average of grades maximization the most suitable are reference conservative and reference ones. Most balanced strategy that matches all criteria is optimal strategy. It equally good strives after grades and credits scored during entire learning path.

7. Conclusion Quick and unfortunately chaotic e-learning systems development, created an urgent demand to adjust teaching process to the individual characteristics. Along with the growth of interests around distant learning, numerous systems are being implemented, yet again without orientation on a learner. The systems do not base on any student model or what is even worse do not adjust pace of learning to the student needs. This paper was intended to provide a solution to ease teaching material delivery, in an personalized way, that match student‘s expertise level. Based on a defined model of learner – system has to ascribe a teaching strategy that will facilitate knowledge acquisition during entire learning process. Tested, in two phases (start and adaptive) strategies allowed to increase learning effectiveness, portrayed by the results (increased number of credit points and average of grades) gathered in the table 1. Future work will encompass experiments with real students as a part of working production e-learning system.

8. References Al-Dahoud A., Walkowiak T., Woda M. (2008). Dependability aspects of e-learning systems. Proceedings of International Conference on Dependability of Computer Systems, DepCoS RELCOMEX 2008, pp. 73-79, Szklarska Poręba, June 2008, IEEE Computer Society [Press], Los Alamitos Baloian N., Motelet O., Pino J. (2003) Collaborative Authoring, Use and Reuse of Learning Material in a Computer-integrated Classroom, Proceedings of the CRIGW 2003, 2003, France.

106

Computational Intelligence and Modern Heuristics

Bacopo A. (2004) Shaping Learning Adaptive Technologies for Teachers: a Proposal for an Adaptive Learning Management System, Proceedings of the 4th IEEE International Conference on Advanced Learning Technologies, 2004. Capusano N., Marsella M., Salerno S. (2000) An agent based Intelligent Tutoring System for distance learning. Proceedings of the International Workshop on Adaptive and Intelligent Web-Based Education Systems, ITS, 2000 Dinosereanu M., Salomie I. (2003) Mobile Agent Solutions for Student Assessment in Virtual Learning Environments, Proceedings of the IAWTIC, 2003, Austria Kavcic A. (2000) The role of user models in adaptive hypermedia systems, Proceedings of the Electrotechnical Conference MELECON, 2000. Mghawish A., Woda M., Michalec P. (2006). Computer aided composing learning material into primary learning tree. Proceedings of the WSEAS International Conferences: The 5th WSEAS International Conference on Applied Computer Science (ACOS '06) pp. 8085, Hangzhou, April 2006, WSEAS 2006 Hangzhou. Nichols, M. (2008). E-Learning in context. http://akoaotearoa.ac.nz/sites/default/files/ ng/group-661/n877-1---e-learning-in-context.pdf Woda M. (2008). Zarządzanie procesem uczenia w komputerowych systemach wspomagających nauczanie. Proceedings of the Nowe Media w Edukacji 2008: zastosowania technik informacyjnych i komunikacyjnych w kształceniu. pp. 147-155, Wrocław, September 2008, Oficyna Wydawnicza Politechniki Wrocławskiej, Wrocław Woda M., Walkowiak T. (2008). Wybór optymalnej platformy zdalnego nauczania. Proceedings of Komputerowe wspomaganie dydaktyki : materiały krajowej konferencji naukowej. pp. 119-122, Łódź, June 2008, Wyższa Szkoła Informatyki, Łódź Woda M. (2006). Conception of composing learning content into learning tree to ensure reliability of learning material. Proceedings of International Conference on Dependability of Computer Systems. DepCoS - RELCOMEX 2006, pp. 374-381, Szklarska Poręba, May 2006, IEEE Computer Society [Press], Los Alamitos Woda M., Walkowiak T. (2004). Internet - a modern e-learning medium. Proceedings of the Second International Conference on Soft Computing Applied in Computer and Economic Environments ICSC 2004. pp. 205-214. Kunovice, Czech Republic, January 2004. Evropsky Polytechnicky Institut, Kunovice.

8

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm M. Reza Mashinchi and Ali Selamat

Faculty of Computer Science and Information System, Universiti Teknologi Malaysia Abstract In this chapter, we propose a new method based on genetic algorithms (GAs) for fuzzy

artificial neural network (FANN) learning to improve its accuracy in measuring customer service satisfaction for establishing a principle of economical survival in business area. The analysis is based on linguistic values received from customer service satisfactions index where fuzzy modeling, as one of possible ways, has been used to process these values. Here, customer's satisfaction is considered as a key factor for the analysis based on his/her preference as the scope of qualification for organization service. In the proposed method, we have introduced two-phase GAs-based learning for FANNs. In the neural network, inputs and weights are assumed to be fuzzy numbers on the set of all real numbers. The optimization ability of GA is used to tune alpha-cuts boundaries of membership functions for fuzzy weights. Here, five alpha-cuts are used for tuning as other researchers have used, which in two-phase method; two of them are for first phase and three of them for second phase. This leads to obtain better results for FANN. Comparisons are included with another method using two data sets to give some analyses to show the superiority of proposed method in term of generated error and executed time. From the experiments, the proposed approach has been able to predict quality values of possible strategies according to customer's preference. Finally, the ability of this system in recognizing customer's preference has been tested using some new assumed services. Key words: Weight adjusting; placement definition; shape definition.

1. Introduction Selling rate of the products for an enterprise, either be a business centers or producer factories, is an important issue in the commercial competitions. The higher rate an enterprise gains the more merit for survival is proved. Earlier researches have shown that the increase or decrease of this rate highly depends on customers' view to that commercial enterprise [1,2]. Such that; the more ability of satisfying the customer an enterprise has, the more

108

Computational Intelligence and Modern Heuristics

success in competition with other competitors it will achieve. As customers' satisfaction plays a key role in an enterprise survival, the analysis of his/her opinion is vital to make the next enterprise decisions. In general, customer's satisfaction is not only a multi-variable issue but also is based on linguistic values. On the other hand, linguistic values, which have been used here, are intrinsically known as vague values [3]. The two mentioned multivariability and linguistic-variability make the problem to be more complex and system evaluation would be more difficult. This is while; strategic goals of the enterprises are determined according to the results of this analysis, and thus, the evaluation of customer opinion is an essential issue [2,4,5]. A suitable evaluation significantly helps an enterprise to emerge its defined strategic goals. This needs to have a well understanding of customer's opinion in order to be able of approximating his/her satisfactory degree. Customer's satisfaction is satisfactory degree of the customer, which he/she is purchasing commodities [4]. Some indicators measure this degree. The indicators and its parameter are non-standard, and thus, each enterprise has been established an index according to its own customer's view [4,5]. Some indices, which are well known among the others, are American Customer Satisfaction Index (ACSI), Swedish Customer Satisfaction Index (SCSI), European Customer Satisfaction Index (ECSI) and Korean Customer Satisfaction Index (KCSI) [4,5]. It is worth mentioning that the parameters of indicator must be visible to customers' view [5]. According to the literature, three basic aspects of independency, comparability and feasibility must be considered [1, 2, 4]. In this chapter, indices have been used that supports the mentioned aspects employed by other researchers. One analysis ways of utilized indices, which is based on linguistic values received from the customer, is fuzzy modeling [3]. It is used in many papers for evaluation of the customer's satisfaction in the e-commerce, where the data of this area is utilized in this chapter. Various methods have been considered based on this modeling. Some researches have been used AHP [6-8] or either fuzzy cognitive maps [9]. Recently, some literatures have been appeared based on the combination of linguistic variables modeled by triangular fuzzy values [4,5]. Following aforementioned researches, this chapter aims to propose an evaluator system that would be able to recognize customer's preference. Meanwhile, it uses the benefits of fuzzy modeling in customer satisfactory evaluation. This mentioned aim of constructing a system that recognizes customer's preference has not been considered by the other authors. This is the difference of this research with the others'. In order to construct such a system proposing an approach, as the major part of the system, that can consider two terms of the learning and linguistic values is essential. This approach needs to follow learning process based on linguistic values in addition of having the ability to learn from customer's opinions. This task is carried out using Fuzzy Artificial Neural Networks (FANNs), which are know as soft computing techniques. FANNs are able to learn from fuzzy values that are considered as linguistic terms. Meanwhile, the Genetic Algorithm (GA) has been used to obtain higher efficiency for FANN. GA is able to find the optimum of designed network. Finally, each enterprise will be able to have the benefits of using such constructed system as follows:

To evaluate possible strategies according to its current customer's tastes, in order to increase success rate; To analyze a strategy, regardless its business level, using the least number of the customers;

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

109

To decrease the risk exists behind the decision making for its next organizational changes; To emerge the importance of business ethics, followed by customer-orientation principle.

It is necessary to have an evaluator system with a higher accuracy to decrease strategic decision risks and increase the success rate by evaluating possible strategies based on the preferences of the least customers. Such that; the higher accuracy of the system there is, the better organizational changes are obtained. Thus, it increases the success rate while emerges the business ethics. Knowing that an enterprise needs organizational changes to be adaptable with customer preferences, having a higher accuracy system rises to be necessity as listed below:

to have more effective participation from customer side; to have more participant customers; to decrease the computational costs of evaluator system

Each enterprise needs to consider more effectively customers' opinion to have better understanding of their preferences, and thus, having a precise data is necessary for organizational evaluation. This is while; having variety opinions are necessary in covering broader preferences to have an assured organizational evaluation. Thus, the evaluator system is able of better approximation for new possible preferences. However, obtaining to points 1 and 2 comes with increase of the complexity, such that; the increase of data preciseness causes less accuracy for evaluator system, while the increase in number of data being processed causes less accuracy too. Therefore, a system that is able of dealing with such data environment is necessary. However, the ideal is such an evaluator system that is able to increase the accuracy while complexity increases. Such system, which this chapter proposes, enables an enterprise to have more assured evaluation in less time. Based on previous research [10], this chapter follows to improve the last results. Therefore, the aim of proposed system is to improve the previous one using two phases for evaluator system. This system, called two- phased GA-based FANN, utilizes the abilities of GA to find a suitable status of evaluator system in order to improve the accuracy [11]. The first and second phases are called place-definition and shape-definition, respectively. Alphacuts (α-cuts), which here the fuzzy numbers are processed based on them, are defined and applied in each phase separately. The abilities of such evaluator, relative to complexity increase, on overcoming aforementioned complexities are:

to decrease the predicted outcome error; to increase the processing speed;

Finally, using such system will enable an enterprise to:

Have the ability of processing more realistic data received from the customer; Have more precise evaluation and suitable strategy approximation to increase the success rate in less time;

110

Computational Intelligence and Modern Heuristics

Decrease the risks behind the organizational changes in terms of increasing preferences reality; Survive ethical principle of customer-orientation by customer participation.

The organization of this chapter, which aims at proposing such customer evaluator system using GA-based FANN, is as follows. First, in next section the concept of customer evaluator system has been explained. Then, how to model the current problem using fuzzy modeling has been explained in its first subsection. In the sequel, proposed evaluator systems using GA-based FANN and its basic concepts have been explained in its second subsection. Proposed system is implemented in following section and the results have been analyzed in its two subsections. In these subsections, first, the performance validation of proposed system has been tested using new inputs and then the ability of system has been shown. Finally, a conclusion for the chapter is given. Two datasets, which are used in this chapter, have been presented in appendix.

2. Customer Evaluator System Customer evaluator system defines service quality of an organization based on customer's satisfactory degree [4]. The structure of such evaluator system is shown in Figure 1. The outcome of system is based on customer's opinion given to the system, which is represented by the parameters of some indicators. The preciseness of outcome exploration depends on the preciseness of modeled opinion expressed from the customer and the processing ability of evaluator system based on them. Customer's opinion

Specialist believe

Customer

Fuzzy values

Quality score

Evaluator System

Fig. 1. The structure of the evaluator system Hence, it is essential to have the parameters for evaluator system. They are presented by some indicators indices so-called customer satisfactory indices [4,5]. As aforementioned, these indices are not standard and this chapter uses the one that has been employed in [4]. The parameters of these indices are shown in Figure 2.

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

111

Fig. 2. A customer satisfactory indices and its parameters The parameters in Figure 2 are represented in the form of linguistic variables that are accounted as vague values [3]. As these parameters are the inputs of system, they are necessary to be prepared for processing. To this end, fuzzy modeling is utilized in such way that first; the input values are fuzzified, then they are fed to FANN system to be processed. More details of these procedures are described in the following subsections, respectively. Fuzzy modeling: Fuzzy set theory, which was proposed in 1965 [12], is utilized in many application areas by solving their corresponding problems [13,14,15,16]. This is due to the ability of fuzzy logic, with its modeling capability, in facing with complex environments [17,18]. In such environments like agriculture, market prediction, risk assessment [19], image processing etc. [16] the linguistic variables can be used. Customer satisfactory evaluation, the dealt issue in this chapter, is among such environments; this is because the process of this evaluation is based on information steamed from linguistic terms. In addition, having many linguistic variables causes this problem to be as a multi-variable issue. The latter one makes the problem to be more complex and, thus, a suitable modeling is much more needed for a better problem solving. Therefore, in this chapter, fuzzy modeling is considered to process linguistic terms that are received from the customer in order to construct evaluator system. Fuzzy variables, which are used in the evaluator system, are modeled linguistic terms received from the customer. Modeling a fine linguistic term needs more α-cuts as the preciseness of a fuzzy value depends on them. On the other hand, increasing the number of α-cuts causes the evaluation process to be more complex. However, the proposed approach in this chapter, which has a particular view to fuzzy modeling, considers this issue solvable. The evaluator system uses the fuzzy variables for the inputs and parameters of the evaluator neural network. It is noticeable for the fuzzy values utilized in the input that; the transformation of these values depends on experts' interpretation over linguistic terms,

112

Computational Intelligence and Modern Heuristics

which is done through specialists' believes as illustrated in Figure 1. However, the idea of this chapter is concentrated on evaluator system only and, thus; obtained fuzzy values have been used based on other researchers' results [5]. Here, five α-cuts are used for fuzzy valued parameters of evaluator system to explore fuzzy numbers in its evaluation process. To be self-contained, we quote some fuzzy arithmetic on fuzzy numbers where a fuzzy ~ ~ number, A , defined as below: A {( x, A~ ( x )) | x , A~ : [0,1]}

~ A {( x, A~ ( x)) | x , A~ : [0,1]}

(1)

is a continues function and is set of all real numbers. Α-cuts zero, one and ~ middle of fuzzy number A are deified as below:

such that

A~

~ ~ A1 Core( A) {x | A~ ( x) 1},

(2)

~ ~ A0 Support ( A) {x | A~ ( x) 0},

(3)

~ ~ A middle ( A) {x | A~ ( x) }, (0,1).

(4)

Henceforth, all fuzzy numbers are assumed convex, such that all middle (.) are intervals in

and their Support (.) are bounded. Two basic operations of the summation and multiplication over triangular fuzzy numbers, which are used in proposed evaluator system, are defined as follows [18]:

~ ~ ~ ~ ~ ~ A ( k ) B ( k ) AL ( k ), AR ( k ) BL ( k ), BR ( k ) ~ ~ ~ ~ AL ( k ) BL ( k ), AR ( k ) BR ( k )

~ ~ ~ ~ ~ ~ A ( k ) B ( k ) AL ( k ), AR ( k ) BL ( k ).BR ( k ) ~ ~ ~ ~ ~ ~ ~ ~ min ( AL ( k ).BL ( k ), AL ( k ).BR ( k ) , max AR ( k ).BL ( k ), AR ( k ).BR ( k )

Evaluator neural network: Neural learning networks are among soft computing techniques [20]. Learning networks of the fuzzy-type, so-called FANNs, were proposed after crisp neural networks [21]. FANNs have attracted many researchers in consequent of acquiring improvements and knowing their abilities in solving the complex problems. In this chapter, FANNs have been used as the main part of customer evaluator system. Evaluation outcome is processing result from the system based fed inputs. This network is able to learn customer's preference by its training process. Training process is based on the fuzzy values resulted from linguistic value transformations. Therefore, trained networks will be able to predict customer's satisfactory degree based on current preference, such that; it allows to

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

113

approximate the goodness of new organizational changes to be applied. The steps of constructing such system, as a general case of customer evaluator neural network, are explained in Algorithm 1. Algorithm 1: The steps of the evaluator neural network

1 begin 2 initialize ( ) 3 4 5

x create ( ) while terminationCriterion( ) do x new update (x)

6

if f (x new ) f (x) then x x new

7

return x

8 end Step 2 of Algorithm 1 initiates the indicators with fuzzy values. Then, it creates possible solutions by aiming to find a suitable network and x will be replaced with that. Reproduction process, as the update function and finding the better solution, is repeated until it meets the termination criterion. A criterion for a near-optimal solution is;

f (x new ) f (x)

(5)

where f is fitness function, |||| is distance norm and is a given pre-assumed positive small number as error bound. Model structure of Fuzzy Artificial Neural Networks (FANN): This subsection presents the structure of FANN [22]. Here, FANN of type-1 is used as the major part of evaluator system, in which the input is fuzzy value and the output is crisp [17,23,22,11]. Input neurons have been used to learn customer's preference based on the α-cuts defined in [3]. The structure of such FANN, using two inputs a general architecture, is shown in Figure 3.

114

Computational Intelligence and Modern Heuristics

~ b1

~ X1

~ w 1,1

v~1, N t

~ w 1, N s

~ bNt

~ Oq

~ bN s

v~N s , N t

~ X2

~ w N f ,Ns

Fig. 3. A three-layer fuzzy neural network architecture The first layer is input layer which does not have any computational unit. In the second N ,N , shows fuzzy weights connecting neuron Nf in the layer, the matrix of fuzzy weights, w f s first layer to neuron Ns in the second layer. The vector of fuzzy biases, b Ns , shows fuzzy bias of the neuron, Ns, in the second layer. Similarly, in the third layer, fuzzy weight matrix, v Ns ,N t , shows fuzzy weights connecting neuron Ns in the second layer to the neuron Nt in the third layer. The form of activation function of the neurons in the first and second layers, which is utilized in this chapter, is sigmoid function given as below: f (x)

~

1

(6)

1 e x

Fuzzy output of In t erN , for the second layer of this architecture is as follows: s

N f (Agg N ), Inter s s

Ns 1, 2..., n

(7)

N is defined as follows: where Ns is the number of neurons in the second layer and Agg s N Agg s

Nf

X w i

ij

b j ,

j 1, 2..., Ns

(8)

i 1

is fuzzy input. The third layer where Nf is the number of neurons in the first layer and X values from the neurons in second layer through their fuzzy weight v . receives the Agg Therefore, the output is given by:

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

O q

115

Ns

Agg v

j jq ,

(9)

q 1, 2..., N t

j1

, is fuzzy outcome. Then, the where Nt is the number of neurons in the third layer and O q

outcome is considered as a crisp value when the distance is measured with the ideal. Genetic algorithm based FANN: Genetic algorithm (GA) was first proposed in 1975 [24]. It is categorized as an optimization and soft computing technique, which is based on the principles of natural evolution [20,21]. Here, optimization process holds on defined generations, where GA is used toward improving the efficiency of FANN. The idea of using GA for improving FANN was first proposed in 1994 [21].

1

0

1

0

1

1

0

0

1

1

1

0

0

0

1

0

1

0

0

0

1

0

1

0

0

1

1

(a)

0

0

1

1

0

1

0

1

1

0

0

1

0

1

0

0

0

1

1

1

0

(b) Fig. 4. (a) A typical crossover, (b) A typical mutation Here, this idea, called GA-based FANN, is used as a validated method [25]. In GA-based FANN, genetic algorithm tries to find network parameters in an optimized manner. Such that tuning the weights and biases is an aim to find suitable network through optimization process of this algorithm. To this end, firstly, the parameters of network are simulated as the genes on a genome, then crossover and mutation functions, as a reproduction process, follow optimization process in an evolutionary way. These two functions have been illustrated as in Figure 4. Depicted (a) of this figure illustrates crossover function in which the gene of segmented parts of genomes are replaced. The mutation, which holds after the crossover in GA optimization process, has been illustrated in part (b) of this figure; in which the values of some defined genes are changed randomly. In this chapter, an improved case of previously used GA-based fuzzy neural network in last research is used as major part of the system as shown in Figure 5 [11]. In comparison, the previous system was using one phase GA-based FANN abbreviated as 1P-GBLM-ES; while this system uses two phase GAbased FANN abbreviated as 2P-GBLM-ES shown in Figure 6.

116

Computational Intelligence and Modern Heuristics

Customer's opinion

1P-GBLM-ES

Specialist believe

Quality score

Fuzzy values

Customer

One phase

Fig. 5. general structure of 1P-GBLM-ES Customer's opinion

2P-GBLM-ES

Specialist believe

Custome

Fuzzy values

Phase I

Quality score

Phase II

Fig. 6. general structure of 2P-GBLM-ES Figure 5 explains the steps of constructing 2P-GBLM-ES. This system is designed in two phases of place-definition and shape-definition; in which a suitable place for fuzzy value is obtained in steps two to eight using support and core of the fuzzy numbers and a suitable shape using middle in steps nine to sixteen [11].

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

117

Algorithm 2: The steps of the 2P-GBLM-ES

1 begin 2 P GBLM 2 begin phase I 3 initialize ( ) 3 x1 create ( ) 4 5

while terminationCrite rion ( ) do xnew update ( x1)

6

if f ( xnew ) f ( x ) then x1 xnew

7 8 9 10

return x1 end phase I begin phase II initialize usin g x1 boundaries ( )

11

x2 create ( )

12 13

while terminationCrite rion ( ) do xnew update ( x 2)

14

if f ( xnew ) f ( x) then x2 xnew

15

return x2

end phase II 17 end 2 P GBLM 16

Here in the implementations, heuristic and uniform models have been used for the crossover and mutation, respectively. It is noticeable that; here GA as an optimization technique is a lateral part of major FANN in evaluator system.

3. Implementation And Results Earlier, an approach were proposed to construct a customer satisfactory evaluator system based on the frame of Figure 6 using Algorithm 2. In this section, proposed approach is implemented to construct this evaluator system; a three-layer GA-based FANN with seven neurons are used to construct 2P-GBLM-ES. In order to have a higher accuracy for 2PGBLM-ES, suitable allotments of learning generations for first and second phases are found. To emerge the superiority of proposed system in comparisons, another customer satisfactory evaluator system has been constructed based on the frame of Figure 5 using Algorithm 1. In this order, a three-layer GA-based FANN consisting of seven neurons have been used to construct 1P-GBLM-ES. The architecture of the networks are designed such that considers the simplicity and less complexity for the network. Two datasets are used to test the implementation; utilized datasets have been generated based on indicators data of [5], where customer's opinions have been shown based on pre-assumed indicators. Then, computed gap has been computed as the difference between expected value and satisfaction

118

Computational Intelligence and Modern Heuristics

value of customer's opinion from current status. The comparisons results for 1P-GBLM and 2P-GBLM are in terms of generated error and executed time; initially, the first subsection shows the validity of proposed approach by comparison, then the ability of proposed evaluator system has been shown in the second subsection using dataset of Table 4. Validation of Proposed Evaluator System: This subsection shows performance validity of constructed 1P-GBLM-ES and 2P-GVLM-ES for approximating the gap in a small-scaled data environment using the dataset of Table 3 in Appendix. The results are supposed to be a direction of showing the capability for these systems in a more complex environments to show the superiority for 2P-GBLM-ES, which is presented in the next subsection. Regarding the validation test, two customer's opinions are considered that are almost in contradiction to each other as shown in Figure 7 based on Table 3. Then, neural evaluator system is trained to approximate the gap based on new data. The learning processes were done in the same conditions for initial population using size 50 for 200 generations, while the average of received errors were obtained in terms of 100 times iteration. In order to construct 2PGBLM-ES, suitable allotments of learning generations for first and second phases were obtained as shown in Figure 10. Then, trained networks were tested for the validation; two new customers who had a middle opinion were evaluated, as shown in Table 1. One of the customers has an exactly middle opinion, where the gap resulted from his/her is exactly 5.1. The other customer has almost a fair opinion, where the gap resulted from his/her is a value around 5.1. Regarding the validation for 1P-GBLM-ES, the average of generated error for trained system was 0.03 in 16-second time. The results of approximation for this training were obtained as shown in figures 8 and 9 for first and second test customers, respectively. Customer Indicator Product Service Network System Expected Gap

#1

#2

(4.55,4.67,4.76,4.89,5.1,5.3,5.44,5.53,5.65) (4.5,4.61,4.74,4.85,5.1,5.35,5.46,5.58,5.7) (3.6,3.91,4.2,4.5,5.1,5.7,5.99,6.29,6.6) (3.9,4.15,4.39,4 62,5.1,5.59,5.81,6.04,6.3) 5.1

(4,4.21,4.4,4 61,5,5.37,5.6,5.77,6) (4,4 28,4.54,4.8,5.3,5.77,6.02,6.23,6.5) (3.6,4.02,4.43,4.88,5.6,6.04,6.19,6.32,6.5) (4,4.09,4.16,4.24,4.5,4.96,5.25,5.51,5.8) 5.1

Table 1. Fuzzy values of the indicators for validation test.

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

119

Black color for tested customer 1

0.75

Y

0.5

0.25

0 2

3

4

5

Gap of customer 1

6

X

7

8

Gap of customer 2

Fig. 7. Depicted opinions of the customers trained by evaluator systems

Black color for tested customer 1

Y

0.75

0.5

0 25

0 2

3

4

5

6 X

7

Predicted Gap

Fig. 8. Predicted gap for the first test customer using trained 1P-GBLM-ES

8

120

Computational Intelligence and Modern Heuristics

▬ tested customer i

1

Y

0.75

0.5

0.25

0 2

3

4

5

6 X

7

8

Predicted Gap

Fig. 9. Predicted gap for the second test customer using trained 1P-GBLM-ES Figures 8 and 9 shows the values obtained from evaluating new assumed customers are 5.04 and 5.05, which are as expected. Therefore, the results show that customer-preference orientation of 1P-GBLM-ES in approximating customer's opinion works properly for a small-scaled environment. Then, regarding the validation for 2P-GBLM-ES, the same initial population was used to train the system as for 1P-GBLM-ES. In order to have a suitable accuracy for this system, different cases of allotments were tested to find a suitable case for each phase of the system. The result in Figure 10, which is the average of 100 iteration, shows the best-case belonging to 90% and 10% for the first and second phases, respectively. Then, 2P-GBLM-ES was trained using best-case allotment, where the average of overall generated error for the trained system obtained 0.002 in 11-second time. Figures 11 and 12 shows the outcome received form trained 2P-GBLM-ES using best-case allotment in evaluating new assumed customers that is 5.1 and 5.25 as expected.

Measuring Customer Service Satisfactions Using Fuzzy Artificial Neural Network with Two-phase Genetic Algorithm

Overall error

Fist phase error

121

Second phase error

0.04 0.035

ERROR

0.03 0.025 0.02 0.015 0.01 0.005 0 90 %

-1 0%

80 %

-2 0%

80 %

-2 0%

40 %

-6 0%

50 %

-5 0%

40 %

-6 0%

30 %

-7 0%

20 %

-8 0%

10 %

-9 0%

ALLOTMENT

Fig. 10. Different cases of allotments for first and second phases of 2P-GBLM-ES using dataset of Table 3.

Black color for tested customer 1

Y

0.75

05

0.25

0 2

3

4

5

6 X

7

Predicted Gap

Fig. 11. Predicted gap for the first test customer using the trained 2P-GBLM-ES

8

122

Computational Intelligence and Modern Heuristics

i

▬ tested customer t

1

Y

0.75

0.5

0.25

0 2

3

4

5

6 X

7

8

Predicted Gap

Fig. 12. Predicted gap for the second test customer using the trained 2P-GBLM-ES The obtained results of figures 8, 9, 11 and 12 in this subsection, validate the performance of both 1P-GBLM-ES and 2P-GBLM-ES in approximating the gap. However, 2P-GBLM-ES showed to have less error in a less execution time. Ability of evaluator system: In this subsection, the ability of 1P-GBLM-ES and 2P-GBLM-ES are analyzed in approximating the gap based on customer's opinion, in which more of them are exist in a more complex environment. The importance of this analysis is to show the approximation ability of both evaluator systems which are based on more available preferences. This makes resulted outcome to be more reliable for the enterprise and, thus, more assured strategic decisions could be taken. Here, ten customers data are utilized, which have been shown in Table 4 of Appendix. Learning behaviors are analyzed based on variation percentage of error decrease using different populations, in order to show the ability of constructed systems in learning data. The results of learning process for 1P-GBLM-ES and 2P-GVLM-ES, using 500 generation and three different population sizes of 50, 200 and 500, have been shown in figures 13 and 15. Figure 11, which illustrates the learning behavior of 1P-GBLM-ES, shows that the variation rate of generated error keeps to its stability before the last generation just after achieving to its high value; this happens by passing a high decrement. Starting point of this, which is a threshold of convergence decrement to the optimum, happens in the 51st generation at the 10% of the 500 training generations. Vertical dashed-line shows this threshold in Figure 11, which the general status of suitable evaluator system is found. However, suitable evaluator system is defined after the threshold that needs ability of learning method in finding precise values. According to achieved threshold, it is possible to say in a pessimistic way that the ability of constructed system in learning the data of Table 6 and utilized populations is in the interval (0.0054-ε <error

Our partners will collect data and use cookies for ad personalization and measurement. Learn how we and our ad partner Google, collect and use data. Agree & close