279
IT4OD October 19 -20, 2014 Department of Mathematics and Computer Science University of Tebessa Proceedings of International Conference on Information Technology for Organization Development Edited by General Chair Conference: - Hakim BENDJENNA And Program Chairs: - Makhlouf DERDOUR - Louardi BRADJI - Mohamed Ridda LAOUAR __________________________________________________________________________________________ © IT4OD 2014

IT4OD 2014 Proceedings

Embed Size (px)

Citation preview

Page 1: IT4OD 2014 Proceedings

IT4OD

October 19 -20, 2014

Department of Mathematics and Computer Science University of Tebessa

Proceedings of

International Conference on Information Technology

for Organization Development

Edited by General Chair Conference:

- Hakim BENDJENNA

And Program Chairs: - Makhlouf DERDOUR

- Louardi BRADJI

- Mohamed Ridda LAOUAR

__________________________________________________________________________________________

© IT4OD 2014

Page 2: IT4OD 2014 Proceedings

International conference on Information Technology for Organization Development

© IT4OD 2014

Page 3: IT4OD 2014 Proceedings

IT4OD

October 19 -20, 2014

Department of Mathematics and Computer Science University of Tebessa

Proceedings of

International Conference on Information Technology

for Organization Development

Edited by General Chair Conference:

- Hakim BENDJENNA

And Program Chairs: - Makhlouf DERDOUR

- Louardi BRADJI

- Mohamed Ridda LAOUAR

__________________________________________________________________________________________

© IT4OD 2014

Page 4: IT4OD 2014 Proceedings

© IT4OD 2014

Table of Contents

Preface 1 Keynotes Speakers 5 Contribution Papers 7 Topic 1: Software Engineering 8 Lamia GAOUAR, Abdelkrim BENAMAR and Fethi Tarik BENDIMERAD. Requirements of cross platform mobile development tools

9

Khelifa BENAHMED and Amel DOULI. Design of a New Smart-Irrigation System in the South of Algeria 16 Ahmed MOKHTARI and Salima HASSAS. The evolution of collaboratif tagging systems and the relation with the emergence of language: Agent based modeling

21

Tarek ABID and Hafed ZARZOUR. Integrating Linked Open Data in Geographical Information System 26 Messaoud ABBAS. Using FoCaLiZe to Check OCL constraints on UML classes 31 Khelifa BENAHMED and Amel DOULI. Design of smart grid system in south Algeria 39 Topic 2: Security and Access Management 46 Tahar MEKHAZNIA and Abdelmadjid ZIDANE. Swarm intelligence algorithms in cryptanalysis of Simple Feistel Ciphers

47

Mustapha HEMIS and Bachir BOUDRAA. Secure audio watermarking algorithm: An application for copyright protection

53

Meriem ZAITER, Salima HACINI and Boufaida ZIZETTE. La tolérance aux fautes à base d’agents pour les systèmes domotiques

59

Othaila CHERGUI, Abdallah MERAOUMIA and Hakim BENDJENNA. Robust Multimodal Personal Identification System Using Palmprint & Palm-vein Images

65

Salah Ahmed OTHMAN and Tarik BOUDGHENE STAMBOULI. Core Points Detection for Touch Based and Touch-less Fingerprint Images

71

Ahmed AHMIM and Nacira GHOUALMI-ZINE. A hierarchical intrusion detection system based on combining predictions of different classifiers

76

Topic 3: Pervasive Systems and Multi-criteria Decision 82 Imene BENATIA, Mohamed Ridda LAOUAR and Hakim BENDJENNA. Cloud based Decision Support System for urban planning

83

Lakhdar LAIMECHE, MEROUANI Farida Hayet and Mazouzi SMAINE. New feature vector for steganalysis 89 Lydia YATAGHENE, AIT-IDIR Kahina, DEBA Abbassia and EDDOUD Abdelkader. A Cloud Computing model for Algerian universities

95

Salsabil GOUCEM, Saddek BENABIED and Hakim BENDJENNA. AFuzzyChoq: A Multi Criteria Decision Method for Classification Problem

101

Topic 4: Networks and Embedded Systems 108 Aicha AGGOUNE, Abdelkrim BOURAMOUL and Mohamed Khiereddine KHOLLADI. Personnalisation d’accès aux sources de données hétérogènes pour l’organisation des grands systèmes d’information d’entreprise

109

Noureddine HAOUARI and Samira MOUSSAOUI. Segment-based Local Density Estimation for VANETs 116 Soltane MERZOUG, Makhlouf DERDOUR and Mohamed GHARZOULI. CCBRP: A protocol based QoS for mobile multimedia sensor networks

121

Nour El Houda BAHLOUL, Mohamed Rida ABDESSEMED and Abdelmajid ZIDANI. Bio-inspired Routing Protocol, Oriented Maintaining of Connectivity by Mobility Control

128

Fateh BOUTEKKOUK and Soumia OUBADI. Periodic/Aperiodic Tasks Scheduling Optimization for Real Time Embedded Systems with hard/soft constraints

135

Page 5: IT4OD 2014 Proceedings

© IT4OD 2014

Topic 5: WEB Technology and Knowledge 141 Mohamed GHARZOULI and Djamel BENMERZOUG. Developing a Knowledge Distributed Architecture to Discover and Compose Semantic Web Services

142

Houda EL BOUHISSI and Mimoun MALKI. Building Web Service Ontology: A Reverse Engineering Approach 150 Adel ALTI, Mourad SAADAOUI and Makhlouf DERDOUR. Semantic Social-Based Adaptation Approach for Multimedia Documents in P2P Architecture

156

Mohamed BELAGGOUNE, Saliha OUKID and Nadjia BENBLIDIA. Ontology driven graph matching approach for automatic labeling brain cortical SULCI

162

Razika DRIOUCHE, Nawel KEMCHA and Houda BENSASSI. Processus de construction d'ontologie basé sur l'extraction automatique des connaissances à partir des textes structurés

168

Mohamed GASMI and Mustapha BOURAHLA. Le raisonnement sur la logique de description floue et décomposée

174

Takashi MATSUHISA. Common-Knowledge, Communication and Cooperation Management : Epistemic Approach to Cooperative Management

181

Topic 6: Artificial Intelligence and Multimedia 188 Nadia ZIKIOU, Mourad LAHDIR and Soltane AMEUR. Application des Curvelets et Régression SVM pour la Compression d’Images

189

Borhen Eddine DAKKAR and Fella HACHOUF. No-reference Image Quality Assessment for JPEG2000 Compressed Images Using Natural Scene Statistics And Spatial Pooling

195

Assia BELOUCIF and Lemnouar NOUI. A symmetric image encryption scheme based on diagonal matrices and the XOR operation

200

Nour El-Houda BENALIA, Nesrine OUANNES and Noureddine DJEDI. An Improved CUDA based Hybrid Metaheuristic for Fast Controller of an Evolutionary Robot

205

Amir BENZAOUI. Face Recognition Using Local Binary Patterns in One Dimensional Space and Wavelets 211 Ahlem MELOUAH and Aicha TAMEUR. Seeded selection for 2D medical image segmentation based on region growing algorithm: a survey

218

Topic 7: Poster 222 Djoudi KERFA and Mohamed F. BELBACHIR. A New Moving Object Detection Method for Visual Surveillance 223 Karima DJEBAILI and Lamine MELKEMI. Cryptanalysis of discrete logarithms based cryptosytem using continued fraction and the legendres result

229

Mohammed SAIGAA, Abdallah MERAOUMIA, Salim CHITROUB and Ahmed BOURIDANE. Fusion of Finger-Knuckle-Print & Finger-Vein-Print for Personal Identification Using PCA

234

Fatiha OUAZAR, Malika IOUALALEN and Mohand Cherif BOUKALA. Verification of modular systems 240 Karima BENHAMZA. Intelligent traffic light control using an adaptive approach 246 Manel GHERARI, Abdelkrim AMIRAT and Mourad OUSSALAH. Describing Ubiquitous Mobile Cloud Systems 251 Khelifa BENAHMED, Abla SMAHI and Souhila HIRECHE. Smart grid in Algeria: ambition towards a great expectation

259

Ahcene Youcef BENABDALLAH and Rachid BOUDOUR. Une nouvelle approche de développement des IPS pour les SOCs à base du Systemc

265

Page 6: IT4OD 2014 Proceedings

Preface

Page 7: IT4OD 2014 Proceedings

Preface

It is with great honor and pleasure that we welcome you to the International Conference on Information Technology for Organization Development (IT4OD’ 2014). This conference is sponsored by IEEE subsection, Algeria. The IT4OD’ 2014 was held in University of Tebessa, Algeria, on 19-20 October 2014. The IT4OD’2014 Conference continue to be the premier meeting attracting an international participation of Information Technology for Organization.

This volume of the proceedings contains the abstracts of the tow invited talks, and papers selected for presentation and poster at the conference. The papers were categorized into seven six topics and poster session: Software engineering, Security and Access management, Pervasive Systems and Multi-criteria Decision, Networks and Embedded Systems, WEB Technology, IA and Multimedia.

We would like to take this opportunity to thank all the authors whose papers were accepted, as well as those whose papers could not be included, for their submissions to IT4OD’ 2014.

We have the honor of welcoming our very notable keynotes speakers in IT4OD’2014. We are very thankful to Professor Takashi MATSUHISA from Russian Academy of Science for finding the time to present a keynote on his very extensive work on Common-Knowledge, Communication and Cooperation Management Research, a topic which is especially crucial to our conference themes.

Also, many thank to our distinguished Pr. Hafid HAFFAF, Oran Es-Senia, IGMO, Algeria for accepting our invitation and for honoring the conference with his presence and his inspired talk on Vehicular Network Infrastructure.

We are indeed very grateful for the support of a large number of individuals and organizations without which this conference would not have been possible:

- The Program Committee (PC) consists of experts in the various source subfields. We would like to thank PC members for their huge efforts within the too short time.

- The Local Organizing Committee managed everything following the policy of IT4OD’2014. We would like to thank all members of Local Organizing Committee as well as the researchers who supported the conference in a multitude of ways.

We would like to express our deep appreciation and very grateful to a conference sponsor for their support:

- University of Tebessa, - IEEE Algeria subsection, for the support, - LAMIS Laboratory.

We hope that this Supplementary Proceedings, both in hardcopy and on the CD Rom, will provide a valuable resource for Information Technology researchers and Organization Development, both those who have travelled to University of Tebessa, Algeria, to participate in this Conference, as well as to the others, who are less fortunate and will miss the inspiring presentations and discussions but will, at least, have this record of the conference activities.

We wish the delegates a most enjoyable and memorable conference.

IT4OD’2014 Chair

Hakim BENDJENNA

IT4OD’2014 Program Chairs Makhlouf DERDOUR,

Louardi BRADJI Mohamed Ridda LAOUAR

1 © IT4OD 2014

Page 8: IT4OD 2014 Proceedings

International conference on Information Technology for Organization Development

© IT4OD 2014

Conference Committees

Conference Chair Honorary Conference Chair - Hakim BENDJENNA - Pr. Said FEKRA, Rector of Tebessa University

Program Chairs - Makhlouf DERDOUR, - Louardi BRADJI - Mohamed Ridda LAOUAR

Technical Program Committee Abdel ENNAJI University of Rouen France

Abdelkrim AMIRAT University of Souk Ahras Algeria

Abdelkrim BOURAMOUL University of Constantine 2 Algeria Abdelkader BELKHIR USTHB Algeria Abdelouahed GHARBI School of Superior Technologies Canada Adil ANWAR University of Rabat Morocco Ahmed BOURIDANE University of Newcastle UK Aurora VIZCAINO University of Castilla-La Mancha Spain Axel Van LAMSWEERDE University of Louvain Belgium

Boualem BENATALLAH University of new south Wales Australia Chawki DJEDDI University of Tebessa Algeria Congduc PHAM UPPA France

Djamel BENMERZOUG University of Constantine 2 Algeria

Djamel SAMAI University of Kasdi Merbah Ouargla Algeria

Faiez GARGOURI University of Sfax Tunisia Farid MOKHATI University of Oum el Bouaghi Algeria Farida SEMMAK University of Paris-est France Fattah ZIRARI University of Ibn Zohr Morocco Filippo LANUBILE University of Bari Italy Haikal EL ABED Technical Trainers College , Saudi Arabia Hayet MEROUANI Badji Mokhtar University Algeria Ivan JURETA University of Namur Belgium Imran SIDDIQI University of Bahria Pakistan Javier Gonzalez HUERTA University of Polytechnic-Valencia Spain John MYLOPOULOS University of Trento Italy Karim ZAROUR University of Constantine 2 Algeria Klaus POHL University of Essen Germany Lawrence CHUNG University of Texas USA Lin LIU University of Tsinghua China Lotfi BOUZGUENDA University of Sfax Tunisia Luca BREVEGLIERI Politecnico di Milano Italy Malika LOUALALEN USTHB Algeria Marc DALMAU University of Pau France Marco KUHRMANN University of München Germany MariaGrazia FUGINI Politecnico di Milano Italy Mehmet AKSIT University of Twente Netherland Abdallah MERAOUMIA University of Ouargla Algeria Michael WHALEN University of Minnesota USA Mohamed Gherzouli University of Constantine 2 Algeria Mohamed Ridda LAOUAR University of Tebessa Algeria Mohamed K. KHOLLADI University of El oued Algeria Mostafa EZZIYYANI University of Tangier Morocco Mohammad SADOGHI University of Toronto Canada Nacer eddine ZAROUR University of Constantine 2 Algeria Nadjia BENBLIDIA Saad Dahlab University Algeria Nacira GHOUALMI University of Annaba Algeria

2 © IT4OD 2014

Page 9: IT4OD 2014 Proceedings

International conference on Information Technology for Organization Development

© IT4OD 2014

Okba KEZAR University of Biskra Algeria Panos VASSILIADIS University of Ioannina Greece Philippe ANIORTE University of Bayonne France Philippe ROOSE University of Pau France Pierre-Jean CHARREL University of Toulouse 2 France Rahma BOUAZIZ University of Gabes Tunisia Raouf BOUTABA University of Waterloo Canada Sahnoun ZAIDI University of Constantine 2 Algeria Saliha AOUAT USTHB Algeria Salim CHITROUB USTHB Algeria Samira SI-SAID CHERFI CRCST France Slim KAMMOUN University of Tunis Tunisia Takashi MATSUHISA INCT Japon Terrill FRANTZ Peking University China Xavier FRANCH Universitat Politécnica de Catalunya Spain Younes LAKHRISSI University of Fes Morocco Zizette BOUFAIDA University of Constantine 2 Algeria

Organization Committee

- Abdeljalil GATTAL

- Abdelmalek METROUH

- Afrah DJEDDAR

- Akrem BENNOUR

- Chadia NASRI

- Chawki DJEDDI

- Fathi HEMIDANE

- Hakim GHARBI

- Imen BENATIA

- Issam BENDHIB

- Kamel HAOUAM

- Manel GHERARI

- Mohamed AMROUNe

- Med Saleh SOUAHI

- Med Yacine HAOUAM

- Salima BOUROUGAA

- Samir TAG

- Taher MEKHAZNIA

3 © IT4OD 2014

Page 10: IT4OD 2014 Proceedings

Keynotes Speakers

4 © IT4OD 2014

Page 11: IT4OD 2014 Proceedings

Keynotes Speakers

Takashi MATSUHISA Institute of Applied Mathematical Research. Karelia Research Centre, Russian Academy of Science. Petrozavodsk, Karelia, Russia

Title: Common-Knowledge, Communication and Cooperation Management – Epistemic Approach to Cooperative Management –

Abstract: Issues of moral hazard and adverse selection abound in each and every contract where one has a self interest and information that the other party does not possess. While this is a fertile research area, there is still need for more information on how you handle a party to a contract with more information than you. The moral hazard is very often the bottleneck, and the buyer-supplier cooperation is an epitome. This paper re-examines the issue in the framework of a principal-agent model under uncertainty. It highlights epistemic conditions for a possible resolution of the moral hazard between the buyer and the suppliers. We show that the moral hazard disappeared in the principal-agent model under uncertainty if the buyer and suppliers commonly know each agent’s belief on the others’ efforts, or if they communicate their beliefs on the others’ efforts to each other through messages.

Biography: Pr. Takashi Matsuhisa is Lecturer of Mathematics at Department of Science, Ibaraki National College of Technology. He studied Mathematics in University of Tsukuba, and holds DrSc in Mathematics from Ritsumeikan University, Kyoto, Japan. His research interests lie at the interface of mathematical game theory, multi-modal logics, mathematical economics and management. He is a guest editor of the special issue, Game Theory and Application, of Journal of Applied Mathematics.

Hafid HAFFAF Department of Computer Science, Oran Es-Senia, IGMO, Algeria

Title: Vehicular Network Infrastructure

Abstract: Vehicular networks will settle more only improve road safety, but they will also offer new services to road users making the journey enjoyable. In this paper, a survey of different required technologies to settle vehicle communication infrastructure is presented. After defining the role and classification of intelligent transport systems, we shall see different kind of protocols and mobility models. From Vanet, to ad hoc mobile networks, what is needed to give a communication platform which encompass vehicle to vehicle and vehicle to infrastructure communication? We insist in DSRC protocol as a model of road communication and give a short sea port automated vehicular infrastructure. The well-known simulation tools are finally presented.

Biography: Pr. Hafid HAFFAF obtained Doctor Degree in computer Science in 2000; is a senior lecturer at the University of Oran Es-Senia (Algeria). He actually heads the R.I.I.R Laboratory at Computer science department –Oran University and Delegate of Research Agency (ANVREDET), Algeria.

5 © IT4OD 2014

Page 12: IT4OD 2014 Proceedings

His researchers concern different domain as Automatic control and diagnosis, optimisation reconfiguration using matroid theory, system of system approaches and their applications in Bond graph and monitoring. He has many collaborations projects with European Laboratory: Polytech Lille where he worked in Intelligent transport systems infrastructures and LIAU Pau (France) in the domain of Wireless sensor Networks (CMEP project).

6 © IT4OD 2014

Page 13: IT4OD 2014 Proceedings

Contributions Papers

7 © IT4OD 2014

Page 14: IT4OD 2014 Proceedings

Topic 1: Software engineering

8 © IT4OD 2014

Page 15: IT4OD 2014 Proceedings

Requirements of cross platform mobile development tools

Lamia GAOUAR Department of Computer Science

University Abou Bekr Belkaid Tlemcen, Algeria

[email protected]

Abdelkrim BENAMAR Department of Computer Science

University Abou Bekr Belkaid Tlemcen, Algeria

[email protected]

Fethi Tarik BENDIMERAD Department of Telecommunication

University Abou Bekr Belkaid Tlemcen, Algeria

[email protected]

Abstract—While Smartphone are gaining popularity in recent year, we observed the emergence of several operating systems and device types, all evolving at different rhythms. Each platform became with its own SDK tools and requires specific capabilities. It is a challenge for developers to provide applications that meets customer expectations in this competitive market. The real challenge is when the application is targeted for multiple platforms. Developing native app for each platform, separately, need extreme effort. Cross-platform mobile development approaches emerged to address this problem. Several tools implementing these approaches have appeared with more or less success. Cross platform solutions can be recommended in general, but they differ in term of performance, usability and development environment provided. In this paper, we provide an overview of cross platform approaches. Afterward, we present several decision criteria regarding to the desirable requirements in cross platform tools, following by an analysis about some cross platform tools based on these requirements.

Keywords—Cross-platform tools; mobile application; cross platform mobile development; requirements

I. INTRODUCTION For several years, we observe a strong growth in popularity

of mobile devices as Smartphone and tablets [1]. This is due in large part to the applications developed for them and whose download rate is g rowing exponentially. But this growth is accompanied by the fragm entation of mobile platform, which seriously complicate the mobile applications development. Indeed, the mobile m arketplace is divided between different mobile platforms and very quickly evolving: there are at least ten different mobile platforms but just four have a rel evant number of users (Android, iOS, Windows Phone, Blackberry OS) [1], knowing that some are called to disappear and others to appear. Further more, each platform offers its own SDK tools, need specific p rogramming skills (in terms of both languages and API) and using its own application market (see TABLE I) [2]. Companies then are being forced to develop and provide their solution as many platforms as possible in order to target the most users. Providing a native specific solution is a main challenge for th e companies due to the cost, resources and time associated with th e development activity for e ach platform. About 75-80% of the cost to develop for the first platform needs to be budgeted to build the second platform [3].

TABLE I. MAJOR MOBILE PLATFORMS

OS Programming

Language Development Environment

Application Store

Google’s Android Java, XML Eclipse, SDK

Android Play Store

Apple’s iOS Objective-C XCode AppStore Microsoft Windows

Phone

Visual C#, C++ Visual Studio MarketPlace

RIM BlackBerry OS Java

MDS Studio, Plugin for

Eclipse

BlackBerry App World

Cross-platform mobile development approaches emerged to address all or part of this challenge by allowing developers to implement their applications in one st ep for a ra nge of platforms. Efforts and development repetitions for m ultiple platforms can be reduced and pr oductivity increased by cross platform application development. Based on t hese approaches, more than 100 cross pl atform tools have em erged to help developers to create cross pl atform mobile application. Cross platform solutions can be recom mended in general, but they differ in term of performance, usability and development environment provided. Our paper present an over view of existing approaches of cros s-platform mobile development divided into five different categories. Afterward, we identify the desirable requirements of t echnology implementation pertaining to development environment, API and documentation and ot her criteria. We have also selected five cross platform tools (one per appr oach) that we wil l study based on such desirable requirements.

This paper is organized as follows: the next section gives a description of existing approaches of cr oss platform mobile development. In sect ion 3, we describe some related works. Then, we introduce the desirable requirements of cross platform tools in section 4. In the light of these requirements, we discuss about five selected frameworks (one per approach) in section 5. We conclude this paper in section 6.

II. OVERVIEW OF APPROACHES There are two ways to develop mobile applications for

mobile devices: the native and the cross-platform approach [2]. The native approach which permits to create nat ive

9 © IT4OD 2014

Page 16: IT4OD 2014 Proceedings

applications consists of dev eloping the same application as many as there’s platform usi ng, for each platform, its own Software Development Kit (SDK) an d frameworks. For example, applications for Android are programmed in Java and XML, the platform functionality is accessed using the framework provided by Android a nd the user interface is rendered using platform provided elements. In di stinction, applications for i OS are developed using the language programming Objective-C and Apple’s frameworks.

In contrast to native approach, we present in this section an overview of the cross-platform approaches. Cross platform approach proposes to create single application which can be used across multiple platforms. They are designed to save time and costs by allowing developers to write an application once in a l anguage they know and using a framework which is adaptable for multiple platforms. For t hat purpose, different ways can be borrowed [4][5]:

A. Web Approach

Web approach consists to produce web applications that are designed to be executed in the web browser of mobile devices. Mobile web applications are devel oped using the standardization of we b technologies as HTM L, CSS and JavaScript. In this approach, the mobile device will not have any application specific components installed. The client hosts the application user interface a nd user data validation logic, while the server implements the business logic. The application is supported by the device browser, it is then platform independent.

The main advantage of we b applications is that they are based on we b technologies and then can be accessed in a similar way t hrough mobile web browsers on al l platforms. Since data and application are host ed on t he server, no application update in the mobile device is required. The application is also easily monitored and maintained. An important limitation of th is approach is that th e applications cannot access the mobile device hardware and software such as the address book, calendar, GPS sensors, etc. Web applications can also suffer for a lake of performance due to connection and network delays. Nowadays, users seek application stores for the desired application. Considering the web applications are accessible using an URL and can not be distributed through mobile application stores, this might have a negative impact on its popularity. Web applications usually do not look and feel like a native application which can cause prejudice to the user experience.

Several mature tools are dedicated to mobile web applications development, we can find also: jQuery Mobile [6], jQTouch [7], Dojo Mobile [8], AppsBuilder [9], iBuildApp [10] and Se ncha Touch [11] which is the tool that we have selected for our study.

B. Hybrid Approach

To resolve the lack of native functionality but to still permit to employ common web t echnologies, hybrid approach has emerged as a co mbination of we b technologies and native functionalities. Hybrid approach uses the browser engine of the device which renders and displays the HTML content in native container on the mobile device that is a full screen Web view

control. The device capabilities are ex posed to the hybrid application through an abstraction layer. The abstraction layer exposes the device capabilities as JavaScript APIs. Unlike web applications, hybrid applications are downloaded and installed on the mobile device.

In contrast to web a pplications, a hybrid application is distributable through application stores. Since native platform features are made available through the hardware abstraction layer, application can make use of device features. However, hybrid applications are inferior in performance compared to the native applications since the execution happens in the browser engine. The user interface also may lack of the look and feel of native application. To achieve the native look and feel, the platform specific styling might be required.

The most popular exponent of this approach is PhoneGap [12] that we h ave chosen for our st udy. Among the existing tools based o n this approach we can al so cite frameworks as MoSync [13].There are some tools as m gwt [14] or vaadin TouchKit [15] that more or less try to mimic native user interface by us ing web technologies. However these previous approaches suffer from running in web environment which remains their fundamental limitation.

C. Interpreted Approach

In the case of interpreted app lications, the application code is deployed in the mobile device and, at runtime, an interpreter executes the code. The native f eatures are made available through an abstractio n layer. The interpreter interprets the source code o n runtime across different platforms and t hus supports cross platform application development. The interpreted application interacts with the abstraction layer to access the native APIs. In interp reted applications, the user interface is made up of platfo rm-specific native ele ments for user interaction.

In contrast to previous approaches, an Interpreted application provides the look and feel of a native application. Interpreted application is acce ssible through t he application store. The device hardware and platform features are wrapped with specific framework Application Programming Interface (API).The main disadvantage of interpreted application is that the development is dependent on t he feature set provided by the selected framework. The runtime interpretation of the code might degrade the performance of the application. Some fine-tuning can be required to tweak the look of the application.

Appcelerator Titanium [16] is among tools based on this approach. We will describe it in the appropriate section. Other tools that help to create in terpreted applications are Ado be Flash Builder [17] and Rhodes [18].

D. Cross-compiled Approach

The cross-compiled approach consists of providing the common programming languages for s pecifying applications. The developers can write the source code in a common programming language and the cross-compiler compiles the source code into particular native code by converting the source code to native binaries.

The main advantage of cross-compiled applications is that they provide all the features that the native applications

10 © IT4OD 2014

Page 17: IT4OD 2014 Proceedings

provide. Device hardware and software can be accessed here. All the native user interface com ponents can be used. Applications run with native performances and can be deployed on the application stores. Even if they are accessible, platform specific features such as camera access, loca tion services, local notifications, etc. cannot be reused. T hey are platform specific and the way to access varies from platform to other. Identifying and rectifying the cross-compilation phase issues will b e difficult for developers. Applications need to write in the language used by the cross-compiler. The cross platform solutions currently available in the market are not mature enough.

A very prominent example for a c ross-compiler tool is Xamarin [19] which is the framework that we chose for that approach. We can also add QTM obile [20] as cross-compiler tool.

E. Model Driven Approach

Model driven approach bases the development of applications on models used to describe the application. Using a DSL (more specific) or UML (more generic), a developer can describe an application on a high level, without having to deal with low-level technical issues such as how to fetch data or how to cache it. Automatic transformations generate source code for the supported target platforms from developer defined models. Generated applications are truly native and respect the native look & feel.

The main advantage of m odel driven approach is that provides a complete native application. The application runs on native environment without intermediate layout. The user can appreciate native look & fee l and nat ive performance of t he generated application. Since the generated application is a native application, it is visible in application stores and can be installed in the device. Developers have to maintain the model of the application to maintain the native code for each platform. Nevertheless, Model driven approach is limited to the application domain of t he model language. Only applications that fall in to the category supported by the model can be modeled. Otherwise, the language and the code generator must be enhanced. The generated code is still incomplete and must be completed manually with the native language and S DK tools. Thus, developers have to write this code fo r each platform individually. Integrating manually written code is still an issue.

Even if most of the tools that implement this approach a re still in early stage and they ar e not yet very popular, we have still selected the AutoMobile Project [21] as representative of model driven cross pl atform development solutions for our study. Most existing model-driven solutions like canappi mdsl [22] or applause [23] have not been much development progress lately, or n ot relevant in general practice like mobl [24], or also not active anymore like iPhonical [25]. However, model-driven approaches app ears as the most promising approach for cross-platform mobile development and gives rise to various research projects such as Xm ob [26], MD² [27] or AXIOM [28].

III. RELATED WORK Researches addressing the area of m obile development

have evolved to head t owards cross platform mobile development. Until recently, papers only discussed m obile platforms as we can see with th e works presented in [29] and [30]. For existing work dealing with cross-platform mobile development, we can refer t o [31] that have compared mobile platforms with regard to the openness of their architectures. In [2], the authors com pare the development of n ative applications and Web applications. Even if these works address more than one platform , they introduce the cross platform perspective only marginally.

While most articles dealing with cross-platform mobile development provide comparison criteria of cross-platform mobile development approaches or evaluation criteria for technology implementation of t hese approaches [33][34], in this paper, we focus on how to define the desirable requirements for cross pl atform mobile development tools. Indeed, with the emergence of m ore than 100 tools for this field, we t hink it is time to ask t he question about the requirements that such tools are required to provide.

We can find some related works that can be identified whenever we look for the desirable requirements of the cross platform tools. In [35], even if the authors discuss the desirable requirements in a cross pl atform framework, their aim is different. In fact, they have devel oped Android application with four cross platform tools (PhoneGap only, PhoneGap + JQuery Mobile, PhoneGap + Sencha Touch 2.0, Titanium) to evaluate the performance of such tools. In [33] , the authors present an evaluation of three frameworks (Titanium, Rhodes, PhoneGap + Sencha Touch) versus two native SDKs (Android SDK, iOS SDK) in criteria pertaining to functionality, usability features, performance and other categories.

In [4], the authors elaborat e on a l ist of 14 cri teria for evaluating cross-platform development approaches. T hese criteria have been struc tured into infrastructure and development perspective. “The infrastructure perspective sums up criteria relating to the life-cycle of an app, its usage, operation and functionality/functional range. The development perspective covers all criteria that are directly related to the development process of the app, e.g. topics like testing, debugging and development tools”. These criteria can be seen as requirements of cross platform tools but this is not explicitly mentioned because it is not the purpose of this article. In addition, all approaches are not addressed in the evalua tion (Just PhoneGap and Titanium are evaluated). Despite the topic seems to be si milar to our work, our aim is di fferent. In our work, we classify cross platform development approaches into five distinct categories. We include, in our analysis, one tool of each approach for an overall assessment. The evaluation of such tools will be based on t he requirements that we define in the next section.

As we can see, pre vious research in this area is sparse a nd often focuses on comparing a set of e xisting frameworks. In this paper, we would like to provide the desirable requirements of cross platform tools. The aim is to identify the required elements in the process of developing a cross platform mobile application, and t hus, such required elements that should

11 © IT4OD 2014

Page 18: IT4OD 2014 Proceedings

provide a t ool to claim the title of cross pl atform tool. Thus, our work can be considered as a complementary work.

IV. REQUIREMENTS OF A CROSS PLATFORM TOOLS The main “objective” of cross platform mobile

development approaches is to provide a mobile application that can execute on multiple platforms. However, we must not lose sight that the main “motivation” is to provide a cross-platform application which is clo sest to the concept of native application.

The native mobile applications are specifically intended to device’s operating system. The application is downloaded from an app store and resides on the device. On the one hand, native applications: 1) ha ve access to all native functionality of the device (GPS, ca mera, calendar, file system, etc.) 2) are installed on the device and accessible offline 3) the native look & feel is widely appreciate by users [2][36]. On the other hand: 1) native applications are able to run only on device’s operating system for which they are des igned to, what oblige com panies to produce the same application once for e ach target mobile platform 2) uncovered platforms represent lost customers for companies 3) maintaining separate applications requires development, testing, and di stribution each tim e a new OS release or device model becomes available [2][36][3].

The question of supporting multiple platforms is not new. The same problem occurred, 20 years ago, for PC platforms (Windows, Unix, Mac OS, etc.). With the o mnipresence of mobile devices in our daily life and fragmentation of platforms, it makes sense that developers are turn ing to multi-platform development and thus that framework vendors provide appropriate solutions [34]. Based on literature and our own analysis, we have i dentified the desirable requirements of any cross-platform technology presented as follow:

A. Mobile platform supported

Cross platform approaches by definition must support several platforms. This requirement takes into account the number and i mportance of supported mobile platforms, e.g. iPhone, Android and Windows Phone are pract ically mandatory since they are the largest shared mobile platforms. In addition, the equality of the support between the platforms should also be considered.

B. Development environment

Development environment covers various parameters. In this requirement, we consider the features of the development environment offered with the framework such as an Integrated Development Environment (IDE,) debugger, compiler, emulator, etc. and functionalities as source code editor, intelligent auto-completion, which usually accompanies the IDE. In addition to source code editor, the opportunity to create the graphical user interface through a WYSIWYG editor and to test the application without having to deploy it to a device or an emulator constantly is greatly appreciated. Also, the m aturity of the development environment reflects the maturity of the framework.

C. API and documentation

In this requirement, we di scuss the documentation quality of the fram ework and APIs available. The influence of the

documentation on the quality and ease of l earning is reflected in the progress of a developer during his training of a framework. The use o f APIs determines the feature of the application developed. APIs are speci fic to devi ces/platform and their availability varies from one framework to another.

D. Security

Smartphone are considered as easy to trap objects whose flaws are alrea dy known a nd exploited (tracks conversations, data recovery, scams). Applications developed with cross platform tools are not highly secure [37]. When it is considered that each mobile OS and each mobile device has its own flaws, it is d ifficult to apply a secu rity policy to an application designed to run on multiple platforms/mobile device. The ideal would be to introduce the concept of security in the heart of the development process of t he application [38][39][30]. Proper research needs to be carri ed out to secure the tools and applications.

E. Access to device specific features

The kind of a pplication determines its c apacity to access the features of the mobile device. There is a difference between the features according to nativ e application and web site application. The functionality requirements of an application can be identified as fo llow: 1) informational requirements, where the user primarily consumes content 2) t ransactional requirements, where the us er primarily interacts with the application to accomplish a task and 3) Device-spec ific requirements, e.g. offline transaction entry or file access. Most frameworks support standard device features, e.g. camera, GPS, Accelerometer, etc. and provide access to such features through intermediate layer as APIs.

F. Resource consumption

Resource consumption relates to the application developed with the cross platform framework. This requirement include in order: memory usage, C PU usage and power consumption [37]. Mobile phones like other pervasive devices suffer from resource shortages. These resources can influence each other, for example CPU utilization affects b attery consumption. Several studies have been undertaken on this subject [40][41][42]. The memory usage may increase for var ious reasons, this can be due t o the addition of features to generate user interface or to the use of HTML and JavaScript files. Several research works [43] [44][45][46] have appeared recently dealing with the power consumption of mobile applications. In mobile devices, the power is the most important resource [47] and the applications developed using cross-platform tools must use the battery of mobile devices effectively.

G. Look and feel

Success on an application depends i n large part on use r experience. Currently, the cross platform tools try to reproduce as closely as possi ble the look and feel of t he native application. Most users seek ap plications that resemble to native applications, in term of graphic user interface and reactivity of the application. Indeed, mobile is a device when applications have to be interrupted by event as a call or SMS. When users want to react to this event, af ter that, he w ants returning to the application where he left it. Fo r that purpose,

12 © IT4OD 2014

Page 19: IT4OD 2014 Proceedings

the support for backend co mmunication protocols and data formats becomes mandatory.

H. Visibility

The way to distribute the application will determine the visibility of this application. Generally, users are turning to app stores of mobile platforms to obtain an application, when web site applications are accessible only through URL and inte rnet connection. In addition, this requirement determines also the way of how to update and maintain the application, i.e. an y application update in the mobile device is required for web application since data and application are hosted on the server.

V. DISCUSSION In this section, we have sel ected five cross platform tools,

one per approach, in order to provide a description of such tools, according to the desirabl e requirements that we have detailed in the previous section. The main criteria of selecting these tools were their popularity and extensive use, especially for the first four tools. For the last one, even i f model driven tools are not mature enough, Automobile Project was selected because it appears as the most promising tool in its category.

We do not aim to compare these selected tools. But, our objective is to provide, for each approach, an overview of the existing cross platform tools based on what we have presented as the necessary requirem ents that must be met by any c ross platform tool.

A. Example of web approaches: Sencha Touch

Web applications are m ost often obtained through frameworks such as Sencha Touch [ 11] that allows creating free web applications. Sencha Touch is an HTM L5 mobile application framework for building web appl ications. Sencha Touch 2.3.1, which is the latest version at the time of this writing supports Android browser, Google Chrome for Android, BlackBerry 10, Bada Mobile Browser, Kindle Fire Browser, Windows Phone 8 an d Mobile Safari. In fact, this version of Sencha Touch only targeted at webkit browsers.

Sencha Touch can be used with Apache Cordova/PhoneGap or Se ncha’s native packager. Either enables to package th e application in a nati ve container and enables access to select device-level APIs una vailable to traditional web appl ications. However, the application suffers from the lack of performances due t o the execution on the browser.

Sencha Touch does not provide IDE for developing Touch applications but we can l ook to IDE as Net Beans, Webstorm and Aptana. But none of them provides a great experience programming. In addition, Touch provides a plugin for Eclipse environment.

B. Example of hybrid approaches: PhoneGap

This framework is based on the open source Cordova project. PhoneGap supports as for now (version 3.3.0) 7 mobile platforms: Android, iOS, BlackBerry, webOS, Windows Phone 7 and 8, Symbian and Bada. It allows developers to create mobile applications using modern web technologies as HTML5, CSS3 and JavaScript [48].

PhoneGap is a “web code wrapper”, i.e., PhoneGa p operates by packaging the web pa ge with the specific PhoneGap engine which is specific for each supported platform. This engine displays the page in a regular web view. Additionally, PhoneGap provides an access to device functionality as Accelerometer, Camera, Contact, GPS, etc. through JavaScript API’s. The API is implemented differently for each platform. This is why the application result is hybrid, i.e., it is not purely native neither purely web [34]. The product result is a b inary application archive that can be distributed through the application market.

PhoneGap does not allow having a centralized development environment because it does not provide an IDE to develop applications. Instead, it provides a servi ce called PhoneGap Build that allows developers to compile their applications in the cloud. Developers can also choice an IDE t o write the source code and take it to an appropriate IDE for the ta rget platform, e.g. Eclipse for Android, to additional code modifications.

Even if applications developed with PhoneGap are elaborate, they have more look and feel as web application than native application. PhoneGap is more adaptable for pr ojects where cross platform reach i s more important than high performances and user experience [34].

C. Example of interpreted approaches: Appcelerator Titanium

Appcelerator Titanium [16] is a development environment for creating native applications across different platforms, developed by Appcelerator Inc. Titanium applications are developed using web technologies as HTML5, JavaScript and CSS3. It uses JavaScript APIs and platform APIs to build the interface and to access native device features.

Titanium links JavaScript to native libraries, compiles it to bytecode and then the platform SDK builds the package for the desired target platform . The code is the n packaged with Titanium’s engine. At ru ntime, this engine interprets the JavaScript code and creates the user interface. The final application resembles to the typical platform appearance due to using native ele ments to build the user interface. Howe ver, application performances can be di sappointing due t o the interpretation of the source code every time the application runs.

Titanium also includes the Titanium Studio which is an Appcelerator's IDE. It is allo ws the writing, testing, and debugging of mobile applications. It is also offer the possibility to run and deploy the applications [49][50][16].

Small numbers of platforms are sup ported by Titanium: iOS, Android, Windows Phone, BlackBerry OS, a nd Tizen with, by the latest stable release version 3.2.0 of the framework.

D. Example of cross-compiled approaches: Xamarin

Xamarin [19] is a devel opment environment for cr oss-compiled applications that allows developing applications using the C# language. Xamarin 3, t he latest version of the framework, supports iOS, Windows Phone and Android.

13 © IT4OD 2014

Page 20: IT4OD 2014 Proceedings

To run the application on th e device, the cross compiler Xamarin translates the code of the application writing in C# to binary code t hat can run on the target platform. Xamarin applications are built with nativ e user interface controls. Thus, applications not only look like native application, they behave that way too. Xam arin also allows the access to all n ative devices and platforms features by providing all the native APIs of the supported platforms as C# libraries. Xamarin applications leverage platform-specific hardware acceleration, and are compiled for native performance [32].

Xamarin offers also its own IDE named “Xamarin Studio”. Studio provides a con vivial development environment with functionalities as co de completion, debugger, etc. Xamarin Studio allows also distributing the applications through the application stores [51].

E. Example of model driven approaches: AutoMobile

AutoMobile Project [21] appear s as one of the most active and most promising in its category. AutoMobile is funded by the European Commission.

The AutoMobile project exploits the modern paradigm of Model-Driven Engineering and code generation. It is based on abstraction, modeling and code generation to represent applications in a pl atform-independent manner, and then, generate the code to deploy the application and interaction logic onto the target platform. AutoMobile relies on modeling languages such as IFM L (Interaction Flow Modeling Languages) [52] and on tools like WebRatio [53].

What proposes AutoMobile: 1) a pl atform independent modeling language based on OMG standards (MDA, UML, IFML) for modeling applications 2) a set of sof tware components and an architectural framework acting as technical building blocks based on HTML5 and also target native applications (iOS and Android) 3) a model-to-code generator, which consists of a set o f model transformations integrated in the existing WebRatio platform [54]. AutoMobile targeted only iOS and Android platform for now.

Our discussion let appear that although the user experience is not as good as nat ive applications, the cross pl atform applications can be depl oyed in several platforms at once t o reach out most of the potential users, which is essential for the application vendors. Documentation and a dditional developer support are available for all evaluated solutions, even for the young cross p latform frameworks. Cross platform tools are mostly mature and provide a com fortable development environment.

The main disadvantage that we can observe with the evaluated tools is the ability to access to the device specific features which depends on the API available in the framework. Due to the cross platform implementation, the performances of the cross platform applications are prejudicially affected as compared to the native appl ication. Most of cr oss platform tools do not support native inte rface design, without having t o go through intermediate layers. Native elements are desired to present users a more familiar interface. Also, using native elements make sure that an application followed the guidelines of the user inte rface and thus, it doe s not risk to be re jected in the app stores.

Finally, the question of application security is rarel y addressed. While native applications are hi ghly secure, securing applications developed with tools based on web technologies depends on browser security. Interpreted tools are likely to be more secure. Better security can be offere d by cross-compiled and generator tools [35].

VI. CONCLUSION Cross-platform solutions are recommended when the

application is dedicated to multiple platforms with limitations in time and cost. “Develop once and run anywhere” is an important concept, and there are different approaches for achieving it. Cross platform solutions are based on five distinct approaches. This paper presen ted an ov erview of cr oss platform mobile development approaches. Drawing on that overview, we identified the desirable requirements of cross platform technology.

Our analysis of five selected cross-platform tools according to these requirements showed that cross-platform solutions can be recommended in general, even if none of such tool satisfied all the requirements. Development of cros s platform mobile applications is an emerging and attractive field and many tools have been d eveloped to provide appropriate solutions. Consequently, it is difficult for devel opers and companies to make a rat ional choice without basing on established evaluation points.

We think that the definition of the requirements that the tools supporting cross-platform mobile development should provide is a first step towards the definition of norms, enabling the standardization of t he cross platform mobile development process. In future work, requirements like security will be studied and will b e subject to further research. We aim to extend our analysis to other tools of cross-platform mobile development. We hope that additional experiments will strengthen the definition of the desirable requirements of cross platform mobile development tools.

REFERENCES [1] Gartner: Gartner Says Smartphone Sales Accounted for 55

Percent of Overall Mobile Phone Sales in Third Quarter of 2013. Accessed on April 2014. http://www.gartner.com/newsroom/id/2623415

[2] Andre Charland and Brian LeRoux, “Mobile app lication development: Web vs. Native, ” In Commu nications of the ACM, pp. 49–53, Volume 54, Issue 5, May 2011.

[3] Rapid Value Solutions, “How to Choose the Right Architecture For Your Mobile Application ”. Accessed o n April 2014 . http://rapidvaluesolutions.com/whitepapers/how-to-choose-the-right-architecture.html

[4] Henning Heitkötter, Sebastian Hanschke and Tim A. Majchrzak, “Comparing cross-platform development approaches for mobile applications,” In Web Informa tion Systems and Techno logies, pp. 120–138, LNBIP, Springer, 2013.

[5] Peter Friese. “Cross-Platform Mobile Development: Overview”. Accessed on April 2014. http://cro ss-platform.mobi/documents/01-overview/01-introduction.html

[6] jQueryMobile. Accessed on April 2014. http://jquerymobile.com/

[7] jQTouch. Accessed on April 2014. http://jqtjs.com/ [8] Dojo Toolkit. Accessed on April 2014. http://dojotoolkit.org/

14 © IT4OD 2014

Page 21: IT4OD 2014 Proceedings

[9] AppsBuilder. Accessed on April 2014. h ttp://www.apps-builder.com/fr/accueil

[10] iBuildApp. Accessed on April 2014. http://ibuildapp.com/ [11] SenchaTouch. Accessed on April 201 4.

http://www.sencha.com/products/touch/ [12] PhoneGap. Accessed on April 2014. http://phonegap.com/ [13] MoSync. Accessed on April 2014. http://www.mosync.com/ [14] mgwt. Accessed on April 2014. http://www.m-gwt.com/ [15] Vaadin TouchKit. Accessed on April 2014 .

https://vaadin.com/add-ons/touchkit [16] Appcelerator Titanium. Accessed on April 2014.

http://www.appcelerator.com/titanium/ [17] Adobe Flash Builder. Accessed on Ma y 2014.

http://www.adobe.com/fr/products/flash-builder.html [18] Rhodes. Accessed on April 2014.

http://www.motorolasolutions.com/US-EN/RhoMobile+Suite/Rhodes

[19] Xamarin. Accessed on 2014. http://xamarin.com/ [20] QTMobile. Accessed on April 2014.

http://qt.digia.com/Product/Qt-for-Mobile-Development/Qt-Mobile-Edition/

[21] AutoMobile: Automated Mobile App Develop ment. Accessed on June 2014. http://automobile.webratio.com/

[22] mobl. Accessed on June 2014. http://www.mobl-lang.org/ [23] applause. Accessed on April 2014. https://github.com/applause/ [24] Canappi: Creating a mobile application with mdsl. Accessed on

June 2014. http://www.canappi.com/pages/mdsl [25] iPhonical. Accessed on April 2014.

https://code.google.com/p/iphonical/ [26] Olivier Le Goaer, Sacha Waltham, “Yet Another DSL for Cross-

Platforms Mobile Developmen t,” In the 1st Workshop on Globalization of the Domain Specific Languag es (GlobalDSL'13), Montpellier, France, July 2013, in press.

[27] Henning Heitkötter, Tim A. M ajchrzak and H erbert Kuchen, “Cross-Platform Model-Driven Developmen t of Mobile Applications with MD2,” In the 28th Annual ACM Sy mposium on Applied Computing (SAC’13), pp. 526-533.

[28] Xiaoping Jia and Chris Jones , “Cross-platform application development using AXIOM as an Agile Model-Driven Approach,” In 7th International Conference, I CSOFT 2012, Rome, Italy, July 24-27, 2012, in press.

[29] Yun Chan Cho, Jae Wook Jeon, “Current software platforms on mobile phone”, In Intern ational Conference on Control, Automation and Systems (ICCAS) 2007, pp. 1862–1867. Oct. 17-20, 2007.

[30] Feida Lin, Weiguo Ye, “Opera ting System Battle in the Ecosystem of Smartphone Industr y," in Intern ational Symposium on Information Engineering and Electronic Commerce, 2009, pp. 617-621.

[31] Mohsen Anvaari, S linger Jansen, “Evaluating architectural openness in mobile software platforms,” In 4th European Conference on Software Architecture, pp. 85–92. ACM, 2010.

[32] Xamarin: Build apps in C# for iOS, Android and Windows Phone. Accessed on June 2014. https://xamarin.com/platform

[33] Andreas Sommer and Stephan Krusche, “Evaluation of cross-platform frameworks for mo bile applications”. In the 1s t European Workshop on Mobile Engineering, February 2013.

[34] Sarah Allen, Vidal Graupera and Lee Lundrigan, “Pro Smartphone Cross-Platform Dev elopment: iPhone, BlackBerry, Windows Mobile, and Android De velopment and Distribution”. Apress, September 2010.

[35] Isabelle Dalmasso, Soumya Kanti Datta, Christian Bonnet and Navid Nikaein, “Survey, Comparison and Ev aluation of Cross Platform Mobile Appli cation Development Tools,” 9th

International Wireless Communication and Mobile Computing Conference (IWCMC 2013), July 2013, Sardinia, Italy, in press.

[36] Rahul Raj C.P, Seshu Babu Tolety, “A study on approaches to build cross-platform mobile applic ations and criteria to s elect appropriate approach,” in Annual IEEE Ind ia Conference (INDICON), December 2012, pp. 625–629.

[37] Dalmasso, S. K. Datta, C . Bonnet, N. Nikaein, “Survey, Comparison and Evaluation of Cross-Pl atform Mobile Application Development Tool s”, Wireless C ommunications and Mobile Computing Conf erence (IWCMC), vol. 2013, p. 323-328, July 2013.

[38] Denim Group, “Secure mobile application development reference”, 2010-2011.

[39] Ann Cavoukian, Marc Ch anliau, “Privacy and security by design: a convergence of paradigms”, January 2013.

[40] Wanghong Yuan , Klar a Nahrstedt, “Energy-efficient soft real-time CPU scheduling for m obile multimedia systems,” In th e nineteenth ACM s ymposium on Op erating systems principles, October 19-22, 2003, Bolton Landing, NY, USA.

[41] Reza Rawassizadeh, “Mobile application benchmarking based on the r esource usage monitor ing,” International Journal of Mobile Computing and Multim edia Communications, 1:64-75 , 2009.

[42] Rahul Murmuria , Jeffrey Medsger , Angelo s Stavrou and Jeffrey M. Voas, “Mobile applic ation and d evice power usage measurements,” in the 201 2 IEEE S ixth International Conference on Software Security and Reliability, p.147-156, June 20-22, 2012.

[43] Soumya Kanti Datta, “Android st ack integration in embedded systems,” in Int ernational Conference on Emerging Trends in Computer & Information Technology, Coimbatore, India, 2012.

[44] Rimpy Bala an d Anu Garg. Ar ticle: Battery Power Saving Profile with Learning Engine in android Phon es. International Journal of Co mputer Applications 69(13):38- 41, May 2013. Published by Foundation of C omputer Science, New York, USA.

[45] Soumya Kanti Datta, Christian Bonnet and Navid Nikaein, “Android power management: Current and future trends,” int the First IEEE Workshop on Enabling Technologies for Smartphone and Internet of Things (ETSIoT), pp.48,53, 18 June 2012.

[46] Jaymin Lee, Hyunwoo Joe and Hyungshin Kim, “Smart phone power model generation using use pattern an alysis,” 2012 IEEE International Conference on Consumer Electronics (ICCE), pp. 412,413, 13-16 Jan. 2012.

[47] Robin Kravets, P. Krishnan, “Power management techniques for mobile communication”, in th e Fourth Annu al ACM/IEEE International Conference on Mobile Computing and Networking (MobiCom), Dallas, TX, October 1998.

[48] PhoneGap: About the Project. Accessed on May 2014. http://phonegap.com/about

[49] Gustavo Hartmann, Geoff St ead and Asi DeGani, “Cross-platform mobile deve lopment”, Mobile Lear ning Environment, Cambridge, March 2011.

[50] Vision Mobile, “Cross-Platfo rm Developer Tools 2012 : Bridging the worlds of mobile apps and the web ”, Februar y 2012.

[51] Xamarin: Xamarin Studi o. Accessed on May 2014. https://xamarin.com/studio

[52] IFML: The Interaction Flow Modeling Language. Accessed on June 2014. http://www.ifml.org/

[53] WEBRATIO. Accessed on June 2014. http://www.webratio.com/

[54] AutoMobile: Results. Accessed on June 20 14. http://automobile.webratio.com/results/

15 © IT4OD 2014

Page 22: IT4OD 2014 Proceedings

Design of a New Smart-Irrigation System in the South of Algeria

Dr. Benahmed Khelifa Dept of Science, University of Bechar

Bechar, Algeria [email protected]

Douli Amel Dept of Science, University of Bechar

Bechar, Algeria [email protected]

Abstract—Food self-sufficiency has been one of the main

objectives of the agricultural policy of Algeria since the early years of independence, in recent years; it has successfully begun to exploit the huge deposits of Saharan agriculture. The south of Algeria meets all the conditions, there is a great land, Water and light, three essential elements for agriculture. Lack of water is one of the most serious threats to agriculture and the environment in several countries. Agriculture is the largest consumer of water, it represents up to 85% of the consumption of water resources. The adoption of appropriate policies saving water should minimize the consequences. In this regard we propose in this paper a new water-saving smart irrigation system. This system is designed on the basis of the information technologies and communications for the environmental monitoring, using the ZigBee wireless sensor networks (WSNs) and renewable energy technology. Smart-algorithms are proposed in this paper for the automation and management of irrigation.

Index Terms—Smart water, smart irrigation, renewable energy, wireless sensor networks.

I. INTRODUCTION Agriculture uses 85% of available freshwater resources

worldwide, and this percentage will continue to be dominant in water consumption because of population growth and increased food demand [1].

In Algeria, liberalization reforms undertaken since the 1990s have resulted in negative effects on the development and management of irrigation schemes as well as on the conditions of farmers [2], [3], [4]. In addition Algeria is ranked among the most water deficient countries, due t o her membership in the geographic area of the Middle East and North Africa "MENA". Thus, Algerian agriculture cannot cover the needs of the population, especially regarding the strategic and widely consumed food. In our study area the Sahara of Al geria has known various problems of agriculture caused by the drought that has lasted several months due to water shortage and the traditional method of irrigation, which makes water utilization efficiency is extremely low. The aim of our work in this paper is to propose a new smart-irrigation system based on wireless communication using the ZigBee wireless sensor networks (WSNs) and renewable energy technologies such solar energy, wind energy,… etc, for sustainable use of water, and to facilitate agricultural activity by automatic irrigation of agricultural land. Using solar energy solves the inconvenient problem of l aying wires through the farmland, and t he self

powered devices can measure the soil moisture continuously. This system has the potential to be useful in the water scarce areas to avoid waste of water resources.

The rest o f this paper is o rganized as fo llows. Ex isting techniques for saving water are revi ewed in Section II. The existing state of agriculture in the south of Algeria is presented in section III. Then we describe our proposed approach in Section IV. Finally, we summarize the paper in Section VII.

II. RELATED WORKS There are many systems to achieve water savings in various

crops, from basic ones to more technologically advanced ones. For instance, in one syste m plant water statu s was

monitored and irrigation scheduled based on canopy temperature distribution of the plant, which was acquired with thermal imaging [5]. In a ddition, other systems have been developed to schedule irrigation of cr ops and optimize water use by means of a cr op water stress index (CWSI) [6]. The empirical CWSI was first defined over 30 years ago [7]. This index was later calculated using measurements of i nfrared canopy temperatures, ambient air temperatures, and atmospheric vapor pressure def cit values to determine when to irrigate broccoli using drip irrigation [8]. Irrigation systems can also be aut omated through information on volumetric water content of s oil, using dielectric moisture sensors t o control actuators and save water, instead of a pre determined irrigation schedule at a part icular time of t he day and wi th specif c duration. An irrigation controller is used t o open a s olenoid valve and ap ply watering to bedding plants when the volumetric water content of the substrate drops below a set point [9]. In [10] a water-saving irrigation system is designed based on the wireless communication and sol ar energy technology. Using the ZigBee wireless sensor network for collecting the soil temperature and moisture information, and transmits the data to the remote monitoring control computer by the GPRS network. The administrator can monitor the soil parameters and co ntrol the irrigation on the remote computer according to the specific needs of plants. Another irrigation system was developed in [11] based on Fuzzy Control Technology and Wireless Sensor Network. The fuzzy controller embedded in the coordinator node carries out fuzzy inference and fuzzy decision to soil moisture information in order to decide whether or not to conduct water and how long irrigation time is.

16 © IT4OD 2014

Page 23: IT4OD 2014 Proceedings

III. AGRICULTURE IN SOUTH OF ALGERIA The amount of water required for irrigation of agricultural

land depends on climatic conditions, soil texture and irrigation technique used. The soil is considered of medium type "sandy loam," allowing good water retention and preventing deep percolation. The traditional surface irrigation is still use d in south of Algeria. In 2000, the Algerian government initiated a National Plan for Agricultural Development (PNDA).The plan aims to rehabilitate irrigation systems, to reduce industrial water consumption through the introduction of d rip-irrigation systems and to increase agricultu ral workers' incomes to stem rural flight.

Drip irrigation is based on monitoring the wetness of the fraction of the soil occupied by the roots rather than the entire surface. By this technique, the wa ter is dis tributed to the soil surface by drippers, placed at the base of each plant [12], which each provide a low speed so that the duration of irrigation becomes almost quasi-continuously.

Sources of water for irrigation can be wat er under land, or water collected through collection systems rainwater. Water can be extracted by pumps from wells, or by gravity.

Fig. 1. Agriculture in the south of Algeria.

IV. OUR PROPOSED APPROACH

A. The system design

The whole system is composed of wireless sensor network system and renewable energy power system.

There are two parts which are source of water for irrigation and agricultural land.

Wireless sensor network consists of se nsor node soil moisture, sensors detection of the water level, irrigation controller and controller of t he electric pum p. Irrigation pipe network is laid over the irrigation areas and sol enoid valve controllers are i nstalled on pi pelines. The sensor no de soil moisture and t he sensor det ection of t he water tank level measure soil moisture and the water level respectively, transmit information to the solenoid valve controller which controls the

implementation of au tomatic watering. The controller of the electric pump is responsible to enable or disable the pump, based on information from the senso r detection of t he water well level and the sensor detection of the water tank level.

The sensor network is low power consumption and use a lead acid battery charged by the solar cell panel.

The electric pum p can be c harged either by renewable energy or by electric power. The figure 2. shows our system structure.

Fig. 2. The system structure.

In the water scarce area far from farmer, this system can be used broadly and to avoid waste of water resources.

B. The design of the soil moisture sensors and irrigation controller

We adopt the MSP430F2274 low power consumption 16-bit MCU as th e node controller. This part is mainly in charge of the connection of soil moisture sensors and solenoid valve controller as well as th e data transmission of th e radio frequency (RF) communication module (C51RF-3-CS CC2430). The 2.4G r od antenna is used t o enlarge the communicating distance. The C C2430 is the first 2.4 GHz System on Chip (SOC) which meets the ZigBee standard and compatible with the 2.4G IEEE 802.15.4 com munication protocol [13-14].

The soil moisture sensor been selected is M 406B.The working voltage is 1 2V, the output voltage is 0 ~1V, and the measuring range is from 0 to 100%. The output voltage is sampled by the i nner AD converter of t he MSP430F2274 controller at 200Ksps. [10]

The solenoid valve which can switch the water co nduit connected with a rotating micro- nozzle. When the farmland needs to be irrigated, the solenoid valve is set open by the MSP430F2274. And the water sprays from the nozzle, drives

17 © IT4OD 2014

Page 24: IT4OD 2014 Proceedings

the refraction arm rotation. So the effective radius is expanded, and the irrigation intensity can be lower. Using this kind of nozzle can save a large amount of water. [10]

To overcome the inconvenience of repl acing the battery frequently, a maintenance-free lead-acid battery (12V, 7AH) is used, being recharged by a solar-cell panel [15]. The solar cell is CY-TD02-6 which works at 18V, and the output power is 2W.

C. The design of sensors detection of water level and electric pump controller

Taking advantage of the electrical conductivity property of water, we use the copper conductors as the water level sensor. When water touches the copper sensor positioned a t a particular level in the tank, voltage is transferred to the copper which in turn is transferred to the comparator circuit for further processing. The LM324 comparator was used to compare the inputs from the electrodes in the tank and wi th a p re-set resistance and output a HIGH or a LOW with respect to the result from the comparison. This HIGH or LOW was fed into the microcontroller which in turn uses this to control the water pump and display the appropriate status on an LCD screen. The programmable Atmel 89C52 microcontroller was programmed in Assembly Language and was used as the processor to control the functionalities of the entire system. A Liq uid Crystal Display (LCD) served as the output unit which showed the status of the system on a screen.

Relays were used in building a switching unit that simply triggers the pump on or off, depending on the signal received from the microcontroller.

V. SOFTWARE SYSTEM DESIGN Sensor node soil moisture and sensor detection of water

tank level separately collect soil moisture and water lev el at each sampling cycle and transmit data to the solenoid valve controller node, which permits the automatic activation of irrigation according to thres hold value of soil moisture and water tank level, in order to decide whether or not to conduct water and how long irrigation time is to open solenoid valve to irrigate corresponding region. This system can im plement water-saving irrigation to crops . After a sa mpling period, each sensor node immediately comes into state of hibernation to conserve energy until the next cycle.

Sensors node detection of water level in the tank and the well measure water level, transmit information to the electric pump controller node, so that it takes a decision whether or not to open the electric pump. Flow charts of software design for sensors nodes, solenoid valve controller node and the electric pump controller are expressed in Fig. 3, Fig.4, Fig.5, Fig. 6 and Fig. 7.

Fig. 3. Software flow chart of sensor soil moisture node.

Fig. 4. Software flow chart of sensor detection of water tank level.

Y

N

Begin

Set wake-up clock RTC

Dormant

RTC wake-up

Collect data (soil moisture)

Data (moisture+ localization) it sent to irrigation controller

N

Y

Begin

Set wake-up clock RTC

RTC wake-up

Detect water tank level

Data is sent to the electric pump controller (treshold1 min, threshold1 max

Data it sent to the irrigation controller

18 © IT4OD 2014

Page 25: IT4OD 2014 Proceedings

Fig. 5. Software flow chart of irrigation controller node.

Fig. 6. Software flow chart of sensor detection of water well level.

Fig. 7. Software flow chart of the electric pump controller node.

VI. CONCLUSION In this paper we pro posed an effi cient irrigation water-

saving system based on wireless communication and renewable energy, this system can be easily located in various parts of the agricultural land. The wireless network is based on the ZigBee wireless sensor. We treated two parts in this system, the first part is to auto fill the water tank from the well, wh ile the second is to irrigate by automatic sprinklers agricultural land, according to the specific ne eds of the plants. In the water scarce area far from farmer, this system can be used broadly.

As a pers pective we pl an implemented our sol ution in simulators dedicated to this application and then applied it in the agricultural lands of south of Algeria.

REFERENCES [1] W. A. Jury and H. J. Vaux, “The emerging global water crisis:

Managing scarcity and conf ict between water users,” Adv. Agronomy, vol. 95, pp. 1–76, Sep. 2007.

[2] Conseil National Economique et Social (CNES), L’eau en Algérie : le gran d défi de dema in. 15th session, national report. Alger May 2000.

Y

N

Y

N

Begin

Receive data from sensor detection water tank level

If level1> threshold 1 min and value soil

moisture>= threshold

Set irrigation time

Control solenoid

Time is over?

Solenoid (turn-of)

Receive data from sensor soil moisture

Y

N

Begin

Set wake-up clock RTC

RTC wake-up

Detect water level

Data it sent to electric pump controller (threshold2)

Y

Begin

Receive data from sensor detection of water well level (treshold2).

Level 1>=threshold 1 max

Receive data from sensor detection of water well level (treshold1min treshold1max).

level 1 <threshold1 min and level 2 >=threshold2 N

Activate the electric pump

Y

Pump turn-of

N

19 © IT4OD 2014

Page 26: IT4OD 2014 Proceedings

[3] Conseil National Economique et Social (CNES)., Problématique de Développement Agricole : El éments pour un débat national. 14th session, national report. Alger, Nov 1999.

[4] O. Bessaoud, « L’agriculture al gérienne : des révolutions agraires aux réformes libérales de 1963 à 2002». Topics in Du Maghreb au Proche-Orien t, Orient, les défis de l’agri culture, L’Harmattan, Paris, 2002, pp. 73-99, 2002.

[5] X. Wang, W. Yang, A. Wheaton, N. Cool ey, and B. Moran, “Eff cient registration of optic al and IR im ages for autom atic plant water stress assessment,” Comput. Electron. Agricult., vol. 74, no. 2, pp. 230–237, Nov. 2010.

[6] G. Yuan, Y. Luo, X. Sun, and D. Tang, “Evaluation of a crop water stress index for detecting water stress in winter whea t in the North China Plain,” Agricult. Water Manag., vol. 64, no . 1, pp. 29–40, Jan. 2004.

[7] S. B. Idso, R. D. Jackson, P. J. Pinter, Jr., R. J. R eginato, and J. L. Hatf eld, “Normalizing th e stress-degree-day parameter for environmental variability,” Agricult. Meteorol., vol. 24, pp. 45–55, Jan. 1981.

[8] Y.Erdem,L.Arin,T.Erdem,S.Polat,M.Deveci,H.Okursoy,and H. T. Gültas, “Crop water stress index for assessing irrigation scheduling of dr ip irrigated bro ccoli (Brassica oleracea L. var. italica),” Agricult. Water Mana g., vol. 98, no. 1 , pp. 148–156, Dec. 2010.

[9] K. S. Nemali and M. W. Van Iersel, “An automated system for controlling drought stress and ir rigation in potted plants,” Sci. Horticult., vol. 110, no. 3, pp. 292–297, Nov. 2006.

[10] Li Wenyan, “Design of Wir eless Water-Saving Irrigation System Based on Solar En ergy”, Control, Automation and Systems Engineering (CASE), International Conference on, IEEE, pp.1-4, July 2011

[11] Peng Xiaohong, Mo Zhi ; Xiao Laisheng ; Liu Guodong; “A Water-Saving Irrigation System Based on Fuzzy Control Technology and Wireless Se nsor Network “,Wireless Communications, Networking and Mobile Computing, WiCom '09. 5th International Conference on , IEEE, pp. 1-4; Sept. 2009

[12] L. Zella and A. Kettab, ‘ Numerical Methods of Micro Irrigation Lateral Design’, Revue B iotechnologie Agronomie Société Environnement, Vol. 6, N°4, pp. 231 - 238, 2002.

[13] Zhang X., Fang J., Yu X. Desig n and implementation of nodes based on CC2 430 for the ag ricultural information wireless monitoring[C]. Singapore, Singapore: IEEE Computer Society, 2010.

[14] Xu H., Luo J., Luo M. Mobile node localization algorithm in wireless sensor networks for intelligen t transportation systems[C]. Hong Kong, Hong kong: IEEE Co mputer Society, 2010.

[15] Valente A., Mo rais R., Serodio t C., et al. A ZigBee sensor element for di stributed monitoring of soil parameters in environmental monitoring[C]. Atlanta, GA, United states : Institute of Electrical and Electronics Engineers Inc., 2007.

20 © IT4OD 2014

Page 27: IT4OD 2014 Proceedings

The evolution of collaboratif tagging systems

and the relation with the emergence of language:

Agent based modeling

Ahmed Mokhtari École nationale Supérieure d’Informatique (ESI ex. INI)

Algiers, Algeria [email protected]

Salima Hassas University Claude Bernard - Lyon 1

Lyon, France [email protected]

Abstract— In the collaborative tagging systems and in the social web in general, users annotate resources using key words (tags) in order to categorize and organize their personal resources. In this paper, we study the emergence of tagging language formed by (tag/resource) couples shared by the users of the tagging system. Using agent-based modeling, following the perspective of complex system, we show that a shared language can emerge in a collaborative tagging system.

Keywords—social web, collaborative tagging systems, language emergence, collaborative tagging, tag, Multi agents systems.

I. INTRODUCTION

In the collaborative tagging systems and in the social web in general, users annotate resources by tags to create a categorization system. To what extent, the proposed tags help the emergence of a tagging language shared by the users of the collaborative tagging system?

Our motivation to this work is to improve the existing tagging systems by an emergent language that is established and will be used by the users in describing resources on the web and also will be used as a basis for a query language for resources search and retrieval.

The works done in the modeling of the language emergence and language evolution have shown that group of agents can establish a common language, by applying certain mechanisms like self-organization, imitation and reinforcement learning [1]. These mechanisms help in the emergence and the evolution of a shared language.

In this paper, our contribution is development of agent based models for studying the dynamic of tagging systems and also the possibility of language emergence in such systems.

By applying emergence of language mechanisms on collaborative tagging system we show that the users of such system develop a shared language that can be used on the resources search and sharing.

Related work

Among the works that are close to our work which is the evolution of collaborative tagging systems and the emergence of language, we cite as examples:

The work presented in [2] is concerned with the structure of collaborative tagging systems and the dynamics observed in these systems and it shows that the growth of the number of the tags is described by a power law. In [3], there is a study of the evolution of tagging systems within a semiotic perspective; in [4] an epistemic model for collaborative tagging system is presented.

A study of the complex dynamics of tagging systems is presented in [5] where tripartite model is introduced for modeling the structure of the tagging system. In the work of Santos-Neto and Condon [6] individual and social behaviors are analyzed in tagging systems and probabilistic model is presented.

In the works of Steels and Kaplan [1] [7] [8] [9] [10] emergence language model is developed in which group of agents establish a common language and it can be considered as good framework for studying the emergence and evolution of language.

A. Problematic

This article aims to study the evolution of collaborative tagging systems and the conditions for the emergence of folksonomies, and also we present a study of these systems in a linguistic perspective considering folksonomies as language to answer the following question: Is there a relationship between the emergence of language and the evolution of tagging systems? What are the linguistic foundations that can explain the evolution of these systems to the emergence of folksonomies?

This problematic is addressed by using multi-agents based modeling.

21 © IT4OD 2014

Page 28: IT4OD 2014 Proceedings

B. The tripartite structure of tagging systems

The tripartite model has been theorized in [5].There are three main entities that form any collaborative tagging system:

The system’s users.

The tags themselves.

The resources being labeled.

Fig. 1 - The tripartite structure

Each of the three entities may be seen as separate space which form sets of nodes connected by edges.

C. Definition of folksonomy

A folksonomy is a tuple F: = (U, T, R, Y, pt) [4] where

U, T, and R are finite sets, whose elements are called users, tags and resources respectively.

Y is a ternary relation between them, Y ⊆ U × T × R, which represent the action of assigning tag.

Pt is a function: Y → n which assigns to each element of Y timestamp n. It corresponds to the time when a user has assigned a tag to the resource.

D. The evolution and dynamics of a tagging system

The study of collaborative tagging systems shows that they evolve over time by complex dynamics [2]. This dynamics is held by the user-system interactions through resources annotation. The observation of the use and the reuse of tags shows that the growth of the number of the tags is described by a power law with an exponent smaller than one and this distribution gives rise to emergence of folksonomies (Fig. 2).

Fig. 2 Growth of the number of tags in a real tagging system

II. MODELING DYNAMICS OF TAGGING SYSTEM

For this model, our aim is to generate the dynamics observed in the collaborative tagging system and in particular the evolution of the number of tags that follow a "power law" distribution (fig.2).

The values of the parameters of the model are taken from the work of Santos-Neto and Condon [6] where the individual and social behaviors in tagging systems are analyzed and modeled analytically but we use agent based modeling rather than analytical model to show that complex system approach can also be used since the social web technologies are by their nature an adaptive complex system [11].

A. Model components

A collaborative tagging system consists of three parts, a set

of users, a set of tags and a set of resources. These three sets are connected by links made by operation of collaborative tagging. In our model:

System users are simulated by software agents,

Tags are randomly generated words.

Resources are represented by keywords also randomly generated.

B. Model parameters

The most important parameters of our model are: The number of agents that access the system and

participate in the tagging operation. The number of the most used tags presented to an agent to

allow a social imitation. The similarity threshold for measuring the similarity

between two resources. For measuring the similarity inter resource, we used a lexical function defined as

22 © IT4OD 2014

Page 29: IT4OD 2014 Proceedings

)(key_wordL ) (key_word

)key_word , (key_word_*2),(

j i

j i

engthLength

prefixCommonsrrSim ji

Where ri , rj are two resources represented by the two

keywords i key_word and j key_word respectively and

Common_prefix is function that returns the number of common character situated in beginning of the two key words.

C. Interaction

The interaction of the agents with the system is as follows:

1. An agent accesses the system. 2. The system provides access for that user to all tags

used in the previous sessions; the system also provides access to a set of most used tags by other users.

3. The agent chooses a new resource or an existing resource in the system.

4. The agent has three options to choose a tag to be assigned to the selected resource:

He chooses a tag from his personal tags; in this case we have a self imitation.

He chooses a tag amongst most used ones by the community of the tagging system users; in this case we have a social imitation.

He creates a new tag if he determines that the resource belongs to a new category that does not exist in its personomy (personal tags) nor in the folksonomy.

5. He sends the identifier of the resource and the tag he

chose to the system as an input "Ui, Ti, Ri, ti" Where Ui, Ti, Ri, ti represent the user, the tag the resource, a time stamp.

D. Results and Discussion

We used Jade framework and java programming language in the development of our multi agents system.

We will present some results of a simulator designed based on the model described above. Our goal in this phase is to regenerate the complex dynamics of tagging systems. By modifying the parameters of our model, we obtain the same dynamics observed in the real collaborative tagging systems.

Example1 In the first simulations, we use a very limited number of agents as for example N = 10 and a threshold agents similarity measure S = 0.4. The figure below shows the evolution of the number of tags over time.

fig. 3 -Evolution of the number of tags In the figure 3, the convergence of the number of tags to 671 tags can be observed after 1019 iterations and it's the same dynamics observed in a real collaborative tagging system (a power law).

Example 2

In this example, we use a number of agents N = 500 agents and a threshold of similarity measure S = 0.4.

Fig. 4 -Evolution of the number of tags

In the figure 4, The convergence of the number of tags to 962 tags can be observed after 1363 iterations and it's the same dynamics observed in previoud example and in the tagging system. . This is due to the principle of individual and social imitation used in our model which is based on the reuse of system’s tags that allows the convergence and the emergence of folksonomy.

E. Summary and Discussion

From the examples above and from other examples, we see the emergence of folksonomies in the simulated tagging system and the generation of the dynamics of such systems. The quality of the folksonomy in terms of number of tags dependents on the threshold chosen for defining inter-resource similarity which defines somehow the degree of freedom for the agent to consider two resources as having the same content so its must have the same tag.

23 © IT4OD 2014

Page 30: IT4OD 2014 Proceedings

III. LINGUISTIC MODELING OF TAGGING SYSTEM

We are interested in this model to the cognitive and especially to the linguistic aspect of the process of collaborative tagging.

To study the linguistic aspect of the tagging process, we enrich the previous model as follows:

We endow the agents with cognitive structures (associative memories); these memories aim to store linguistic knowledge about the assignments of tags to resources (couples tag / resource).

A reinforcement learning mechanism so that agents can learn and adapt their knowledge by updating their associative memories.

The agents interact with the system by following scenarios of language games [1].

This model is based in its linguistic side on the models proposed in the work of Kaplan [1].

A. Model parameters

The most important parameters of our model are the same like the first model:

The number of agents that access the system.

The number of the most used tags in the system.

The similarity threshold for measuring the similarity between two resources based on the same function used in the previous model.

B. Interaction

The novelty in the interactions compared to the previous model is that they follow schemes inspired of language games adapted for collaborative tagging systems because the interactions occur between an agent and the system (not between two agents like in standard language games) where the agent (resp. system) plays the role of speaker or interlocutor to negotiate the assignment of a word (a tag) to a meaning (a resource). The interaction of the agents with the system is as follows:

1. An agent accesses the system. 2. The system provides access for that user to all tags

used in the previous sessions; the system also provides access to a set of the most used tags by other users.

3. The agent chooses a new resource or an existing resource in the system.

4. Agent has two options to choose a tag to be assigned to the selected resource:

He plays the role of a speaker and in this case the system plays the role of the interlocutor and we are in a situation of self imitation, ie the system learns words from the agent linguistic knowledge.

He plays the role of an interlocutor and in this case the system plays the role of speaker and we are in a situation of social imitation, ie the agent learns from the system by imitating it overall language knowledge stored in the memory of the system.

In both situations, there will be a negotiation between the speaker and the interlocutor to decide the appropriate tag assignment to the resource in question. 5. It adapts its associative memory by inserting new

assignment or modifying previous one by the reinforcement learning.

6. It sends the identifier of the resource and the tag he chose to the system as an input "Ui, Ti, Ri, ti" Where Ui, Ti, Ri, ti represent the user, the tag, the resource, and a time stamp.

C. Results and Discussion

Examples of simulated scenarios are presented by modifying the model parameters (the number of agents, the threshold measure of similarity). To analyze the emerging language, we use the encoding matrix inspired from [1] and we redefine it as a matrix which columns are the tags of the system and the lines are system resources, and the intersection of a tag "t" with an resource "r" is the probability to put the resource "r" in the category represented by the tag "t". Then we use graphic representation to present the encoding matrix content in the form of clusters where each cluster stands for a word (a tag) and the resources that have been tagged by it. We will present two scenarios of simulation.

1. Example 1 We use a number of agents N = 10 agents, and a threshold of similarity measure S = 0.3 for this example. We calculate the encoding matrix to analyze the emerging language consisting of emerging categories in collaborative tagging system.

Fig.5 – Some emergent categories

24 © IT4OD 2014

Page 31: IT4OD 2014 Proceedings

After having calculated the encoding matrix we have an emergent language formed of emergent categories and resources that belong to each category, some emergent categories are shown in the form of clusters; the figure below shows some emergent clusters in the tagging system. For example in the category represented by the word "xaqe», remember that the tags are randomly generated words, we note that its elements are resources that start with the character “f”. For agents, these resources belong to a common field. The same thing can be said about the category represented by the tag "joca" and resources starting with "u". 2. Example 2 We use a number of agents N = 100 agents and a threshold similarity measure S = 0.3 for this example. Through linguistic analysis of this example, we calculate the encoding matrix. The following figure shows some emergent clusters in our simulated tagging system.

Fig. 6– Some emergent categories For example, the category represented by the word "jesa" contains resources that start with the character "h".

D. Summary and Discussion

After the results of the simulations mentioned above, a tagging language shared by users of collaborative tagging system, modeled by agents, emerges in the system and in associative memories of the agents since we are interested in the linguistic aspect of this process.

The agents invent words (tags) in order to describe the resources of the system and to put them in different categories.

E. Conclusion

In this work, we studied the dynamics governing the collaborative tagging systems through the first model using a complex systems based modeling and multi agent systems. This modeling approach allows the regeneration of the dynamics observed in the collaborative tagging systems through self-organization and a selections mechanism expressed by the principle of self imitation and social imitation. Our main objective of this work is the study of the emergence of a language shared by users of tagging system, we treated this objective through the second model, enriching the first model by cognitive structures in the form of associative memories and by using interaction scenarios based on language games, we have shown that users of collaborative tagging system can share a emergent tagging language that has lexical structure. Tagging language with grammatical structure seems to be a very good perspective and continuation of this work. The application of these results on existing collaborative tagging systems or the design of new tagging systems taking into account the linguistic aspect of these systems are future goals and a continuation of this work. The use of other models of the language emergence is another approach to addressing this issue to better understand the cognitive processes of collaborative tagging.

References

[1] Kaplan, F. L'émergence d'un lexique dans une population d'agents

autonomes, Ph.D thesis, Université Paris VI, 2000.

[2] Golder, S., & Huberman, B. A., The structure of collaborative tagging systems. Journal of Information Science, 32(2), 198-208, 2006.

[3] Cattuto, C., Baldassarri, A., Servedio, V. D. P., & Loreto, V.,Vocabulary growth in collaborative tagging systems. Arxive-print: http://arxiv.org/abs/0704.3316, 2007.

[4] Dellschaft, K., Staab, S., An epistemic dynamic model for tagging systems. Proceedings of the 19th ACM Conference on Hypertext and Hypermedia HT'08 (p. 71-80), 2008.

[5] Halpin, H., Robu, V., & Shepherd, H., The complex dynamics of collaborative tagging. Proceedings of the 16th international conference on World Wide Web (p. 211-220), 2007.

[6] Santos-Neto, E., Condon, D., Andrade, N., Iamnitchi, A., et Ripeanu, M., “Individual and social behavior in tagging systems,” Proceedings of the 20th ACM conference on Hypertext and hypermedia, p. 183–192, 2009.

[7] Steels, L., The synthetic modeling of language origins. Evolution of Communication 1.1-35, 1997.

[8] Steels, L., Kaplan, F., Collective learning and semiotics dynamics, in D. Floreano, J-D. Nicoud, F. Mondada F. (éds.), Advances in Artificial Life, Lecture Notes in Artificial Intelligence, p. 704-708, Berlin, Springer- Verlag, 1999.

[9] Steels, L., Language Games for Autonomous Robots. IEEE Intelligent Systems, 2001.

[10] Steels, L., Kaplan, F., Bootstrapping Grounded Word Semantics, in T. Briscoe (éd.) Linguistic evolution through language acquisition: Formal and Computational Models, Cambridge University Press, 2001.

[11] Rupert, M. ; Coévolution d'organisations sociales et spatiales dans les systèmes multi-agents: application aux systèmes de tagging collaboratifs (Thèse de doctorat spécialité Informatique). Université Claude Bernard, Lyon, 2009.

25 © IT4OD 2014

Page 32: IT4OD 2014 Proceedings

Integrating Linked Open Data in Geographical Information System

Tarek ABID Department of Computer Science, University Mohamed

Cherif Messaadia-Souk-Ahras, 41000 Algeria [email protected]

Hafed ZARZOUR Department of Computer Science, University Mohamed

Cherif Messaadia-Souk-Ahras, 41000 Algeria [email protected]

Abstract— This paper describes a novel approach for

developing a new generation of web-based geographical information System which enables to automatically publish on interactive maps the data extracted from DBpedia dataset. This integration can be regarded as the solution that connects the two domains, namely, Geographical Information System (GIS), and Linked Open Data (LOD). In order to benefit from the enormous potential of these domains, it is necessary that some basic notions of Linked Open Data be applied uniformly to each type of geographical data.

Index Terms—GIS, LOD, DBpedia, SPARQL, Dataset

I. INTRODUCTION In recent years, the Open Government becomes

increasingly mature. The essential idea of Open Government is to establish a modern cooperation among politicians, public administration, industry and private citizens by enabling more transparency, democracy, participation and collaboration [1]. Therefore, Open Government Data (OGD) is often seen as a crucial aspect of Open Government.

Linked Open Data (LOD) has the same principle function as OGD, therefore LOD facilitates innovation and knowledge creation from interlinked data, it is an important mechanism for information management and integration. LOD are currently bootstrapping the Web of Data by converting into RDF and publishing existing datasets available to the general public under open licenses. Popular private and public stocks of the semantic web include, among others, DBpedia1, a large reference dataset of structured information extracted from Wikipedia2

LOD has gained significant momentum over the past years as a best practice of promoting the sharing and publication of structured data on the semantic Web [2, 3].

providing encyclopaedic knowledge about a multitude of different domains.

. In order to benefit from the enormous potential of these domains, it is necessary that some basic notions of Linked Open Data be applied uniformly to each type of geographical data. We based our research on the work of [4]. They have worked on the extraction, publication, and exploitation of data from the GIS of the Municipality of Catania (town in Italia), referred to as SIT (Sistema Informativo Territoriale). The SIT is designed to contain all the available data of the PA (Public Administrations) in Catania for the purpose of in-depth knowledge of the local area. As result, the authors in [4] have

used some tools for the extraction of data from the SIT, and for their modelling and publishing through LOD. Likewise, the LinkedGeoData (LGD) project was presented, in which it can transform OpenStreetMap3

This paper describes the methodology and tools used to extract, publish and reuse of LOD brovided by DBpedia and integarted in GISon the Web. This integration can be regarded as the solution that connects the two domains, namely, Geographical Information System (GIS), and Linked Open Data.

(OMS) to RDF and interlink it with other knowledge bases. LGD is a browser, which provides an interface for humans and enables to browse and edit this information efficiently [5].

The paper is organized as follows: Section 1 present the principal definition of GIS and web semantic. Section 2 describes the methodologies and tools for the extraction, modelling and publishing LOD for the DBpedia. Section 3 ends the paper with conclusions and future directions where we are headed.

II. RELATED WORK Geographical Information System (GIS) a combination

system between software and hardware that functions to store, map, analyze and display geographical data [6].

GIS is divided into five main components which includes human, procedure, software, appliance and data. Human means someone who works to manage database, analysis system and act as the programmer. Procedure is the way certain data is keyed in, stored, analyzed and moved into the system. Software on the other hand, is a component that has the package to key in, store, manage and analyze data. Other than that, appliance is needed in terms of technical necessity like a computer system that can apply GIS. Data is a vital component in GIS which can be divided in two types; geographical and tabular [7].

These data can be taken or bought from commercial data suppliers [8]. However, most of the suppliers use Database Management System (DBMS) to produce data storage for effective management [9].

Traditionally, there are two broad methods used to store data in a GIS for both kinds of abstractions mapping references: raster images and vector.

Steiniger and Weibel [10] identified several types of GIS software:

3: http://openstreetmap.org 1: http://dbpedia.org 2: http://wikipedia.org

26 © IT4OD 2014

Page 33: IT4OD 2014 Proceedings

• Desktop GIS (GRASS GIS [11], Quantum GIS [12], ILWIS / ILWIS Open [13], [14], uD ig [15], SAGA [16], [17], OpenJUMP [18], MapWindow GIS [19], gvSIG [20])

• Spatial Data Base Management Systems (SDBMS) : PostGIS, SpatiaLite

• Web Map Server, MapServer, GeoServer degree, MapGuide OpenSource, QGIS

• Exploratory Spatial Data Analysis Software OpenGeoDa, PySAL, R, GeoVista Studio, HiDE

• Remote Sensing Software : OSSIM, InterImage, Opticks, GDL, ILWIS, e-Foto, GeoDMA, leoworks

• Web Map Server : MapServer, GeoServer, degree, MapGuide, QGIS mapserver

• Web Map Application Development Frameworks : OpenLayers, Leaflet, OpenScales, ModestMaps

• Server GIS : 52 North WPS, WebGEN , GeoServer , Zoo, PyWPS

• Mobile GIS : gvSIG Mobile, Geopaparazzi

RDF (Resource Description Framework) [21] builds on XML to better manage semantic interoperation. RDF is a data model designed to standardize the definition and use of metadata, in order to better describe and handle data semantics. A document in RDF is a set of triples (subject, predicate and object) that can be distributed, stored and treated in scalable triple-stores [22].

Web of Data, often referred to as Semantic Web or Linked Data, indicates a n ew generation of technologies responsible for the evolution of the current Web [23] from a Web of interlinked documents to a Web of interlinked data.

The goal is to discover new knowledge and value from data, by publishing them using Web standards (primarily RDF) and by enabling connections between heterogeneous datasets [24].

Linked Open Data (LOD) denotes a set of best practices for publishing and linking structured data on the Web. The project includes several RDF datasets interlinked with each other to form a giant global graph, the so called Linked Open Data cloud [24].

DBpedia is a project aiming to extract structured content from the information created as part of the Wikipedia project. This structured information is then made available on the World Wide Web [25].

The data are automatically extracted from freely available Wikipedia dumps and each article in Wikipedia is represented by a corresponding resource URI in DBpedia. Several RDF statements are generated for each resource by extracting information from various parts of the Wikipedia articles [24].

All versions of DBpedia describe 24.9 million things, out of which 16.8 million overlap with the concepts from the English Dbpedia.

The English version of the DBpedia knowledge base currently describes 4.0 million things, including 832,000 persons, 639,000 places, 72,000 creative works (including 116,000 music albums, 78,000 films and 18,500 video games),

209,000 organizations (including 49,000 companies and 45,000 educational institutions), 226,000 species and 5,600 diseases.

The table 1 gives an overview over the full DBpedia dataset.

TABLE I. CONTENT OF THE DBPEDIA DATASET

DataSet Number

Labels and abstracts 12.6 million unique things

in different languages

Links to images 24.6 million

Links to external web pages 27.6 million

External links into other

RDF datasets

45.0 million

Links to Wikipedia categories 67.0 million

YAGO categories [26]. 41.2 million

The dataset consists of 2.46 billion pieces of information

(RDF triples) out of which 470 million were extracted from the English edition of Wikipedia, 1.98 billion were extracted from other language editions, and about 45 million are links to external datasets.

III. PROPOSED APPROACH This section describes the methodologies and tools for the

extraction, modelling and publishing LOD for the DBpedia. The methods are based on the standards of the W3C (http://www.w3.org). The W3C is the reference point for the Semantic Web in general, and especially for LOD. The general aim of this work is to make a kind of mixture between GIS and the LOD, so that any user can use GIS software to search: a city, a country or a village.

Due to time constraints, we used two files the DBpedia namely: person and organization. For desktop GIS we chose the Google Map API because it offers the services to:” provide to the end user simplicity, immediacy, accessibility” and it allows the user to navigate through a friendly interface.

In the following we describe the various stages for semantic interoperability methodology and tools used for the extraction of data from the DBpedia, and for their modelling and publishing through LOD (Fig. 1). The whole methodology can be summarised in the following main steps:

• Geographical visualization (stage A) • Information extraction by SPARQL from DBpedia

(stage B) • Viewing results (stage C)

Figure 1 shows an overview of the functioning of our proposal that consists, on the one hand, to use the concepts of GIS and, secondly, using the principles of LOD. A user views a city by Google Map API, from a given location, Javascript sends the reference of this city to SPARQL, that latter extracts the required data from DBpedia, the results will be displayed in a well-defined format.

27 © IT4OD 2014

Page 34: IT4OD 2014 Proceedings

. Name of: country, town, city, village…

Information about: persons, organizations,...

Fig. 1. System architecture.

A. Geographical visualization The geographical visualization shows the name of city as

layers with icons, we have used Google Maps API v.3 (Fig. 1). The map is cantered and zoomed to include all the locations retrieved.

Fig. 2. Example of geo-localisation.

We used also the mapping service provided by Google, because this service is considered to provide to the end user simplicity, immediacy, accessibility, responsiveness [27, 28], those services are : directions, distance matrix, elevation, geocoding, maximum zoom imagery, street view.

B. Information extraction by SPARQL from DBpedia SPARQL (SPARQL Protocol and RDF Query Language)

was created by the working group DAWG (RDF Data Access Working Group) of the W3C (World Wide Web Consortium). It is a query language and a protocol that allows to search, add, edit or delete RDF data available through the Internet [29, 30].

It enables to recuperate information from servers SPARQL (SPARQL Endpoint). SPARQL can query DBpedia through the website http://dbpedia.org/sparql.

To extract or publish data from a specific location (Fig. 2), we hope to propose a methodology of extraction, namely: when the user moves over a city or country info-windows with the name of the location and their capital city are visualized. By clicking on an icon, detailed information (famous person and organisation) about this location are shown.

Figure 3 shows a SPARQL source code that extracts from the file "person» of DBpedia: name, date of birth and date of death of famous personalities of Souk Ahras, these personalities will be ordered by "name".

Fig. 3. Example of SPARQL code enabling to extract Celebrity person in Souk Ahras.

We propose also to use JavaScript to recuperate the name of location (city) and transform this parameter to SPARQL (Fig. 4).

JavaScript is a scripting language, created for making html-pages live. It turns the web into something more powerful than just interlinked html pages.

There are JavaScript libraries out there for SPARQL, but it's actually quite simple to query SPARQL from JavaScript without using any special library. Here is an example of making a S PARQL query directly from a web page using JavaScript.

6

DBpedia

SPARQL Endpoint

JavaScript

SPARQL Client

1

2

3 4

5

28 © IT4OD 2014

Page 35: IT4OD 2014 Proceedings

Fig. 4. The source code for the OnClick event in JavaScript.

Finally, SPARQL start to search in the DBpedia dataset and extract the necessary information about any location.

C. Viewing results At the end of the last stage, SPARQL extracted the results

from DBpedia. To see those results of research we can use Data Table plug-in for JQuery. Data Table is a highly flexible tool, based upon the foundations of progressive enhancement, and will add advanced interaction controls to any HTML table.

jQuery4

IV. DISCUSSION

is a fast, small, and feature-rich JavaScript library. It makes things like HTML document traversal and manipulation, event handling, animation.

The main research contribution of this work is to enable connection between two domains, namely, Geographical Information System , and Linked Open Data in order to benefit from their enormous potential. We have presented several technologies, which together show how simple maps can be enriched using background knowledge from the Linked Open Data datasets provided by DBpedia. The proposed solution is in the process of final implementation using several frameworks such as: SPARQL, XML, JavaScript and jQuery. We have used Google Map API as a tool of visualization; also, we have chosen DBpedia as database to extract the required information. This work gives other ideas to solve the problem of data heterogeneity, for example we use standard structure and format of files of DBpedia dataset (e.g. species, diseases) to extract the different diseases of cities or to extract the set of species. One of the application scenario of the proposed approach is to use linked open data within the current version of StreetOpendMap in order to create a new version that will take into account not only the traditional browsing aspect but also the modern and interactive browsing, which is based on semantic Web methodologies.

Our solution is generic and can use GeoSPARQL to replace the existing SPARQL and PHP to replace JavaScript. It can also use another GIS to visualize different layer of data; but the

problem is that we must know the function and the role of all components of such system. Another interesting propriety is the ability to change DBpedia by another database without influencing the system. Finally to give more relevance to this work, we hope to continue and program the rest of this proposal.

V. CONCLUSION We have seen in the first part the classification of different

GIS are used in the fields of research and industry, due to the huge number of GIS we cannot control all these tools, therefore we chose Google Maps API, because it can provide some friendly services to users. We have also seen the basic notions of semantic web (Web of data) e.g. LOD and DBpedia. The general aim of this research is to make a m ixture between domains GIS and LOD.

To realize our prototype, we have proposed to use some programming tools, namely JavaScript, SPARQL and among GIS, we chose Google Maps API v3.

If a user finds a particular city, when he clicks on this city, JavaScript gets his name and send a query to SPARQL. The later begins to search in the DBpedia database and extract the necessary information about this location. Finally SPARQL returns the results in a few forma (html, pdf, xls,...) for precise statistics. To give more relevance to this work, we hope to continue and program the rest of this proposal. The current developed prototype, integrating Google Maps APIs and Sparql framework, is considered as the first result of this purpose.

We can also use GeoSPARQL for representation and querying of geospatial linked data for the Semantic Web from the Open Geospatial Consortium (OGC).

REFERENCES [1] F. Bauer, and M. Kaltenböck, “Linked Open Data: The

Essentials,” Edition mono/monochrom, Vienna, 2011. [2] T. Berners-Lee, Y. Chen, L. Chilton, D. Connolly, R. Dhanaraj,

J. Hollenbach, A. Lerer and D. Sheets, “Tabulator: Exploring and analyzing linked data on the semantic web,” In Proceedings of the 3rd International Semantic Web User Interaction Workshop (2006), Athens, USA SWUI 2006.

[3] C. Bizer, T. Heath and T. Berners-Lee, “Linked Data The Story So Far,” International Journal on Semantic Web and Information Systems 5, 3, 2009, pp. 1–22.

[4] S. Consoli, A. Gangemi, A. G. zzolese, S. Peroni, V. Presutti, D. R. Recupero and D. Spampinato, “Geolinked Open Data for the Municipality of Catania,” In Proceedings of the 4th International Conference on Web Intelligence, Mining and Semantics (WIMS14) (p. 58). ACM, June 2014.

[5] C. Stadler, J. Lehmann, K. Höffner, and S. Auer, “Linkedgeodata: A core for a w eb of spatial open data,” Semantic Web, 3(4), 2012, pp. 333-354

[6] M. Zhang, C. He and G. Liu, “Application of GIS in electronic commerce,” IEEE Second JJTA International Conference on Geoscience and Remote Sensing, 2010, pp. 483-486.

[7] M. H. Selamat, M. S. Othman, N. H. M. Shamsuddin, N. I. M. Zukepli and A. F.Hassan, ”A Review on O pen Source Architecture in Geographical Information Systems,”

4: http://jquery.com/

29 © IT4OD 2014

Page 36: IT4OD 2014 Proceedings

International Conference on C omputer & Information Science (ICCIS), 2012.

[8] H. Zarzour, T. Abid, and M. Sellami, “Conflict-free collaborative decision-making over Mind-Mapping,” 4th International Conference on A dvanced Computing & Communication Technologies, ACCT‘14, Rohtak, India, February 2014.

[9] M. R. Luaces, N. R. Brisaboa, J. R. Param'a, and J. R. Viqueira, “A Generic Framework for GIS Applications,” in Froc. W2GIS, 2004, pp. 94- 109.

[10] S. Steiniger and R. Weibel, “GIS software–a description in 1000 words,” Encyclopeadia of Geography, 1-2, 2009.

[11] M. Neteler, and H. Mitasova, “A GRASS GIS approach,” Open source GIS: (3rd ed.), Berlin: Springer, 2008.

[12] M. Hugentobler, S. Shekhar, and H. Xiong, “Quantum GIS In Eds,” Encyclopedia of GIS, New York: Springer, 2008, pp. 935–939

[13] C. R, Valenzuela, “ILWIS overview”, ITC Journal, 1988, pp. 4-14.

[14] T. Hengl, S. Gruber and P.D. Shrestha, ”Digital terrain analysis in ILWIS,” International Institute for Geo-Information Science and Earth Observation Enschede, The Netherlands, 62, 2003.

[15] P. Ramsey, “uDig desktop application framework,” In Presentation conference at FOSS4G 2006.

[16] O. Conrad, “Entwuf, Funktionsumfang und A nwendung eines Systems für Automatisierte Geowissenschaftliche Analysen,” PhD thesis, SAGA, University of Göttingen, 2007.

[17] V. Olaya, ”A gentle introduction to SAGA GIS,” The SAGA User Group eV, Gottingen, Germany, 208, 2004.

[18] S. Steiniger, and M. Michaud, “The Desktop GIS OpenJUMP,” A hands-on introduction. OGRS 2009 Workshop At any moment, the user can download the tabular data on t he local computer in a few formats (pdf, html, xls) or just to copy them in the clipboard for further analysis. , Nantes, France. Available from: sourceforge.net/projects/jump-pilot/files/Documentation/

[19] D. P. Ames, C. Michaelis, C. and T. Dunsford, “Introducing the MapWindow GIS project,“ OSGeo Journal, 2(1), 2007.

[20] A. Anguix, and L. Diaz, “gvSIG: A GIS desktop solution for an open SDI,” Journal of Geography and Regional Planing, 1(3), 2008, pp. 41-48.

[21] F. Manola, and E. Miller, Resource description framework (RDF) primer, W3C Recommendation, 10, 2004.

[22] H. Zarzour and M. Sellami, “srCE: a co llaborative editing of scalable semantic stores on P2P networks,” International Journal of Computer Applications in Technology, vol. 48, no.1, 2013, pp. 1-13.

[23] T. Heath and C. Bizer, “Linked Data: Evolving the Web into a Global Data Space,” Synthesis Lectures on the Semantic Web. Morgan & Claypool Publishers, 2011.

[24] T. Di Noia, R. Mirizzi, V. Ostuni, D. Romito, “Exploiting the web of data in model-based recommender systems,” InProceedings of the sixth ACM conference on Recommender systems (pp. 253-256). ACM, September 2012.

[25] C. Bizer, J. Lehmann, G. Kobilarov, S. Auer, C. Becker, R. Cyganiak and S. Hellmann, “DBpedia-A crystallization point for the Web of Data,” Web Semantics: science, services and agents on the world wide web, 7(3), 2009, pp. 154-165.

[26] F. M. Suchanek G. Kasneci G. Weikum, “YAGO: A Core of Semantic Knowledge Unifying WordNet and Wikipedia,” Banff, Alberta, Canada, ACM, pp. 8–12, May 2007.

[27] E. Koua, A. Maceachren, M. Kraak, “Evaluating the usability of visualization methods in an exploratory geovisualization environment,” Int. Journal of Geographical Information Science, 20(4), 425, 2006.

[28] E. Koua, M. Kraak, “A usability framework for the design and evaluation of an exploratory geovisualization environment,” proceedings of the International Conference on I nformation Visualization, 153-158, 2004

[29] H. Zarzour, and M. Sellami, “B-Set: a synchronization method for distributed semantic stores,” IEEE International Conference on Complex Systems, ICCS'12, Published on Xplore IEEE, Agadir, Maroc, November 2012.

[30] H. Zarzour, and M. Sellami, “p2pCoSU: A P2P Sparql/update for collaborative authoring of triple-stores,” IEEE 11th International Symposium on P rogramming and Systems, ISPS‘13, Published on Xplore IEEE, Algiers, Algeria, April 2013.

30 © IT4OD 2014

Page 37: IT4OD 2014 Proceedings

Using FoCaLiZe to Check OCL constraints on UML classes

Messaoud Abbas ∗‡§∗CPR CEDRIC ENSIIE, Square de la Resistance F-91025 Evry.‡ USTHB. LSI, BP32 EL-Alia, Bab Ezzouar, Algiers, Algeria.

§College of Sciences and Technology, El-Oued University, El-Oued, [email protected]

Abstract

In this paper we propose a mapping from a sub-set of OCL constraints specified on UML classes intoFoCaLiZe, and use this mapping to check OCL con-straints. FoCaLiZe is an object-oriented developmentenvironment for certified programming. It is based on apurely functional language, covers all development lifecycles and contains all necessary first order and higherorder logic constructors to intuitively transform OCLconstraints. Also in practice, we can use Zenon, theautomated theorem prover of FoCaLiZe to check OCLconstraints. In this work, we describe the mapping insuch a way that it can be automated and we illustrateour translation with examples.

Keywords : UML, OCL, FoCaLiZe, proof, Semantics.

1. Introduction

The Unified Modeling Language (UML) [1] is agraphical standard to describe systems in an objectoriented way. In order to enhance the UML graph-ical notations with formal specifications, the ObjectConstraint Language (OCL) [2] has been introduced.OCL is the current standard of the Object Manage-ment Group (OMG) [3]. An OCL constraint is a pre-cise textuel statement which may be attached to anyUML element. An important use of OCL expressionsis the description of constraints on the UML model,in particular, invariants on UML classes, pre and post-conditions of class operations.

In the last decade several approaches have been car-ried out in order to provide supporting tools to checkOCL constraints. Among these approaches, those inter-ested in the translation of OCL expressions into formallanguages.

Some attempts like [4], [5], [6] and UML2B [7]present a mapping of UML/OCL models into B lan-guage and use formal proofs available in B to analyseand check OCL constraints. In UMLtoCSP [8], we

find a mapping of OCL constraints into constraint pro-gramming expressions to check UML class diagramsannotated with OCL constraints.

Equational logic, first-order logic and higher-orderlogic are also considered, ITP-OCL [9], [10] shows aninitiative to map OCL expressions in order to supportautomated evaluation of OCL expressions using term-rewriting, KeY [11] propose a mapping from OCLinto first-order logic to permit interactive reasoningabout UML diagrams with OCL constraints and HOL-OCL [12], [13] maps OCL constraints into higher-orderlogic. Also [14] propose a mapping from a subset ofOCL into first-order logic to check the unsatisfiabilityof OCL constraints, and [15] proposes a translation ofUML/OCL model into the Maude system. Finally, theAlloy system is recently used in works such as [16] and[17] to check the consistency of UML/OCL models.

An OCL constraint is attached to a UML classifier(its context), in particular a UML class. To get a perfecttransformation of OCL constraints, we need first acorrect transformation of the UML classes hierarchyinto the target formal language. Then, the OCL con-straints may be converted into logical formulas usingthe derived specification. However, we noticed thatin all the aforementioned works the transformation ofUML classes is indirectly manufactured, because thelack of UML conceptual and architecture features inthe supported formal tools. For example, all the aboveformal tools do not support features such as multipleinheritance, function redefinition, late binding, templateclasses and template binding. This malfunction andlarge gap between UML and these formal tools leadsto lose UML classes semantics and then to lose OCLconstraints semantics.

In this paper we propose a formal transformationfrom UML classes annotated with OCL constraintsinto the FoCaLiZe environment [18]. The choice ofFoCaLiZe does not solely rely on its formal aspects.FoCaLiZe supports most of the requirements mandatedby standards upon the assessment of a software devel-opment life cycle [19]. More precisely, our choice is

31 © IT4OD 2014

Page 38: IT4OD 2014 Proceedings

motivated by the three following arguments:First, FoCaLiZe supports most of UML conceptual

and architectural features such as encapsulation, in-heritance (generalization/specialization) and multipleinheritance, function redefinition, late-binding, depen-dency, UML template classes and template bindingsthrough its own constructs without additional structuresor invariants. The second motivation of FoCaLiZe liesin the paradigm of its language. The FoCaLiZe lan-guage is a functional language (very close to usualML family languages), which avoids side effects duringprogram execution. Finally, the use of the FoCaLiZeenvironment is also motivated by the availability ofits automated theorem prover Zenon [20] and its proofchecker Coq [21]. Realizing proofs with Zenon makesthe user intervention much easier since it manages tofulfill most of the proof obligations automatically. Inaddition, whenever such a proof fails, Zenon helps theuser to locate the source of the inconsistency. At the laststep, Coq validates the proof.

The FoCaLiZe conceptual and architectural fea-tures allow us first to naturally transform the UMLclasses (on which the OCL constraints are specified)into FoCaLiZe hierarchy that matches perfectly theUML classes hierarchy and preserves its semantics, andthen to map the OCL constraints (class invariant, pre-condition and post-condition) into FoCaLiZe logicalformulas. Later on, a FoCaLiZe user can prove the de-rived properties using Zenon and automatically certifythese proofs by Coq. Also using FoCaLiZe, we findit very intuitive to convert the OCL expression @prewhich is rarely considered or hardly converted in theaforementioned works.

The current document is organized as follows : sec-tion 2 presents FoCaLiZe and UML/OCL concept, sec-tion 3 and 4 describe the mapping from UML classesand OCL constraints into FoCaLiZe. In section 5 wepresent a framework to prove OCL constraints usingFoCaLiZe proof language.

2. FoCaLiZe and UML/OCL concepts

2.1. FoCaLiZe

The FoCaLiZe [18] environment, initiated by T.Hardin and R. Rioboo, is an integrated developmentenvironment with formal features. FoCaLiZe is apurely functional language where data is abstractedtrough collections which are described by species. Aspecies groups together function signatures whichare introduced by the keyword signature, functiondefinitions which are introduced by the keyword let,logical statements which are introduced by the keywordproperty and statements together with their proofs

which are introduced by the keyword theorem.Functions and properties operate on a representation(carrier) type which is introduced by the keywordrepresentation. These values are then abstractedand denoted by the keyword Self within a species.A collection is derived from a species implementingall functions and proving all statements. The generalsyntax of a species is given as follows:species species name =[representation = rep type;]signature function name : function type;[local] let function name = function body;property property name : specification ;theorem theorem name : specification

proof = theorem proof ;end ;;

Species have objects flavors and can inherit [22]from other species. A species can also be parameterizedeither by collections (of a specified species) or byentities of a collection. The general form of a speciesdeclaration is:

species species name

(collection name is species app,entity name in collection name , . . . )= inherit species app , . . .; . . .end;;

where species app is the application of a definedspecies over its parameters. The syntax to define col-lections is:

collection collection name =implement species app ; end;;

A particular species in the FoCaLiZe library is thespecies Setoid. It is a general species representing thedata structure of entities belonging to a decidable nonempty set, which can be submitted to an equality test:

species Setoid = inherit Basic_object;signature equal: Self->Self->bool;signature element: Self;property equal_reflexive:

all x: Self, equal (x, x) ;property equal_symmetric: all x y: Self,

equal(x, y) -> equal (y, x) ;property equal_transitive:all x y z:Self,equal(x, y)-> equal(y, z)

-> equal(x, z);...end;;

2.2. UML classes and OCL constraints

An UML class is characterized by its name and con-tains attributes and operations. Each attribute (instanceor state variable) of a class has a name and a specifica-tion which is either a primitive type (Integer, Real,UnlimitedNatural, Boolean, String) or an-other class of the model. Specifications may describemultiple values of a type. Each operation (method) has

32 © IT4OD 2014

Page 39: IT4OD 2014 Proceedings

a name, parameters and a specification. Parameters arepairs formed by names and their specifications.

The Object Constraint Language (OCL) [2] allowsus to enhance UML graphical notations with logicalformulas. It is the current standard of the Object Man-agement Group (OMG) [3]. An OCL constraint may beattached to any UML element (its context) to furtherspecify it. In particular, an OCL constraint is attached toan UML class. We consider class invariants and pre andpost-conditions of class operations. OCL constraintswill be described in more detail in section 4.

3. From UML classes into FoCaLiZe

Since most of the UML design features can seam-lessly be represented in FoCaLiZe [22] [23], we trans-form an UML class into a FoCaLiZe species. TheUML inheritance mechanism is mapped through Fo-CaLiZe inheritance, Function redefinition in UML ismodeled by function redefinition in FoCaLiZe, UMLlate binding feature is supported using the same featurein FoCaLiZe, The UML template classes are quite cor-responding to parameterized species in FoCaLiZe [24]and UML template bindings are equivalent to parametersubstitutions in FoCaLiZe.

For brevity, we do not detail here such elements asinheritances, dependencies and instantiations nor asso-ciations.The carrier type (representation) of the derivedspecies is a record created from types of the instancevariables. Each class attribute is also modeled with agetter function in the corresponding species. UML classoperations will be converted into functional signaturesof a species.

To illustrate class transformation, Table 1 shows theexample of the class Person.

In this example, the carrier type of the speciesPersonSpecies is string * (int). It is thecartesian product of types of the attributes age andname. The function newPerson is the transformationof the class constructor.

3.1. Semantics and transformation rules

In order to provide a formal framework for ourmapping, we propose an abstract syntax for UML andOCL considered constructs. During the transformationprocess we will maintain two contexts, ΓU for UMLand ΓF for FoCaLiZe. ΓU is defined as follows: Fora given class named c n, ΓU (c n) = (c n = Vc n),where Vc n is the value of the class. A class value isa pair (Γc n, bodyc n) composed of the local context ofthe class and the body of the class. The body of the classis composed of class attributes and class operations. In

other words, the body of the class c n is expressed asfollows (the trailing star sign ∗ denotes several occur-rences): bodyc n = (Attrc n, Oprc n), where Attrc n

= (att n : att type)∗, att n is an attribute name ofthe class c n and att type its type. Similarly Oprc n

= (op n : op type)∗ where op n is an operationname of the class c n and op type its parameters andreturned types.

In a symmetrical way, the FoCaLiZe typing context,is defined as follows: For a given species named s n,ΓF (s n) = (s n = Vs n), where Vs n is the value ofthe species. A species value is a pair (Γs n , bodys n)composed of the local context of the species togetherwith its body.A species body is composed of its representation(Rep), signatures (Sig), function definitions (Let),properties (Prop) and proofs (Proof ). The body ofthe species s n is denoted:bodys n = (Reps n, Sigs n, Lets n, P rops n,P roofs n).

For an UML element U we will denote [[U ]]ΓU ,ΓF

its translation into FoCaLiZe. For an identifier ident,upper(ident) returns ident with its first character cap-italized and lower(ident) returns ident with its firstcharacter in lowercase.

The general definition of an UML class is given asfollows:< class def > = [public | private | protected ][final | abstract] [«class-stereotype»] class c n (P)binds T depends D inheritsH = A ; O end

where c n is the name of the class, P is a list ofparameter declarations, T is a list of substitutions offormal parameters by actual parameters, H designatesthe list of classes from which the current classinherits, D is a list of dependencies, A the attributelist of the class and O its operations (methods). Thederived species will be obtained after translating[[P]]ΓU ,ΓF , [[T ]]ΓU ,ΓF , [[D]]ΓU ,ΓF ,[[H]]ΓU ,ΓF , [[A]](ΓU⊕Γc n),ΓF

and [[O]](ΓU⊕Γc n),ΓF

(the corresponding transformation rule is illustrated inFigure 1). Due to space limit, we will not detail theserules in the current context. These rules enable us toenrich progressively the local context of the currentclass Γc n, the local context of the derived species Γs n

and their bodies.

4. From OCL constraints into FoCaLiZe

An OCL constraint is an expression of the OCLlanguage [2] which uses types and operations on types.We distinguish between primitive types (Integer,Boolean, Real and String), enumeration types,

33 © IT4OD 2014

Page 40: IT4OD 2014 Proceedings

Table 1: Transformation of the class PersonUML FoCaLiZe

species PersonSpecies =representation = string * (int) ;let get_name (p:Self):string = fst(p) ;let get_age (p:Self):int = snd(p);signature newPerson:string -> int -> Self;signature set_age : Self -> int -> Self ;signature birthdayHappens : Self -> Self;end;;

[[< class def >]]ΓU ,ΓF= species s n ( [[P]]ΓU ,ΓF

, [[T ]]ΓU ,ΓF, [[D]]ΓU ,ΓF

)=inherit Setoid, [[H]]ΓU ,ΓF

;[[A]]ΓU ,ΓF

; [[O]]ΓU ,ΓFend ;;

Figure 1: Transformation of a class definition

object types (classes of UML model) and collectiontypes. Collection types are Collection(T) and theirsub-types Set(T), OrderedSet(T), Bag(T) andSequence(T) where T is a type.

To transform OCL expressions we have built an OCLframework library support. In this library we modelprimitive types by using of FoCaLiZe primitive typespredefined in basics library (int, bool, stringand float) for which we defined operations.

For collection types, we have a speciesnamed OCL_Collection(Obj is Setoid)implementing OCL operations on collections(forAll, isEmpty, size . . . ). Other kinds ofcollection (Set(T), OrderedSet(T), Bag(T)and Sequence(T)) are also described by specieswhich are inherited from OCL_Collection.

4.1. Mapping of primitive types

The OCL type Integer is modeled by int ofFoCaLiZe (basics#int). Table 2 shows the mappingof OCL operations on Integer into FoCaLiZe. In thistable, a and b are two OCL integer values and x and yare their semantics in FoCaLiZe.

The Boolean, String and Real types are han-dled similarly using the bool, string and floattypes of FoCaLiZe. An OCL enumeration type is mod-eled in FoCaLiZe by an equivalent sum type.

4.2. Mapping of Collection types

For a given OCL type T (Integer, Real, UMLclass, ...), the OCL type Collection(T) repre-sents a collection family of elements of type T.The types Set(T), OrderedSet(T), Bag(T) andSequence(T) are sub-types of Collection(T).The OCL type Collection(T) is modeled by thefollowing species of our library support:

Table 2: Mapping of operations on Integer

OCL operation FoCaLize semantica = b x =0x ya <> b ˜˜(x =0x y)a + b x + ya - b x - y-a -x

a * b x * ya div b x / ya mod b x % ya < b x <0x ya <= b x <=0x ya > b x >0x ya >= b x >=0x y

a.min(b) min0x(x, y)a.max(b) max0x(x, y)a.abs abs0x(x, y)a / b real_div(x, y)

OCL_Collection(Obj is Setoid)=...end;;

This species is parametrized by the formal parameterObj, where (Obj is Setoid). The speciesSetoid is the general species defined in FoCaLiZelibrary (see Sec. 2.1). The formal parameter Objis to be substituted by any other species to modelany kind of collections. For example the OCL typeCollection(Person) is converted to the species:OCL_Collection(Obj is PersonSpecies),where PersonSpecies (see Table 1) is the speciesderived from the class Person.

The OCL type Collection(T) has several com-mon operations. For brevity, we only present here thespecification (signatures + properties) of the followingcommon operations:

34 © IT4OD 2014

Page 41: IT4OD 2014 Proceedings

• C -> includes(obj:T):Boolean: returnstrue if obj belongs to the collection C.

• C -> isEmpty():Boolean: returns true if thecollection C is empty.

• C -> size():Integer : returns the number ofelements of the collection C.

• T.allInstances : Collection(T) :returns the collection of all instances of the type T.

• C -> forAll(t:T |expr-containing-t:Boolean):Boolean: returns true if all elementsof C verify expr.

• C -> exists(expr:Boolean):Boolean:returns true if exists an element of C verifying expr.

The specifications of these operations are given in thespecies OCL_Collection of our library support asfollows :

species OCL_Collection(Obj is Setoid) =signature empty_collection : Self ;signature includes Obj -> Self -> bool;signature size : Self -> int;let isEmpty ( c : Self): bool =

(c = empty_collection);(* the empty collection has 0 element*)property empty_collection_spec :

size( empty_collection )=0;...end;;

Properties stated after each operation signature suchas empty_collection_spec will be useful in theproofs of constraints that use operations on collections.

For the operations allInstanc, forAll andexists, although it is possible to specify them inthe species OCL_Collection, we prefer to translatethem using FoCaLiZe universal (∀) ans existential (∃)quantification which looks simpler and more practicalto us. A transformation example of an OCL constraintcontaining the allInstanc and forAll expres-sions is presented in table 3.

4.3. Mapping of OCL constraints

All OCL constraints are mapped into FoCaLiZeproperties (property or theorem) in a particu-lar species. For example, all the OCL constraintsthat have the class Person as context, will betransformed and proved in a species that we callPerson_constraints. This latter, inherits thespecies PersonSpecies derived from the classPerson.

The OCL expressions describing invariants, the pre-conditions and the post-conditions are then convertedinto FoCaLiZe equivalent expressions. We have pro-posed a formal transformation rule for each supportedOCL construct.

The first example in Table 3 presents the transforma-tion of an invariant on the class Person which spec-ifying that the value of the attribute age is greater orequal to 0 and less or equal to 150. The second examplein Table 3 shows another invariant that makes sure thatall instances of the class Person have unique names. Ituses the allInstances and the forAll operationsof OCL. The third example in Table 3 presents thetransformation of a pre and post-condition associatedto the operaration set_age of our class Person.

In an OCL post-condition, to refer to the value ofan attribute at the start of the operation (just beforeinvocation of the operation), one has to post-fixthe attribute-name with the commercial at sign @,followed by the keyword pre. for example, whenthe birthday of one person is happening we canspecify the following post-condition of the operationbirthdayHappens():context Person::birthdayHappens()post : age = age@pre + 1.Unlike in other formalisms, we find it very easy to mapthe expression @pre into FoCaLiZe, since FoCaLiZedistinguishes between the entity which invokes thefunction and the entity returned by the function. Thetransformation of the above example is the following:property post_birthdayHappens :

all x : Self,

get_age(birthdayHappens(x)) =

get_age(x) + 1;

end ;;

4.4. Semantics and transformation rules

During the transformation of OCL constraints intoFoCaLiZe, we will maintain a typing context ΓO inaddition to our previous contexts ΓU and ΓF . Foran OCL element S, we will denote [[S]]ΓU ,ΓF ,ΓO itstransformation into FoCaLiZe. To be brief, we will onlypresent the general transformation of OCL invariantsand pre and post-conditions.

Let Si be an OCL invariant associated to the classnamed c n. Its general form is:

Si = context c n inv : Einv

where Einv is the OCL expression describing theinvariant Si. The invariant Si is converted into aFoCaLiZe property as follows:

[[Si]]invΓU ,ΓF ,ΓO

= property inv ident :all e : Self , [[Einv ]]exp

ΓU ,ΓF ,ΓO;

where,• inv ident is an identifier that we assign for the

invariant Si and• [[Einv ]]exp

ΓU ,ΓF ,ΓOis the transformation of the

OCL expression describing the invariant into Fo-CaLiZe.

35 © IT4OD 2014

Page 42: IT4OD 2014 Proceedings

Figure 2: Proof Framework

Let Sj be an OCL pre and post-condition associatedto the operation OP of the class named c n. Its generalform isSj = context c n ::OP n (p1 : typeExp1 . . . pm : typeExpm) : returnType

pre : Epre post : Epost

where OP n is the operation name, p1 . . . pm are theoperation parameters, typeExp1 . . . typeExpm theircorresponding types and Epre and Epost are the OCLexpressions describing the pre and the post conditions.An OCL pre and post-condition is converted intoa FoCaLiZe implication (pre-condition ⇒ post-condition) as follows:

[[Sj ]]prepostΓU ,ΓF ,ΓO

= property pre post ident :

all e : Self,all x1 : [[typeExp1]]ΓU ,ΓF

, . . .,all xm : [[typeExpm]]ΓU ,ΓF

,[[Epre]]

expΓU ,ΓF ,ΓO

-> [[Epost]]expΓU ,ΓF ,ΓO

;

where,• pre post ident is an identifier that we assign for

Sj ,• x1 . . . xm are bound variables, x1 = lower(p1),

. . . , xm = lower(pm),• [[typeExpi]]ΓU ,ΓF

is the transformation of vari-able types and

• [[Epre]]expΓU ,ΓF ,ΓO

([[Epost]]expΓU ,ΓF ,ΓO

) is thetransformation of the OCL expressionsdescribing the pre (post) conditions intoFoCaLiZe.

5. A framework for formal proofs

In general, we adopt the following proof process(illustrated in Figure 2) to prove the derived propertiesfrom OCL constraints:

1) We complete the FoCaLiZe specifications by im-plementing all related functions

2) We introduce proof indications using FoCaLiZeproof language.

3) We compile the FoCaLiZe source using the com-mand focalizec. This latter invokes the commandzvtov to achieve the proofs by Zenon.

From an UML/OCL model, an abstract FoCaLiZespecification is generated. Then, a FoCaLiZe user needsonly to complete the specification by implementing allderived methods to obtain a complete specification.Finally, when compiling the FoCaLiZe source, proofobligations are generated.

Table 3: Example of OCL constraints transformation

OCL FoCaLiZespecies Person_constraints =

inherit PersonSpecies;property invariant_Person_1 : all x : Self,

(get_age(x) <= 150) /\(get_age(x) > 0);

property pre_post_set_age :all x : Self, all a : int ,( (get_age(x) <= 150) /\(get_age(x) > 0) /\(a >= get_age(x) ) ) ->(get_age(set_age(x , a)) = a ) ;

(* "˜˜" designates the logical negation *)property invariant_Person_2: all p1 p2: Self,˜˜(equal(p1, p2)) ->˜˜(get_name(p1) = get_name(p2))end ;;

36 © IT4OD 2014

Page 43: IT4OD 2014 Proceedings

If a proof fails, the FoCaLiZe compiler indicatesthe line of code responsible for the error. In this case,The FoCaLiZe developer analyses the source in orderto correct and/or complete the UML model, and thenrestarts the development cycle.

There are two main kinds of errors: either Zenoncould not find a proof automatically, or there are in-consistencies in the original UML/OCL model. In thefirst case the developer interaction is needed to giveappropriate hints to prove the properties, while in thesecond case we must go back to the original UML/OCLmodel to correct and/or complete it.

OCL errors are detected when proving propertiesderived from OCL constraints, since the proof of suchproperties may use a conflicting properties (derivedfrom other OCL constraints) as axioms. Also, thanksto the direct transformation in our transformation ap-proach (FoCaLiZe and UML share the same featuressemantics), UML errors such as the violation of UMLtemplate semantics, inheritance semantics, the depen-dency semantics or the specification of incorrect valuesor types are automatically detected when FoCaLiZecompiler checks the derived source.

Proof example. We present here the proof of aninvariant of the class Person (presented in table 3).After derivation of the species PersonSpecies(from the class Person), we generate the speciesPerson_constraints which inherits fromPersonSpecies and contains theorems andproperties derived from the OCL constraints(for brevity, we only focus on the propertyinvariant_Person_2):species Person_constraints =

inherit PersonSpecies;let get_name(p:Self):string = fst(p);let equal (x: Self, y : Self): bool =(get_name(x) = get_name(y)) ;theorem invariant_Person_2 :

all p1 p2 : Self,˜˜(equal(p1, p2)) ->˜˜(get_name(p1) = get_name(p2))proof = by definition of equal ;

. . .end ;;

The symbols ˜˜ present the logical negation in Fo-CaLiZe. In this example, we ask Zenon to find a proofusing the hint “by definition of equal”.

Finally, the compilation of the above FoCaLiZesource ensures the correctness of the specification. Ifno error has occurred, this means that the compilation,code generation and Coq verification were successful.

6. Conclusion and perspectives

In this paper, we presented first, an approach to mapUML classes and OCL constraints into a FoCaLiZespecification. A FoCaLiZe species is derived from eachUML class. The representation (carrier type) of thederived species is a record that represents the state ofthe object (its instance variables). Class operations areconverted into functions of the derived species. OCLconstraints (class invariants, pre-condition and post-condition) correspond to FoCaLiZe properties. UMLconceptual and architectural features are supportedthrough similar features in FoCaLiZe. Second, we pre-sented the general approach to prove the derived prop-erties based on Zenon. If Zenon could not find a proofautomatically, the FoCaLiZe user has to provide proofhints using FoCaLiZe proof language to help Zenon toachieve the proofs. The presented approach gives rise toa certified software after proving all properties derivedfrom the original OCL constraints.

The presented work support most of UML featuressuch as encapsulation, inheritance, late-binding and tothe bind relationship which permit to derive a formalspecification expressed through a species hierarchy thatmatches the original UML model. Then OCL con-straints are naturally converted into properties of thederived species.

To implement the presented approach, we propose touse the XMI technology (XML Metadata Interchange)through an UML tool that supports both UML2 con-structs and OCL constraints such as the UML2 Eclipseplug-in. We parse the XMI document to translate it intothe UML proposed syntax (using an XSLT stylesheet),so that it is possible to apply the transformation rulesthat we have proposed for each UML construct. Thecorrectness of the transformation is ensured by theproposed formal rules.

As future work, we will extend our mapping todeal with larger subsets of OCL. In particular, wewill deal with the sub-types of the general col-lection type Collection(T) which are Set(T),OrderedSet(T), Bag(T) and Sequence(T). Inaddition to the common operations of the speciesOCL_Collection, each sub-type has its own op-erations. We shall also deal with the operations ofconversions from one sub-type to another such asasSequence, asSet and asOrderedSet.

References

[1] OMG.: UML : Superstructure, version 2.4. (January2011) available at: http://www.omg.org/spec/UML/2.4/Infrastructure.

37 © IT4OD 2014

Page 44: IT4OD 2014 Proceedings

[2] OMG: OCL : Object constraint language 2.3.1. (Jan-uary 2012) available at: http://www.omg.org/spec/OCL.

[3] OMG: Object management group. http://www.omg.org/.

[4] Marcano, R., Levy, N.: Using B formal specificationsfor analysis and verification of UML/OCL models.In: Workshop on consistency problems in UML-based software development. 5th International Con-ference on the Unified Modeling Language, Citeseer(2002) 91–105

[5] Ledang, H., Souquieres, J., Charles, S.: Un outil detransformation systematique de specification UMLen B. AFDL (2003)

[6] Truong, N., Souquieres, J., et al.: Validation desproprietes d’un scenario UML/OCL a partir de saderivation en B. Proc. Approches Formelles dansl’Assistance au Developpement de Logiciels, France(2004)

[7] Hazem, L., Levy, N., Marcano-Kamenoff, R.:UML2B : Un outil pour la generation de modelesformels. AFDL (2004)

[8] Cabot, J., Clariso, R., Riera, D.: Umltocsp: a toolfor the formal verification of UML/OCL models us-ing constraint programming. In: Proceedings of thetwenty-second IEEE/ACM international conferenceon Automated software engineering, ACM (2007)547–548

[9] Clavel, M., Egea, M.: ITP/OCL: A rewriting-basedvalidation tool for UML+ OCL static class diagrams.Algebraic Methodology and Software Technology(2006) 368–373

[10] Clavel, M., Egea, M.: The ITP/OCL tool. (2008)http://maude.sip.ucm.es/itp/ocl/.

[11] Beckert, B., Hahnle, R., Schmitt, P.: Verifica-tion of object-oriented software: The KeY approach.Springer-Verlag (2007)

[12] Brucker, A.: An interactive proof environment forobject-oriented specifications, phd thesis. ETH,Zurich (2007)

[13] Brucker, A., Wolff, B.: The HOL-OCL tool. (2007)http://www.brucker.ch/.

[14] Clavel, M., Egea, M., Garcıa de Dios, M.: Checkingunsatisfiability for ocl constraints. Electronic Com-munications of the EASST 24 (2010)

[15] Duran, F., Gogolla, M., Roldan, M.: Tracing prop-erties of UML and OCL models with maude. arXivpreprint arXiv:1107.0068 (2011)

[16] Cunha, A., Garis, A., Riesco, D.: Translating betweenAlloy Specifications and UML Class Diagrams An-notated with OCL Constraints. Software & SystemsModeling (2013) 1–21

[17] Anastasakis, K., Bordbar, B., Georg, G., Ray, I.:UML2Alloy: A Challenging Model Transformation.In: Model Driven Engineering Languages and Sys-tems. Springer (2007) 436–450

[18] Hardin, T., Francois, P., Pierre, W., Damien, D.:FoCaLiZe : Tutorial and Reference Manual, version0.8.0. CNAM/INRIA/LIP6 (2012) available at: http:

//focalize.inria.fr.[19] Ayrault, P., Hardin, T., Pessaux, F.: Development

Life-Cycle of Critical Software under FoCal. Elec-tronic Notes in Theoretical Computer Science 243(2009) 15–31

[20] Doligez, D.: The Zenon Tool. Software and Doc-umentations freely available at http://focal.inria.fr/zenon/.

[21] coq.: The coq proof assistant, Tutorial and referencemanual. INRIA – LIP – LRI – LIX – PPS (2010)Distribution available at: http://coq.inria.fr/.

[22] Fechter, S.: Semantique des traits orientes objet deFocal. PhD thesis, Universite PARIS 6 (Juillet 2005)

[23] Delahaye, D., Etienne, J., Donzeau-Gouge, V.: Pro-ducing UML models from Focal specifications: anapplication to airport security regulations. In: The-oretical Aspects of Software Engineering, 2008.TASE’08. 2nd IFIP/IEEE International Symposiumon, IEEE (2008) 121–124

[24] Abbas, M., Ben-Yelles, C.B., Rioboo, R.: ModelingUML Template Classes with FoCaLiZe. In: Inte-grated Formal Methods. Volume 56., Springer (2014)87–102

[25] Dubois, C., Hardin, T., Donzeau-Gouge, V.: Build-ing certified components within FOCAL. Trends inFunctional Programming 5 (2006) 33–48

38 © IT4OD 2014

Page 45: IT4OD 2014 Proceedings

Design of Smart Grid System in the South of Algeria

Dr. Benahmed Khelifa Dept. of Science, University of Bechar

Bechar, Algeria [email protected]

Douli Amel Dept. of Science, University of Bechar

Bechar, Algeria [email protected]

Abstract—The increasing complexity of the classical grid due to population growth, the promotion of technology and infrastructure are factors that greatly contribute to instability, insecurity and inefficiency in the use of electrical energy. To overcome the energy sustainability of the environment it is better to use renewable energy for sustainable and economical electricity. Smart grids promise to improve the performance of the grid system. The energy sector has adopted smart grids that use information technology and communication, which can make more reliable and more efficient power systems. South of Algeria meets all the conditions; there are large areas, renewable energy, and wireless communication, which are all essential for the smart grid system. So in this paper a new smart grid system will be proposed for the south of Algeria, based on renewable energy, wireless communication and smart technologies.

Index Terms—Smart-Grid; Renewable Energy; Smart Technologies; Wireless sensor networks.

I. INTRODUCTION One of the basic challenges of the electrical system is being

implemented in a real power dem and which should be absolutely reliable. Historically this challenge led to a power system based on highly controllable supply to match a largely uncontrolled demand. However, global climate change and population growth in recent decades have gene rated an increasing demand for abundant, clean and sustainable electrical energy in the world. Today, in most countries, the growing demand for energy means a very heavy weight on the electricity infrastructure already too old and fra gile, for example In Al geria, conditions such as heat waves create electrical demand that the current fragile grid cannot support. Thus, the increasing complexity of the cla ssical power grids, growing demand, requirements for greater reliability, safety, efficiency, environmental issues and s ustainable energy, require the information and communication technologies. This leap toward a “s marter” grid is widely referred to as “smar t grid (SG)” The basic concept of SG i s to add m onitoring, analysis, control, and communication capabilities to the existing power grids.

Algeria is endowed with various types of renewable energies, namely solar energy, wind energy, hydro energy and biomass energy [1], it also me ets many conditions such as largest areas, wireless co mmunication techniques (3G networks, GPR,…etc.), it has also competent researchers in this

regard and ability to finance the smart technologies which are all necessary for smart grid system. So in this paper, a solution for integration of a smart electricity network is proposed, using advanced technologies to monitor and manage the transmission of data information and electricity, which means a smart grid. This smart grid integration co-ordinate the roles of all domains to operate all parts of t he system as efficiently as possible, minimizing costs and environmental impacts while maximizing system reliability, resilience and stability.

The rest of t his paper i s organized as fol lows: Related works of smart grid in Section II. Brief review status in Algeria in section III. The application of renewable energies in Algeria in Section IV. Then we describe our smart grid approach in section VI. Finally, we summarize the paper.

II. ACRONYMS

TABLE I. ACRONYMS

Acronyms in smart

grid Acronym Definition

AMI Automatic Metering Infrastructure AMR Automatic Meter Reading DMS Distribution Management System DR Demand Response EMS Energy Management System ESI Energy Services Interface GPS Global Positioning System IED Intelligent Electronic Device MDMS Metering Data Management System

III. RELATED WORKS The development of smart grids has attracted considerable

interest from fields as divers e as econom ics, sociology and electrical engineering [2]. Clastr es [3] provided a prelim inary overview of possible solutions to encourage the emergence of new smart grid technologies. Nair and Zhang [4] reviewed the development of electricity grids in New Zealand and identified future opportunities and policies concerning intelligent grids. Mah et al. [5] examined th e motivations, processes and outcomes of t he development of smart grids i n South Korea through the perspectives of g overnance and i nnovation

39 © IT4OD 2014

Page 46: IT4OD 2014 Proceedings

systems. Ipakchi [6] presente d some emerging smart grid applications and di scussed information system requirements for a broad-base application to the smart grid. Zio and Aven [7] looked into the future world of sm art grids from a rat her different perspective of uncertainties and the related risks and vulnerabilities.

Smart grid technologies, including power generation, transmission, transformation, distribution, storage, and consumption, the focus of smart grid development, have been widely discussed. Järventausta et al. [8 ] investigated the general aspects of sm art grids and foc used on sm art grid features at a distribution level, such as the interconnection of distributed generation and active distribution management, using automated meter reading (AMR) systems in network management and power quality monitoring, application of power electronics in electricity distribution, plug-in vehicles as part of sm art grids, and frequency based load control as examples of int eractive customer gateways. Blasques and Pinho [9] proposed a demand-side management model integrated with a metering system for hybrid renewable energy systems in a micro-grid configuration. In Depuru and al. [10], they discussed various features and technologies that could be integrated with a sm art meter, outlined various issues and challenges involved in the design, deployment, utilization, and maintenance of the smart meter infrastructure, and ex plained the importance of i ntroducing smart meters in developing countries. The status of sm art metering in various countries was also illustrated. Wissner [11] gave an o verview of the options that information and communication technology (ICT) offered for the restructuring and modernization of the German power system.

IV. BRIEF REVIEW OF THE CURRENT SITUATION Algeria is amongst the top five countries in the world for

producing natural gas and in the top ten for oil production [12]. For a very long time now t hese have been t he main export revenue for the country, c urrently accounting for more than 95% of the country’s total export revenues [13].

Unfortunately, however, this has made the country heavily reliant on hydrocarbons with 94% of energy currently coming from natural gas which also represents approximately 50% of the country’s GDP according to recent reports in the national papers. Latest estimates claim that about 5% of t he country’s electricity comes from hydropower plants while only a tiny portion of 0.5 -1% is from renewable sources of solar and wind [14]. On the contrary, other countries are already well ahead in adopting renewable energy. Unfortunately, the lack of renewable energy development in Algeria occurs despite the country’s favorable geographical location which offers one of the highest solar potentials in the world. Thus, Algeria faces a real challenge between its depe ndence on fossil fuels and its huge potential for exploiting renewable energies. Electrical energy consumption in Algeria will rise to 83 TW hr in 2020 and up to 150 TW hr in 2030 [13]. According to the study of [14] the projections are that th e reserves of oil can only cover the next 50 years while those for natural gas will o nly be available over the next 70 years. Luckily, in the last few years

there seem to be some ambitious plans to develop renewable energy over the period 2011-2030 by aspiring to generate 40 % of local electricity production by 2030 from solar and wi nd [14]. Within this plan the estimated installed capacity is 22,000 Megawatts (MW): 12,000 MW for domestic market and 10,000 MW for possible export. The initial budget is about $60 US billion.

TABLE II. PROGRAM OF PRODUCTION OF ELECTRICITY BASED ON RENEWABLE ENERGY IN THE NATIONAL MARKET FOR ALGERIA[14].

Years

2011 2015 2020 2025 2030

National park (conventional and renewable) MW

10500 14700 18300 24500 34500

Renewable share in National parc (MW)

25 655 2570 6885 12000

Renewable share in National parc (%)

0.24 4.46 14.00 28.19 34.80

National electricity generation (TWh)

50.00 63.79 82.50 109.27 150.00

National generation EnR (TWh)

0.1 2.8 12.1 33.5 60.00

Nationa share generation EnR (%)

0.1 4.5 14.7 30.6 40.00

V. SOURCES OF ENERGY Recent reports e.g. [15] show that energy usage in Algeria

is split mainly between three secto rs: in dustrial use (24%), transport (33%), and residential and services (43%).In terms of the potential contribution of renewable energy in Algeria and possible engineering applications and solutions it is important to consider the following sources:

a) Solar energy: Alg eria resides within the so called solar belt of the world. To understand the true potential of solar energy, it is estimated that 6 hours of solar power from deserts around the world can meet the annual global energy demands. The potential use of solar energy in Algeria may be split into two categories: solar thermal and phot ovoltaic (or PV). W ith solar thermal technologies, about 169,440 TWhr/year may be harnessed [16].

b) Wind energy: Indeed, recent studies show that wind energy is the second m ost important renewable resource in Algeria [17, 13, 14]. The same studies showed that the strongest winds are l ocated in the southwest regions of the country, particularly near Adrar, which is why Algeria expects to have its first wind farm in in this region operational between 2014 and 2015 and generating around 10MW.

c) Geothermal Energy: In terms of hy drothermal systems, recent estimates ha ve counted more than 200 hot springs in a n umber of regi ons around the country, the most known are located in Guelma, Khenchla, Biskra and Setif [14].

40 © IT4OD 2014

Page 47: IT4OD 2014 Proceedings

.

So far these hot springs, or Hammamat, have been used exclusively for physical therapy and pleasure. Their commercial viability has yet to be fully explored. These geothermal resources have b oth low grade (low temperature) and high grade (high temperature) heat with more than a third having temperatures above 45° C [14].

d) Biomass energy: Biomass is a general term used to refer to all t ypes of animal and plant material including municipal solid waste, animal and i ndustrial residues, agricultural and forestry crops/residues, and sewage. These materials can be bur ned or digested to produce heat and electricity.

e) Shale gas energy: In terms of shale gas, this is seen by many around t he globe as the new ‘e nergy bullet’, partly due to its vast availability.

The figure I. shows the renewable energies in Algeria:

Fig. 1. Renewable energies in Algeria.

VI. OUR PROPOSED SMART GRID APPROACH The growth of electricity demand causes an im balance in

the present grid system resulting from various causes, such as load shedding, voltage unbalance factor …etc. which ultimately affect consumers. As we mentioned above, our country meets all the neces sary conditions to accelerate the development of t he current grid. Smart grids promise to improve the performance of conve ntional electricity system using the information and co mmunication technology and renewable energy which can make the power su pply more reliable and efficient. So, in this regard, we proposed a smart grid architecture that will b e useful to apply in the south of Algeria.

This solution aims to satisfy consumers in a reliab le, a secure and economical way. It has the following goals:

1. This two-way communication enables consumers to better control their power consumption and offers more choices to the customer.

2. Allow the electrical system to be resistant to the failure, using the intelligent systems.

3. Improve the reliability of the system. 4. The customer may actually b e an energy supplier in

place of consumer of energy.

A. Our study area location

The town of Bechar situated at the foot of the southern side of the Saharan Atlas for a distance of 950 km south-west from the Algeria’s capital (Figure2), It is bordered to the north by the northern massifs (Djebel Antar 1960m) and Jebel Horriet (1461m)) and Hamada Oum Sbaâ, sout h by Chabket Mennouna, to the east by Djebel Bechar (1500m), and the west region Kenadsa. The ci ty of Bechar extends over an area of 5050 km ², it i s rich in renewable energy especially s olar energy.

The various energy scenarios involving Algeria as a core for generating renewable energy, its environment especially European which studies the World Bank says that he will have in the coming years to import its energy from the great Sahara, where does the German initiative to export solar energy from the great Sahara to Europe [1].

Fig. 2. Our study area location (Bechar, Algeria).

B. Smart Grid architecture

The Figure 3 shows t he simplified structure of t he power system in the way it is presently organized.

The electric power i s conventionally accomplished by the renewable energy (solar panels, wind turbines …etc.) while the transmission system already includes high-voltage systems from the established power grid. But in time of scare renewable resources, when electricity is generated by the use of resources such as oil, coal, nuclear fission we have to store electricity to manage the variability of ren ewable resources as a resul t we use bulk generation. The field of bulk generation is related to the field of the trans mission. It also co mmunicates through a service interface internet and the area of the operation domain over the WAN with the electric utility office, which balance between the supply and t he demand for electricity. The

41 © IT4OD 2014

Page 48: IT4OD 2014 Proceedings

generated electricity is tran smitted to the distribution domain via multiple substations and transmission lines. The dispatch of electricity to end users in the customer domain is implemented by making use of t he wired and wireless communication infrastructures that connect the transmission and custom er domains.

Fig. 3. Smart grid architecture.

To obtain information about the power system activities like monitoring, control, fault management, maintenance, analysis and m etering, the operation domain use hom e area networks(HAN) and wide area networks (WAN) in the transmission and di stribution domains by using SCADA systems. Electricity is p rovided to customers and utilities through service providers. They manage services like billing customer account management for ut ility companies. It communicates with the operating domain to get the metering information and with control service for situational awareness in order to provide smart services like management of energy uses, for instance service provi der informs the custom er to reduce the use of som e smart devices which e xceeds the threshold of electric consumption in one hand. In the other hand, it manages the generation energy in the nano grid through a smart meter as a result the customer able to consume, generate or store electricity. In the last, our aim is to satisfy the

customer’s demands and ne eds with intelligent and rel iable way.

In this paper, we p resent our conceptual model which focuses on the essential components to ensure a go od established of smart grid in our study area (south of Algeria).

C. System components

This system consists of many functional blocks, which are namely, renewable energy, bulk generation, transmission domain, distribution domain, operation domain, nanogrid, microgrid and service provider.

a. Renewable energy: The particularly Algeria and t he Maghreb countries have a hi gh solar potential. The sol ar irradiation level made by satellites, by the German Space Agency (DLR) show exceptional sunshine order kWh/m2/an 1200 in Northern Grand Sahara levels. For the cons, the best rate of solar radiation in Europe is of the order of 800 limited to the southern part of E urope kWh/m2/an. Following an evaluation by satellites, th e German Space Agency (ASA) concluded that Algeria is th e most important of all th e Mediterranean solar potential, namely: 169.000 TWh / year for solar thermal, 13.9 TWh / year for the solar photovoltaic and 35 TWh / year for wind power [18].

b. Bulk generation: This domain can store electricity for managing variability in renewable resources such as ex cess electricity generated at the time of the rich resources m ay be stored for redistribution in periods of scarcity of resources.

c. Transmission: The electricity generated is transmitted to the field of di stribution through several sub-stations and transmission lines. The fi eld of t ransmission can al so support energy production and sm all-scale storage. It also treated the bidirectional communications between control centers and substations.

d. Distribution: The distribution domain takes t he responsibility to provide electricity to consumers based on user requests and the availability of energy. The stability of this domain is monitored and controlled in order to provide quality electricity.

e. Service provider: Electricity is provided to customers and utilities through service providers, it also provides smart services like management of ener gy uses and home energy generation.

f. Operation: Hosting power system control operation in the respective domain, e.g. d istribution management systems (DMS), energy management systems (EMS) in generation and transmission systems, micro grid management systems, virtual power plant management systems (aggregating several DER), electric vehicle (EV) fleet charging management systems.

g. Customer: This domain includes homes, commercial or industrial buildings. It is electrically connected to the distribution domain and communicates with the distribution, operation, service provider and electric utility office domains. Customers consume, generate (using DERs), or store electricity.

h. Micro-grid: The micro grid illustrates in the figure .4 is an electrical system that includes multiples nano grid and distributed energy resources a nd control system, it can be operated in parallel with the other domains using wireless

42 © IT4OD 2014

Page 49: IT4OD 2014 Proceedings

communication that transm it data information via the smart meters and cel lular networks and t he wired communication which represent electrical transmission.

i. Nano-grid: The modern electricity network will increasingly rely upon a set of intelligent communication and control technologies like home area networ k (nano-grid). Within the smart grid network, Home Area Netwo rk (HAN) helps develop the demand response and demand side management. Home area net works can be implemented via both wired and wireless solutions, using multiple different standards, and can be rem otely controlled and m onitored through a gat eway to neighbor, wide area or sm art grid networks. The smart home works together with the smart meter and the smart grid-it is th e fundamental unit of consumer interaction with the utility. A home area network is a dedicated network connecting devices in the home such as displays, load control devices and ul timately “smart appliances” seamlessly into the overall smart metering system. It also contains turnkey reference designs of systems to monitor and control these networks. Most of our hi gh energy use today comes from heating/cooling, cooking, lighting, washing and drying. These home appliances are beginning to become smarter with connectivity features that allow them to be automated in order to reap benefits that smart metering and variable tariffs bring. In a home area net work, multiple components interact to provide a wide range of capability. The basic components of a home area network are:

The network portal or gateway that connects one or more outside information services to the home area network.

The access point or network nodes that form the wired or wireless network itself.

The network operating system and net work management software.

The end points such as therm ostats, meters, in hom e display devices, and appliances.

Smart meter: The smart meter is one of the important components of smart grids in the distribution system. The older generations of sm art meters were one s that allowed AMR. This has now evolved into AMI where the meter not only measures, stores, and communicates loads and other power statistics in real ti me, but it can also be a point of control (through connect/disconnect capabilities) and signaling to consumers and their devices for load control [19]. Smart meters can read automatically, without sending a meter reader out once a m onth. This can be do ne in several different ways: with a signal that is sent back to the transformer or substation over the power line (power line carrier) and then on to the utility in some other way, by a radio link in the local neighborhood, or by a van that drives around the neighborhood and as ks each m eter to give a n automatic readout, via GSM/data radio links. Wireless sensor communication: The net work topology is the mesh topology, a mesh network is a flexible network consists of a group of nodes, where new nodes can join the group and each node can act as an inde pendent router. The self-healing network feature allows

communication signals to find an alternate route via the active nodes, if a node must leave the network. The communication between smart meters and smart appliances and home appears, is very important. Many AMI vendors, such as Itron, Elster, and Landis Gyr, prefer smart meters, that the ZigBee protocol can be integrated into [20]. ZigBee is a wi reless communication technology that is relatively low in power consumption, data rate, complexity and cost of deployment. It is an ideal technology for lightning smart energy monitoring, home automation, and automatic meter reading, etc, it provides utilities to send messages to the home owners, and home owners can reach t he information about their real-time energy consumption.

Existing cellular networks can be a good option for communicating between smart meters and the utility and between far nod es. Cellular network solutions also enable smart metering deployments spreading to a wi de area environment.

Fig. 4. Nano-grid architecture.

Power line communication (PLC): is a technique that uses the existing power lines to transmit high speed (2 - 3 Mbps) data signals from one device to the other. PLC has been the f rst choice for communication with the electricity meter due to the direct connection with the meter [21] and successful implementations of AMI in urban areas where other solutions struggle to meet the needs of utilities. PLC systems based on t he LV di stribution network have been one of t he research topics for sm art grid applications in China [22]. In a typ ical PLC network, smart meters are

43 © IT4OD 2014

Page 50: IT4OD 2014 Proceedings

connected to the data concentr ator through power lines and data is transferred to the data center via cellular network technologies. For example, any electrical device, such as a power line smart transceiver-based meter, can be connected to the power line and used to transmit the metering data to a central location [20].

VII. MOTIVATION AND BENEFITS The smart grid is an integrated approach to transform

utilities to a future state. I t requires the coordination of advanced technologies, business processes and peo ple. It will be a gradual transformation of the systems that have served us for many years into a m ore intelligent, more effective and environmentally sensitive network to provide for our future needs.

Smart Grids in Algeria have enormous potential to: Renewable integration reducing our nation’s

dependence on coal. A smart grid gives customers more information on

how to manage their electricity use. Increase the efficiency of our power grids. Enabling customers to handle their electricity

consumption via the internet. Enable the consumer to participate in the selling of

electric power. Ensuring the safety and secu rity of energy efficiency

and home entertainment features. Open several scientific researches’ fields for

researchers.

VIII. SMART GRID TOPICS RESEARCH This section summarizes only the top priorities among the

Smart Grid research topics.

Fig. 5. Grid topics research.

Smart grid open many research themes such as communication protocol and security and sel f healing to

ensure the proper functioning of the network and also improve safety performance and avoiding default on the grid for future complex scenarios, power electronics technologies Open questions are e.g .: what are th e metrics for stability in the future (maybe not frequency and voltage)? How can m ostly self-organized systems be stabilized? What central actors will be needed? Which part of t he system should be f ully self-organized, where is central control needed? , Cloud technology is of great relevance for the electricity sector and associated energy carriers. Priority should be given to the following questions: What are the regulatory options to create and allow for creativity on the market on the one hand and economic stability and security of supply on the other hand? How can the regulatory framework proceed and a dapt in an unce rtain environment?

There is a ne ed for further development regarding the volatility of the grid and c orresponding response times of distributed ICT (Information and communications technology) systems.

IX. CONCLUSION Algeria is well placed to continue to be a major player in the

lucrative market of renewable energies. However, transition to renewable energy will need to be accelerated. It is hoped to use the Algerian renewa ble energies in order to integrate a smart electric system or smart grid .So in this paper we try to present the whole system structure which represents integration of smart grid systems with renewable energy in the south of Algeria.

Smart grid technology can c ontrol renewable resources to effect changes i n the grid’s operating conditions and can provide additional benefits as di stributed generation assets or when installed at the transmission level. So this paper aims to:

Increase understanding of t he costs and benefi ts of smart grids.

Identify the most important measures to develop the technologies of smart grid system that help meet energy and climate goals.

REFERENCES [1] Said .Bentouba «Les énergies renouvelables dans le cadre d 'un

développement durable en Al gérie willayas du grand sud exemple » paper university of Bechar, Algeria, 11 and 12 Novembre 2006.

[2] Coll-Mayor, D.; Paget, M.; Lightner, E. Future intelligent power grids: Analysis of the vision in the Europ ean Union and the United States. Energy Policy, 35, p.2453–2465, 2007.

[3] Clastres, C. Smart Grids: Another step towards competition, energy security and climate change objectives. Energy Policy, 39, p.5399–5408, 2011.

[4] S Nair, N.K.C.; Zhang, L. Smart Grid: Future networks for New Zealand power systems incorporating distributed generation. Energy Policy, vol37, p.3418–3427, 2009.

[5] Mah, D.N.; van der Vleu ten, J.M.; Ip, C.J.; Hills, P.R. Governing the transition of so cio-technical systems: A cas e study of the d evelopment of smart grids in Korea. Energy Policy, vol 45, p.133–141, 2012.

44 © IT4OD 2014

Page 51: IT4OD 2014 Proceedings

[6] Ipakchi, A. I mplementing the Smart Grid: Ent erprise information integration. In Proceedings of Grid Interop F orum, Albuquerque, NM, USA, 7–9 November 2007.

[7] Zio, E.; Aven, T. Uncertainties in Sm art Grids behavior and modeling: What are the risks and vu lnerabilities? How to analyze them? Energy Policy, vol39,p. 6308–6320, 2011.

[8] Järventausta, P.; Repo, S.; Raut iainen, A.; P artanen, J. Smart Grid power s ystem control in distributed generation environment. Annu. Rev. Control, vol 34, p.277–286, 2010.

[9] Blasques, L.C.M.; Pinho, J.T. Metering systems and demand-side management mode ls applied to h ybrid renewable ener gy systems in micro-grid conf iguration. Energy Policy, vol 45, p.721–729, 2012.

[10] Depuru, S.S.S.R.; Wang, L.; Devabhaktuni, V. Smart meters for power grid: Cha llenges, issues, advantages and status. Renew. Sust. Energy Rev. 2011, 15, 2736–2742.

[11] Wissner, M. The S mart Grid—A s aucerful of secrets? Appl. Energy, vol 88, p.2509–2518, 2011.

[12] IEA Key Energy Statistics, 2011. [13] A. B. Stambouli, “Alger ian renewable energy assessment: the

challenge of sustainability ”, Energy Policy, Vol. 39 (8), pp.45074519, 2011.

[14] A. B. Stambouli, Z. Kh iat, S. Flazi, Y. K itamura, “A review on the renewable energy development in Algeria: Current perspective, energy scenario and sustaina bility issues”, Renewable and Sustainable En ergy Reviews, vol. 16, pp.4445- 460, 2012.

[15] A. B. Stam bouli, “Algerian renewable energy assessment: the challenge of sustainability ”, Energy Policy, Vol. 39 (8), pp.45074519, 2011.

[16] A. B. Stambouli, Z. Kh iat, S. Flazi, Y. K itamura, “A review on the renewable energy development in Algeria: Current perspective, energy scenario and sustaina bility issues”, Renewable and Sustainable En ergy Reviews, vol. 16, pp.4445- 460, 2012.

[17] S. Menani, “Algeria ren ewable energy program: outlook and applications”, Energy Week Conference, Vaasa, Finland, 2012.

[18] I. A. Z ino, “Renewable Energies in Alger ia”, Arab Clim ate Resilience initiative: Climate Change Impacts in the Arab Region “Towards Sustainable Energy: Resources, Challenges and Opportunities”, Manama, Bahrain, 06-07 October, 2010.

[19] Y. Himri, S. Hi mri, A. Boudg hene Stambouli, “Wind power resources in the south-western region of Alg eria”, Renewable and Sustainable Energy Reviews, vol. 14, pp.554-556, 2012.

[20] MARIE LAURE LAMY " effi cacité des pol itiques environnementales d’incitation a l’adoption de nouv elles techniques le cas des energies renouvelables", Thèse de doctorat GRENOUBLE 2004.

[21] C.Thurler, “Smart grid and automatic meter management: dream or reality?,” in 19th Int. C onf. on Electricity Distribution, Vienna, Paper 0653, 21-24 May 2007.

[22] V.C. Gungor, D. Sahin, T. Kocak , and S. Ergü t, ‘Smart Grid Communications and Networking, ‘ Türk Telekom Technical Report-11316-01, April, 2011.

[23] R. P. Lewis, P. Igic and Z. Zhongfu, "Assessment of communication methods for smart electricity metering in the U.K.," in P roc. of IEEE P ES/IAS Conference on Sustainable Alternative Energy (SAE), pp. 1-4, Sept. 2009.

[24] M.Y. Zhai, "Transmission Characteristics of Low-Voltage Distribution Networks in China Under the Smart Gri ds Environment," IEEE Trans. on Power Delivery, vol.26, no.1, pp. 173180, Jan. 2011.

45 © IT4OD 2014

Page 52: IT4OD 2014 Proceedings

Topic 2: Security & Access management

46 © IT4OD 2014

Page 53: IT4OD 2014 Proceedings

Swarm intelligence algorithms in cryptanalysis

of Simple Feistel Ciphers

T. Mekhaznia

LAMIS Laboratory

University of Tebessa, Algéria

[email protected]

A. Zidani Department of Computer Sciences

Université of Batna, Algeria

[email protected]

Abstract— Recent cryptosystems constitute a hard task for

cryptanalysis algorithms due to the nonlinearity of their

structure. This problem can be formulated as NP-Hard. It has

long been subject to various attacks; related results remain

insufficient especially when handling wide instances due to

resources requirement which increase with the size of the

problem. On another side, optimization algorithms inspired

from swarm intelligence represents a set of approaches

characterized by their fast convergence with requirement of

limited resources. The purpose of this paper is to provide, and

for a first time, a more detailed study about the performance of

two swarm intelligence algorithms BAT algorithm and Wolf

Pack Algorithm for cryptanalysis of some basic variant of

Feistel ciphers within limited computer resources. Experiments

were accomplished in order to study the effectiveness of the

used algorithms in solving the considered problem. Moreover,

a comparison of PSO and AG algorithm establishes this

advantage.

Keywords— Cryptanalysis, Feistel ciphers, BAT algorithm,

WPA algorithm.

I. INTRODUCTION

The cryptanalysis refers to is the art of analyzing

encryption information, ciphers and related concepts for the

purpose to detect their weakness. This action permits

retrieval of encryption significance without necessary

knowing the secret data which normally used for decryption

such keys or encryption algorithms. This fact presents a

hard task against research in data security, especially with

the increasing of communication networks in recent years

when the security of information becomes obvious. The

principle of cryptanalysis lies in use of the correct

mathematical tools necessary to provide the right attack [1]

which allows evaluating cryptosystems efficiency and

therefore, perform more robust algorithms. The brute force is the most popular attack; it considers all

alternatives that conduct to the solution; it’s a sure technique but need enough resources and so, has less success in practice. Other alternatives available in literature such linear and differential cryptanalysis, are able to break a wide variety of ciphers, nevertheless, and given their reduced setting, they remain ineffective against modern cryptosystems.

Feistel ciphers are algorithms for symmetric key

encryption scheme which operate on large blocks of data. It

built based on nonlinearity and low autocorrelation. The

Data Encryption Standard is a popular Feistel algorithm

characterized by its simplicity of implementation, high speed

of encryption [2] and resistance against various attacks [3].

Actually, research in this area, are intended to use

heuristic algorithms. It may appear an efficiency way to

break complex ciphers. Swarm intelligence algorithms are a

well-known meta-heuristics that were successfully used to

resolve cryptanalysis problems with minimal resources

consumption [4]. Many works [5] [6] shown that algorithms

based swarm intelligence have a successful potential to

handle wide instances and may be adapted to produce an

approximate solutions for a large variety of optimization

problems. They use an intelligent system that offers an

independence of movement of agents and tend to replace the

preprogramming and centralized control. In last years, many

of such algorithms were emerged [7].

In this paper, two swarm intelligence algorithms BAT

algorithm and Wolf Pack Algorithm (WPA) are used, and for

the first time, for breaking encryption keys used in some

variants of Feistel ciphers. The main reason for using these

algorithms is due to their global solution finding property:

they use few parameters without any need of initial

approximation to unknown parameters. Also, they havebeen

successfully applied in a wide range of research application

areas. It is proved that it gets better results in a faster and

cheaper way compared with other methods.

II. RELATED WORKS

In recent years, several studies were carried out in this

way: [8] showed that PSO is more efficient than GA for

cryptanalysis of 4DES. The same algorithm was used by [9]

for cryptanalysis of DES, results revealed most bits of used

keys. [10] used a hybrid algorithm GSO for attack of DES

and AES keys, the experiments were able to break DES key.

[11] showed that BPSO is an effective tool for the

cryptanalysis of Feistel ciphers. [12] reveals, that PSO may

be a powerful tool for cryptanalysis of DES. [13] shows that

evolutionary computation may be efficient cryptanalysis but

depends of the nature of objective function. [14] has used

computational algorithms to resolve many cryptographic

47 © IT4OD 2014

Page 54: IT4OD 2014 Proceedings

problems, he proves that the problem formulation is a critical

determinant of the performance of computational intelligence

methods which constitute the first measure of security

cryptosystems. [15] [16] proved that BAT algorithm can be

used successfully to resolve a wide category of optimization

problems.

III. SWARM INTELLIGENCE HEURISTICS

An idea introduced by [17], Swarm intelligence heuristics

(SI, in short) are a nature inspired metaheuristics which can

satisfy at least one of the two goals of information

technology research, namely the generation of solutions with

maximum benefit by using a minimum of resources,

however, no proof of the optimality of the solution can be

proved, given that, the research becomes useless, if in a

exploration space, a cross between the local and global

solution occurs [18]. SI heuristics uses a basic population of

individuals which represents candidate solutions. They

evolve by a decentralized and self-organized system

according to a common rule. This principle allows handling

very large space of solutions but no guarantee of an optimal

solution is ever found.

Nature inspired heuristics, part of swarm intelligence

heuristics, are stochastic algorithms which took their

inspiration from social comportment of animals living in

large communities such bird flocking, fish schooling or ant

colonies. They are based on a population of individuals that

interact and evolve according to natural instinct. This

principle is used to produce algorithms able to resolve

complex tasks without centralized control.

IV. BAT ALGORITHM

BAT Algorithm [19], is a metaheuristic population based

approach, inspired from the hunting behavior of bats. In their

flying and, in order to avoid obstacles and detect prey or

their roosts in dark, Bats emit a bisonar [20] throughout their

environment, the echo bounces permit to identify kinds of

surrounding objects. Studies [21] show that the loudness of

emitted pulse varies from lowness rate with a long duration

of sounds when exploring hunt area to loudest with a

decreasing duration of sounds when homing toward prey.

Similar to other nature inspired algorithms such Ant

Colony Optimization, Genetic Algorithms and Particle

Swarm Optimization, BAT has been in first, implemented for

continuous optimization problems where possible solutions

are represented by bat’s positions and, subsequently

extended to the resolution of discrete problems.

The principle of BAT evolution is illustrated by

following steps:

In a search space ℝn, and at time t, each bat i has a

position xit and a velocity vi

t ∈ℝn.

In their randomly fly with a constant velocity v, each

bat i emit a uniformly pulse frequency fmin.

At the perception of a pry, parameters are adjusted

depending on the distance to prey according to

following relations:

fi= fmin+ (fmax- fmin) (1)

vit+1=vi

t+fi(xit-xg

t) (2)

xit+1=xi

t+vit+1(3)

where a random vector distributed in range [0,1], xg

the position of best bat of swarm.

The algorithm illustrated BAT evolution is as follows:

Algorithm 1. BAT Input: Problem dimension (N>2,g), objective function S. Output:S(g): minimizing g Initialization :

Generate xi, vi, ci (i=1..Ng) Evaluate S(xi), (i=1.. Ng) Initialize g ←xk / S(xk) ←min(S(xi), i=1.. Ng

While not (stopping criteria) Pick random numbers: [0,1] For each bati do

fi= fmin+ (fmax- fmin) with fi fmin,fmax vi ←vi + fi(xi-g) with vi vmin,vmax xi ← xi + vi If (S(xi) < S(g)) g ← xi increase rate pulse and reduce loudness

Endif

Endfor

EndWhile Report g and S(g).

V. WPA ALGORITHM

Wolf Pack Algorithm (WPA, in short) [22], is a new

well-known algorithm used to approximate solutions to

various real-word optimization problems. WPA is a

population-based metaheuristic inspired by the social

foraging behavior of the jungle predators. It consists

basically in making animals (wolves) hunt, find the trail of

prey and capture it under the command of a lead wolf.

The Wolf Pack include a leader-wolf which is the

smartest and the most ferocious wolf, it’s the responsible of

the control of pack. Its decisions always based upon the

surrounding environment: prey, wolves of pack and other

predators. The pack is managed by two classes of wolves:

scoot and furious. The scoot-wolves move independently in

their environment and adjust their direction according to the

concentration of prey’s smell. When a prey is located, the

scoot-wolf will howl and report that to the lead-wolf which

evaluate the situation, summon the furious-wolves and move

fast toward the howl. After capturing a prey, it distributed in

an order from the strong to weak. This fact causes the dead

of weak wolves for lack of food. This fact keeps an active

and strong pack at any time.

The Wolf Pack algorithm is accomplished by following

steps:

48 © IT4OD 2014

Page 55: IT4OD 2014 Proceedings

)),(,(),( 111 iiiiiii kRfLRRL

In a search space ℝn, each wolf i represent a basic

solution of the problem, has a position . Initially,

wolves are randomly distributed in space.

At each instant t, the wolf i perform a move from

position to positio . The choice of next

position is updated according to the following

equation:

xit+1=xi

t+|xgt - xi

t|(4)

where a random vector distributed in range [-1,1], xg

the position of the lead-wolf.

After a fixed number of iterations, which corresponds

to a scooting phase, the wolf of the best solution

became a lead wolf; a certain number of weak wolves

(bad solutions) will be deleted and replaced by a new

generation of random wolves.

The algorithm illustrated WPA movement is as follows:

Algorithm 2. WPA Input: Problem dimension (N >2,g), objective function S. Output:S(g): minimizing g Initialization :

Generate xi, (i=1..Ng) Evaluate S(xi), (i=1.. Ng) Initialize g ←xk / S(xk) ←min(S(xi), i=1.. Ng

While not (stopping criteria) it←0

While not (Iterscoot<It)

Pick random numbers: [-1,1] For each wolfi do

xi ← xi+|xg - xi| If (S(xi) < S(g)) g ← xiEndif

Endfor

Update It EndWhile Delete worst-wolf w / (S(xi)=max(S(xi), i=1.. Ng Generate a new random w

EndWhile Report g and S(g).

VI. FEISTEL CIPHERS

Based on confusion and diffusion principle, the Feistel

ciphers is a special class of iterated block ciphers which

maps a plaintext to a ciphertext by a sequential rtimes

repetition of a nonlinear transformation (called round

function).

In order to produce a ciphertextC from a plaintext M,

Feistel cryptosystem proceeds for each bloc of n-bits of M, r

iterations of the round function fi using several keys. Initially,

each block is split into two halves L0 and R0of n/2 bits each.

At iteration i, the round function is applied to one half using

a subkey, the output is exclusive-ored with the other half.

The two halves are then swapped as shows in following

relation:

(5)

wherefi (i>0), a nonlinear function usually represented as a

substitution boxe (called sboxe). It substitutes an input of n

bits size with an output of m bits size (m<n).

The advantage of the algorithm is that the encryption and

decryption functions are identical. To reverse a round, it is

only necessary to apply the same transformation again,

which will cancel the changes of the binary operation XOR.

Feistel ciphers become the basis for many encryption

schemes, among them the DES, which is the most popular

one.

A. Data encryption standard

The most widely used Feistel block cipher cryptosystem

is the Data Encryption Standard (DES or 16DES in short)

which transform 64-bit input block in a series of steps into

similar size output block through a 16-round process. The

round function fi uses 8 nonlinear sboxes. Each of them is a

substitution which mapping 6 to 4 bits. Detailed description

of DES is given in [23] [24] [25].

The strength of DES lie in the nonlinearity induced by

the sboxes, it remains an important model for the

construction of secure block ciphers. Also, the brute force

attack need an average of 2^55 tries which takes high time

complexity such that, the resources for search in an

acceptable period are not available. Its major weakness is

existence of several weak and semi weak keys. The weak

key is that, after parity drop operation, consist of all 0, all 1

or half 0 and half 1.

B. Four rounded DES Algorithm

The Four rounds DES algorithm (4DES in short) [26] has

the same properties as DES algorithm. It uses an fk function

which merge substitution, combination and logic addition

that take place in four rounded with four subkeys by using

the same table of expansion and permutation (sboxes) as

DES.

The 4DES algorithm is less complex than DES but

remain difficult to break.

C. Simplified DES Algorithm

The Simplified DES (SDES in short) is a variant of DES

introduced by [27]. It has similar properties and structure as

DES with much smaller parameters.

The SDES encryption algorithm uses an 8 bit block of

plaintext and a 10-bit key as input, and produces an 8-bit

block of ciphertext as output. The decryption algorithm takes

an 8 bit key of ciphertext and the same 10 bit key as input

and produces an 8 bit block of plaintext.

The encryption algorithm is performed in five steps: (1)

an initial permutation, (2) a complex function fk, where both

permutation and substitution operations are performed based

on the key input, (3) a permutation of the two halves of the

data, (4) again performing the function fk, and (5) inverse

initial permutation. The same steps are followed for the

decryption operation in a reverse order.

The algorithm uses two reduced sboxes (size 44) and an

expansion/permutation table (size 18).

49 © IT4OD 2014

Page 56: IT4OD 2014 Proceedings

. ),(),()()()(26

1,

26

1

b

ji

u

i

jiCjiDiCiDkF

VII. PROBLEM FORMULATION

A. Frequency analysis & cost function

The letter frequency in a given text is different from one

language to another. In English, for example, the single

character (1-gram) the most frequent is ‘E’ with an

occurrence of 12% in a text, followed by ‘T’ with 8%, while

the ‘Z’ occurs with only 0.05%. Similarly, the group of two

characters (2-gram) the most common are ‘TH’ followed by

‘HE’, ‘AN’ ... The triplet (3-gram) the most common is

'THE'. These statistics have been developed based on Corpus

[28] [29] and illustrated on tables called ‘letter frequency

table’ [30] [31].

TABLE I. FREQUENCY TABLE FOR MOST ENGLISH AND FRENCH

CORPUS

Thomas

Tempé [32]

Concise

OD [33]

Corpus

Français [34]

Leipzig

Corpora [35]

A 7.246 8.167 9.38 8.55

B 0.855 1.492 1.54 1.6

C 3.094 2.782 1.49 3.16

D 3.481 4.253 4.70 3.87

E 13.98 12.702 10.15 12.1

F 1.012 2.228 2.03 2.18

G 0.822 2.015 2.86 2.09

H 0.699 6.094 2.09 4.96

I 7.144 6.966 5.82 7.33

J 0.517 0.153 0.61 0.22

K 0.046 0.772 3.14 0.81

L 5.177 4.025 5.28 421

M 2.816 2.406 3.47 2.53

N 6.732 6.749 8.54 7.17

O 5.121 7.507 4.48 7.47

P 2.867 1.929 1.84 2.07

Q 1.292 0.095 0.02 0.1

R 6.218 5.987 8.43 6.33

S 7.542 6.327 6.59 6.73

T 6.874 9.056 7.69 8.94

U 5.988 2.758 1.92 2.68

V 1.545 0.978 2.42 1.06

W 0.108 2.360 0.14 1.83

X 0.367 0.150 0.16 0.19

Y 0.292 1.974 0.71 1.72

Z 0.129 0.074 0.07 0.11

The letter frequency analysis is the process of

determining at which frequency a letter of the plaintext

occurs within the corresponding ciphered text. This fact

gives an idea about the language of the ciphertext, and

therefore, to recover some of its letters, especially the most

frequent.

The natural way to prove the effectiveness of a candidate

key used in decryption is to compare the letter frequency

analysis of the decrypted text to the letter frequency of the

language used. The cost function is built upon this idea. It

can have different forms which are used on several

combination schemes of n-gram analysis. Various

alternatives forms of this function were available in literature

[36] [37] [38] [39]. The most commonly used is given by

following equation:

(6)

whereD, C denotes respectively known language statistics

and decrypted text statistics. u, b: denotes respectively 1-

gram and 2-gram statistics, and (with +=1) are

weights assigning different priorities to 1-gram and 2-gram

and k, the key used in decryption process.

B. Implementation scheme

In a search space, each bat/wolf irepresent a random

initial solution of the problem that corresponds to a

decryption key k, a vector of n bits (10 bits in case of SDES

and 56 otherwise); each bit x represents abat/wolf position in

their exploration. At each move from position to

position , the bat/wolf i perform a decryption key

obtained by swapping the bits xtand xt+1 obtained

respectively by equations (3) and (4) in case of BAT or WPA

algorithms. The performance of each position corresponds to

the cost of text obtained using the decryption key

according to the cost function mentioned above. . The

process will be stopped after a fixed number of iterations or

if no improvement in solution.

VIII. EXPERIMENTATION AND RESULTS

In this section and, in order to outline the performance of

the proposed algorithms, some experiments have been

conducted on a set of sample binary texts of 1200 to 2400

bits (150 to 300 ASCII characters) extracts from ICE [40].

Encryption methods used are: SDES, 4DES and DES

cryptosystems using several keys. Each key is a binary

vector of 10 bits (in case of SDES) and 56 bits in other cases.

The used algorithm is coded on Matlab 2.14 and performed

on a CPU 3.2 Ghz.

The results obtained after carrying the mentioned

experiments are illustrated in the table below which show the

average of recovered bits of encryption key for each

algorithm when using a fixed processing time of 150

seconds.

TABLE II. PERFORMANCE EVALUATION OF BAT AND WPA

ALGORITHMS

Cipher

algorithm

Decryption

key-size

(bits)

Recovered bits

BAT WPA

SDES 10 10 10

4DES 56 42 43

DES 56 22 26

In this first experiment, we show that both algorithms

perform the overall number of much character when SDES

encryption algorithm is used and an average of 50% for the

50 © IT4OD 2014

Page 57: IT4OD 2014 Proceedings

other cases. Also, WPA algorithm performs better than BAT

in the most cases.

In order to conduct a comparative study, the same tests

were carried on standard PSOand GA algorithms in a

similarenvironment,particularly in terms ofdata

andprocessing time. The results were illustrated in the

following figure.

Fig. 1. Comparison of BAT/WPA vs PSO and GA

In this experiment, we compare the performance of BAT

and WPA against PSO and GA based on cipher algorithms

used. The figure 1 shows that the WPA algorithm

outperforms significantly as GA algorithm. Also, the

performance of both BAT and WPA is particularly

noticeable in case of SDES and 4DES.

IX. CONCLUSION

In this paper, a comparative study of BAT algorithm and WPA algorithm for cryptanalysis of some variants of Feistel ciphers was conducted. The experiments show that the algorithms can be successfully applied in resolve of such problem. The produced results show that both algorithms allow locating the full key (in case of reduced DES) and more than 50% of bits-key (in other cases) with acceptable resource consumption. The tests were operates on a reduced space of data, however, the results presented can be improved by the well choice of problem factors such environment parameters, ciphered data and languages statistics. In addition, the study may open avenues to investigate the effectiveness of other evolutionary computation techniques for further attacks of more complicated cryptosystems.

REFERENCES

[1] S. Rao& al. 2009. Cryptanalysis of a Feistal Type Block Cipher by

Feed Forward Neural Network Using Right Sigmoidal Sig-

nals.International Journal of Software Computing, Vol.4, No.3, 2009.

[2] S.Ali K, Al-OmariPutra Sumari,2010. Spiking Neurons with ASNN

BASED-Methods for the Neural Block Cipher.International journal

of computer science& information Technology, Vol.2, No.4.

[3] R. Singh, D. B. Ojha, 2010. An Ordeal Random Data Encryption

Scheme (ORDES).International Journal of Engineering Science and

Technology, Vol. 2, No.11, pp.6349- 6360.

[4] A. Gherboudj, S. Chikhi, 2011.A modified HPSO Algorithms for

Knapsack Problem.CCIS, Springer.

[5] C. Blum, X. Li, 2008.Swarm intelligence in optimization. Natural

Computing Series, Springer, 2008.

[6] T.S.C. Felix, M.K. Tiwari,c2007. Swarm Intelligence, Focus on Ant

Particle Swarm Optimization.I. Tech Education and Publishing.

[7] G.S. Sharvani, N.K. Cauvery, T.M. Rangaswamy, 2009. Different

Types of Swarm Intelligence Algorithm for Routing.International

Conference on Advances in Recent Technologies in Communication

and Computing.

[8] Shahzad, W., Siddiqui, A.B.and Khan, F.A. 2009. Cryptanal-

ysis of Four-Rounded DES using Binary Particle Swarm Op-

timization. In Proceeding of theGenetic and Evolutionary

Computation Conference (July 8-12,2009). ACM , NY, 1757-

1758.

[9] Wafaa, G.A.and al. 2011.Known-Plaintext Attack of DES-16

Using Particle Swarm Optimization. In Proceeding of The

3rd World Congress on Nature and Biologically Inspired

Computing (NaBIC2011), 12-16.

[10] Vimalathithan, R., Valarmathi, M.L. 2011. Cryptanalysis of

DES using Computational Intelligence.European Journal of

Scientific Research, 55, 2 (2011), 237-244.

[11] Jadon, S.S. and al. 2011.Application of Binary Particle Swarm

Optimization in Cryptanalysis of DES. In Proceeding of the

International Conference on Soft Computing for Problem

Solving, (Dec. 20-22,2011). Advances in Intelligent and Soft

Computing 130, 1061-1071.

[12] Pandey, S., Mishra, 2012. M. Particle Swarm Optimization in

Cryptanalysis of DES, Int. J. of Advanced Research in Com-

puter Engineering & Technology 1, 4, 379-381.

[13] Laskari, E.C. and al. 2007.Applying evolutionary computation

methods for cryptanalysis of Feistel ciphers, J. Applied Math.

And Comp., 184 (2007), 63-72.

[14] Laskari, E.C. and al. 2007, Cryptography and cryptanalysis through

computational intelligence. J. Studies in Computational Intelligence,

57 (2007), 1-49.

[15]X. S. Yang and A. H. Gandomi. 2012., Bat algorithm: a novel

approach for global engineering optimization, Engineering

Computations, Vol. 29, No. 5, pp. 464-483.

[16]S. Mishra, K. Shaw, D. Mishra, 2012.A new metaheuristic

classification approach for microarray data.Procedia Technol-

ogy, Vol. 4, pp. 802-806.

[17] Beni, G., Wang, J. Swarm Intelligence in Cellular Robotic Systems,

Proceed. NATO Advanced Workshop on Robots and Biological Sys-

tems, Tuscany, Italy, June 26–30 (1989).

[18] J. Olamaei, T. Niknam, G. Gharehpetian, 2008.Application of particle

swarm optimization for distribution feeder reconfiguration consider-

ing distributed generators.AMC.

[19] X. S. Yang.2010. A New Metaheuristic Bat-Inspired Algo-

rithm.Nature Inspired Cooperative Strategies for Optimization.

[20] D. R. Griffin 1958.Listening in the dark.Yale Univ. Press, New York.

[21] J. R. Speakman, P. A. Racey. 2014. The cost of being a bat. Nature V

350, P 421−423, 1991.

[22]W. Hu-Sheng and Z.Feng-Ming.2014. Wolf Pack Algorithm for

Unconstrained Global Optimization. Mathematical Problems in

Engineering, V 2014. [23] S. Ghorui& al. 2000.A simpler and elegant algorithm for computing

fractal dimension in higher dimensional state space.PRAMANA Jour-

nal of Physics, Indian Academy of Sciences 54(2), L331–L336.

[24] W. Stallings, 2004.Cryptography and Network Security Principles and

Practices, Pearson Education.

[25] A. B. Forouzan. 2008. Cryptography and Network Security. Tata

51 © IT4OD 2014

Page 58: IT4OD 2014 Proceedings

McGraw hill Education, 2nd ed..

[26] E.C. Laskari& al. 2005.Evolutionary computation based cryptanalysis:

A first study, Nonlinear Analysis: Theory, Methods and Applications

63 e823–e830.

[27] E. Schaefer, 1996.A Simplified Data Encryption Standard Algorithm,

Cryptologia, Vol .20, No.1, pp. 77-84. [28] Robert, L. 2000. Cryptological Mathematics, The Mathematical

Association of America, NY.

[29] Nelson, G., Wallis, G. and Bas, A. 2000.Exploring Natural Languag:

Working with the British Component of the International Corpus of

English.John Benjamins Publishing Company, Amsterdam.

[30] Singh, S. 1999. The code book: The Evolution of Secrecy from Mary,

Queen of Scots, to Quantum Cryptography. Doubleday, New York,

NY, USA, 1st edition.

[31] Beker, H. and Piper, F. 1982. Cipher Systems: The Protection of

Communications. John Wiley & Sons.

[32].http://web.archive.org/web/20080213211515/http://gpl.insa-

lyon.fr/Dvorak-Fr/CorpusDeThomasTemp%C3%A9.

[33] http:// en.algoritmy.net / article / 40379 / Letter-frequency-English.

[34] http://wortschatz.uni-leipzig.de/ws_fra.

[35] http://corpora.informatik.uni-leipzig.de/

[36] Jakobsen, T. and Knudsen, L.R. 2001. Attacks on block ciphers of

low algebraic degree’, J. of Cryptology. 14,3, 197-210.

[37] Nalini, N. and Raghavendra, G. 2006.Cryptanalysis of Simplified Data

Encryption Standard via Optimisation Heuristics.Int. J. of Computer

Science and Network Security. 6, 240-246.

[38] Verma, A. K., Dave, M. and Joshi. R. C. 2007. Genetic Algorithm and

Tabu Search Attack on the MonoAlphabeticSubsitution Cipher in

Adhoc Networks.Journal of Computer Science. 3 (3), 134-137.

[39] Ganapathi, S. and Purusothaman, T. 2011.Reduction of Key Search

Space of Vigenere Cipher Using Particle Swarm Optimization.J. of

Computer Science. 7, 11, 1633-1638.

[40] N. Gerald, W. Sean and A. Bas, 2002.Exploring Natural Lan-

guage.John Benjamins Publishing Company.

52 © IT4OD 2014

Page 59: IT4OD 2014 Proceedings

Secure audio watermarking algorithm: Anapplication for copyright protection

Mustapha Hemis and Bachir BoudraaSpeech communication and signal processing laboratory

University of Sciences and Technology Houari Boumediene (USTHB)BP 32 El Alia, Algiers, [email protected]@yahoo.fr

Abstract—Digital watermarking plays an important role forcopyright protection of multimedia data. In this paper anefficient robust audio watermarking algorithm based on doubletransforms is presented. In a first step, the original signal isdecomposed by Discrete Wavelet Transform (DWT). Then theprominent approximation coefficients are segmented in non-overlapping 2D blocks. Singular Value Decomposition (SVD)is applied on each one. The watermark is embedded in theSingular Values (SVs) for each block. Watermark extractionis non-blind and it’s done by performing inverse operation ofembedding process. Experimental results show that this schemeis robust against common signal processing attacks such asnoise addition, filtering, MP3 compression and inaudibility issatisfactory. Moreover, this method use a double key insertionmaking it suitable for secure application such as copyrightprotection.

Index Terms—Multimedia security, Audio watermarking,DWT, SVD.

I. INTRODUCTION

The development of communication networks and digitalsupports like the compact Disc, the Digital Versatile Disc...involves a massive diffusion of documents stored using nu-merical formats: MPEG (Motion Picture Expert Group), MP3(MPEG-1/2 Audio Layer 3), JPEG (Joint Photographie ExpertsGroup)... These techniques make possible to store a greatamount of information but facilitate also the illegal use ofdocuments. Digital watermarking has been introduced as atechnique to solve problems as varied as the protection of thecopyright, content authentication, fingerprinting and broadcastmonitoring. Audio watermarking is a process that embeds datacalled watermark or digital signature into a multimedia objectsuch that the watermark can be detected or extracted later tomake an assertion about the object [1].

Audio watermarking techniques should at least ensure thefollowing requirements: (i) Imperceptibility: original and wa-termarked signal must be perceptually similar. (ii) Robustness:it is the ability to retrieve the inserted watermark even thoughthe watermarked signal has been manipulated. Watermarkshould resist against various intentional or unintentional at-tacks. (iii) Security: only authorized person can extract thewatermark. (iv) Capacity: it is the amount of bits that can beembedded into the audio signal per time unit and is measuredin the unit of bps (bits per second). It should be more than 20

bits per second. These requirements are often contradictory.Since robustness and imperceptibility are the most importantrequirements for digital audio watermarking, these should besatisfied first [2].

Most of the watermarking methods proposed over the lastfew years focus on image and video watermarking. Indeed,digital audio watermarking is more challenging than digitalvideo and image watermarking, because the Human AuditorySystem (HAS) is significantly more sensitive than the HumanVisual System (HVS). In recent years, several good audiowatermarking algorithms have been developed. Most of thesealgorithms can be divided into two groups: algorithms intime domain and algorithms in frequency domain. In timedomain approach, information is embedded directly into theamplitudes of the audio signal [3]–[5]. In frequency domain,host signal is transformed and then information bits are embed-ded into the transformed sample. This approach includes FastFourier Transforms (FFT) [6], [7], Discrete Cosine Transform(DCT) [8], [9] and DWT [10], [11].

However, the use of only one domain, temporal or frequencyin an audio watermarking algorithm may be disadvantageousfor two reasons: (1) in the spatial or frequency domain, audioquality degrades significantly when the size of the watermarkincreases, (2) the watermark inserted in the frequencies co-efficients are slightly altered during the transformation at fre-quency towards time domain and vice versa. Hybrid algorithmsare proposed.

In this work, we continue to enhance the work of Himeur etal. [12] realised in our laboratory. We propose here a doubletransformation audio watermarking algorithm based on DWTand SVD. These two transforms are applied on the originalsignal. The insertion is done in the low frequency zone in orderto ensure more robustness against common signal processing.In this case, the extraction is non-blind (the original audiosignal is needed in the extraction phase) in order to improvethe robustness of the watermark and the reliability of extractionprocess. Moreover, our method uses a double key in order toadd more security.

The rest of this paper is organized as follows: section 2gives a brief representation of some related works. Section 3describes the transformations used in this method. In section4 the proposed watermarking method is described. Section

53 © IT4OD 2014

Page 60: IT4OD 2014 Proceedings

5 presents experimental results and comparison. Section 6concludes this paper.

II. RELATED WORKS

To ensure best performances, hybrid algorithms combiningtwo transforms have been developed. Chen and Zhu havepresented a scheme combining DWT and DCT [13]. The mul-tiresolution characteristics of DWT, the energy compressioncharacteristic of DCT, and the Gaussian noise suppressionproperty of higher-order cumulant are combined to extractessential features from the host audio signal. The insertionis done by a zero-watermarking technique which hides thewatermark in a secret key, not in the signal itself. Wang andZhao used also DWT-DCT transforms [14]. They propose adigital audio watermarking scheme to prevent synchronizationattack. The watermark is embedded into the low frequencycomponents by adaptive quantization according to humanauditory masking. Himeur et al. [12] proposed to combineDWT with the Discrete Sine Transform (DST). Insertion of thewatermark is done in both low and high frequencies. In orderto increase safety and the robustness, the mark is encryptedby Arnold transformation and is coded by a BCH (Bose,Chaudhuri et Hocqenghem) error correcting code. In com-parison, the authors confirmed that DWT-DST ensure moreimperceptibility-robustness compromise than the DWT-DCT.Bhat et al. have proposed to use the SVD with DWT [15]. Themethod is based on Quantization Index Modulation (QIM) asan insertion technique. The main idea is to divide the inputsignal into 2D blocks and then change the norm of the diagonalmatrix S according to the bit value of the watermark. The FFTwas also combined with the SVD [16]. The authors proposeto use a reduced version of the SVD (RSVD). Recently, Huet al. have combined the Discrete Wavelet Packet Transfor-mation (DWPT) with the SVD [17]. The authors exploitedthe flexibility of DWPT to approximate the critical bandsand adaptively determined suitable embedding strengths forcarrying out QIM. The SVD is employed to analyze the matrixformed by the DWPT coefficients and embeded watermark bitsby manipulating singular values subject to perceptual criteria.The major limitation of the presented methods is in therm ofsecurity. Indeed, in the best case, the algorithm use only onekey to encrypt the watermark image, ensuring thus a low levelsecurity of the algorithm. In the section 4, a high securitywatermarking algorithm is presented in which two keys areused for insertion and extraction process.

III. THE USED TRANSFORMS

A. Discrete Wavelet Transform

The wavelet transform is a time-scale signal analysis tech-nique. It was developed as an alternative to the Short TermFourier Transform (STFT) to overcome the problems relatedto the properties of its time and frequency resolutions. Morespecifically, in contrast to the STFT that provides uniformtemporal resolution for all frequencies, the DWT provides ahigh temporal resolution and a low frequency resolution forhigh frequencies and high frequency resolution and low time

S

cA1 cD1

cA2 cD2

cA3 cD3

Fig. 1. 3-level DWT decomposition of signal S

resolution for low frequencies. So the wavelet transform is asuitable tool to analyse the non-stationary signals.

The main objective of the wavelet transform is to hier-archically decompose an input signal into a series of lowfrequency approximation subbands and their detail subbands[18]. Depending on the application and the length of the signal,the low frequencies part might be further decomposed into twoparts of high and low frequencies. Fig 1 shows a 3-level DWTdecomposition of input signal S.

The data obtained from the above decomposition are calledthe DWT coefficients. Moreover, the original signal can bereconstructed from these coefficients. This reconstruction iscalled the inverse DWT.

B. Singular Value Decomposition

SVD is a useful tool of linear algebra with several ap-plications in image compression, watermarking, and otherareas of signal processing. A few years ago, SVD has beenexploited for image watermarking applications [19], [20]. SVDis an optimal matrix-decomposition technique in a least-squaresense. It packs maximum signal energy into as few coefficientsas possible. SVD has an adapting ability to variations inlocal statistics of a given signal, so watermarking schemesusing SVD typically have high payload. Most SVD-basedwatermarking schemes embed watermark bits by modifyingthe singular values (SVs) [21].

Let A be a matrix of size n × n. This matrix can bedecomposed using the SVD as follows:

A = UDV T =n∑

i=1

λiUiVTi (1)

Where U and V are orthogonal matrices of size n×n. D is an× n diagonal matrix, and λi, i = 1, 2, ..., n are the diagonalelements of D. Only non-zero elements are called SingularValues (SVs) of matrix A.

IV. PROPOSED WATERMARKING ALGORITHM

The proposed method is based on double transformationDWT-SVD. The basic idea is that the watermark is embeddedinto the SVs of the blocks of low frequency coefficients of theaudio signal. The main reasons are following:

1) The audio signal in its original format is a mixtureof high and low frequency that form semi-sinusoidal waveswith uneven amplitudes and wavelengths. The energy of the

54 © IT4OD 2014

Page 61: IT4OD 2014 Proceedings

signal is mostly concentrated on low frequencies and highfrequencies present a perceptually insignificant regions of thesignal. The watermark should not be placed in this regionssince many common signal and geometric processes affectthese components. For example, a watermark placed in thehigh frequency spectrum of a signal can be easily eliminatedwith little degradation to the signal by any process that directlyor indirectly performs low pass filtering.

2) Changing SVs slightly does not affect the signal qualityand SVs do not change much after various types of commonsignal processing operations.

A. Watermark Insertion

The diagram of watermark insertion is shown in figure 2.The process of insertion is summarized by the following steps:

1) The watermark, which is a binary image, is decomposedinto blocks Wj , j = 1, 2, ...,M , each of size r×r. Thenthe SVD is applied for each block:

Wj = Uwj D

wj V

wT

j (2)

The matrices Uwj and V w

j are saved as a key K1.2) The audio signal is first decomposed up to third level

using DWT.The N prominent peaks of approximation coefficientscA3 are segmented into 2D matrix blocks Bj , j =1, 2, ...M , each of size r×r, where M is the blocks num-ber of watermark image. N must be equal to M×r×r.The indices of N prominent peaks are saved as a keyK2.

3) SVD is applied for each block Bj :

Bj = UBj D

Bj V

BT

j (3)

4) Each diagonal matrix Dwj is multiplied by a scalar factor

α and added to corresponding matrix DBj in order to

obtain modified diagonal matrix Dj :

Dj = DBj + α.Dw

j (4)

5) The modified blocks Bj are obtained using the diagonalmatrix Dj and the original matrices UB

j , VBj as follows:

Bj = UBj DjV

BT

j (5)

6) The modified blocks are concatenated in order to obtainthe N modified peaks.

7) The N modified peaks are inserted back into the ap-proximation coefficients.

8) The inverse DWT is calculated to reconstruct the water-marked signal.

B. Watermark Extraction

In case of copyright protection, the detection is usually nonblind as the needed original signal is present in the process ofextraction. In fact, for a copyright protection application, thepresence of the original signal in extraction is not a disabilityfor the method because for such application the owner has both

Original signal

Watermark image

Watermarkedsignal

DWT

Approximationcoefficients

N prominentpeaks

Segmentation intoM matrices blocks

SVD

Insertion

Inverse SVD

Concatenation of theM modified blocks

Insert back the Nmodified peaks

IDWT

SVD

Decompositioninto M blocks

(Uwj , V

wj )

Key K1

(Peaksindices)Key K2

Pre-embedding

block

Fig. 2. Watermark Insertion Process

original and watermarked signal. Figure 3 shows the processof extraction. It is implemented using the following steps:

1) The watermarked audio signal is first decomposed upto third level using DWT. The N peaks of approxima-tion coefficients are extracted using K2 key and thensegmented into 2D matrix blocks Bj .

2) The SVD is then applied for each block Bj :

Bj = UBj D

Bj V

BT

j (6)

3) The step 1 and 2 are repeated for the original signal inorder to obtain:

Bj = UBj D

Bj V

BT

j (7)

4) The diagonal matrices Dwj of the watermark blocks are

obtained as follow:

Dwj =

DBj −DB

j

α(8)

55 © IT4OD 2014

Page 62: IT4OD 2014 Proceedings

Original signalWatermarked signal

Extractedwatermark

(Peaksindices)Key K2

Pre-embeddingblock

Pre-embeddingblock

Extraction of diagonalmatrices Dw

j

Inverse SVD

Blocksconcatenation

(Uwj , V

wj )

Key K1

Fig. 3. Watermark Extraction Process

Fig. 4. Watermark Image

5) The watermark blocks Wj are reconstructed using theextracted matrices Dw

j and the matrices Uj and Vjobtained by the K1 key :

Wj = UjDwj V

Tj (9)

6) The extracted watermark image is obtained by concate-nation of Wj blocks.

V. EXPERIMENTAL RESULTS

The performance of this algorithm is evaluated in termsof imperceptibility and robustness. Moreover, our system iscompared with the system of Himeur et al. Various signals”.wav” of different styles (classical music, speech, musicalinstruments ...) are used in experiments (Table I). Each signalis a 16 bits signed mono signal sampled at 44.1 KHz withduration of 40 seconds. The watermark is a binary imagewith size 32 × 32 (figure 4). The parameters used in thesealgorithms are set as follows: Block size r × r is 4 × 4, astrength embedding coefficient α = 0, 09. These parametershave been experimentally selected in order to achieve goodimperceptibility-robustness tradeoff and have been tuned onthe validation data set.

TABLE IAUDIO SIGNALS

Audio signals Description

Male voice A male spoken voice

Female voice A female spoken voice

Jazz Jazz music

Pop Pop music

Semph Symphony orchestra of STOLTZMAN

Guitar Guitar music

5

10

15

20

25

30

35

Malevoice

Femalevoice

Jazz Pop Semph Guitar

SNR

(dB

)

Our methodDWT-DCTDWT-DST

Fig. 5. SNR Results for the three methods

A. Imperceptibility Results

An inaudible watermarking is undoubtedly the first con-straint of a watermarking diagram. Perceptually, the water-marked audio signal must be identical to the original. Interm of imperceptibility, there are several evaluation criteriaof audio watermarking algorithms. In this work, the Signal-to-Noise Ratio (SNR) is used to measure the similarity betweenthe original audio and the watermarked audio (equation 10).

SNR = 10 log(

∑L−1i=0 x(i)

2∑L−1i=0 [x(i)− xw(i)]2

) (10)

where x(i) and xw(i) denote the host and the watermarkedaudio respectively. The imperceptibility gets better with theincrease of SNR. The results of SNR for the 6 signals areshown in figure 5.

It appears that the proposed method provides an SNRabove 24 dB (SNR mean 27 dB), largely superior to theminimum value imposed by IFPI (International Federationof Phonographic Industry) [22] which recommends that theaudio watermarking algorithm must offer a SNR higher than20 dB. It can also be noted that the DWT-DST ensures moreinaudibility than the other methods, with a mean SNR of 30dB. This is due to the fact that the DWT-DST uses a doublefrequency transformation and DST compacts the energy inputusing more AC coefficients than the DCT.

56 © IT4OD 2014

Page 63: IT4OD 2014 Proceedings

TABLE IINORMALIZED CORRELATION RESULTS

Attacks Our method DWT-DCT DWT-DST

Noise addition 0.9992 0.9996 0.9993

Cropping 1 0.9866 0.9866

Re-sampling 1 0.9997 0.9997

Noise reduction 0.9438 0.9912 0.9787

Re-quantization 0.9999 0.9997 0.9996

MP3 compression (128kbps) 0.9924 0.9729 0.9311

Low-pass filtering 0.9998 0.9997 0.9997

Echo addition 0.9714 0.5553 0.3822

B. Robustness Results

In order to evaluate the robustness performance of thismethod, the Normalized Correlation (NC) is used to measurethe similarly between the extracted and the original water-mark (equation 11). We chose classical music (Semph) toperform these evaluation, because this kind of music has alarger frequency band, and it’s more adequate for robustnessevaluation. Various signal processing attacks are tested toassess the robustness of the methods: Addition of noise,Noise reduction, Echo addition, Re-sampling, Re-quantization,Lowpass filtering, Cropping and MP3 compression.

NC =

∑M1

i=1

∑M2

i=1 w(i, j)w(i, j)√∑M1

i=1

∑M2

i=1 w(i, j)2

√∑M1

i=1

∑M2

i=1 w(i, j)2

(11)

Where w and w denote the original and extracted water-marks respectively, i and j are indexes of the binary watermarkimage.

Table II shows the results of robustness in terms of Nor-malized Correlation obtained for the three methods. Extractedwatermark image after the different attacks for the threemethods are shown in figure 6.

From the above results, we can see that our method (DWT-SVD) provides high robustness against the most attacks with acertain fragility against the noise reduction attack. The methodis more robust than the two other techniques against the fol-lowing attacks : Cropping, Echo addition, MP3 compression.

For the two methods (DWT-DCT and DWT-DST), it ap-pears that Echo addition affects seriously the extraction ofthe watermark, indeed the extracted watermark is completelyscrambled.

We can also note that the DWT-DCT and DWT-DST meth-ods present a certain fragility against MP3 compression andcropping attacks.

VI. CONCLUSION AND FUTURE WORK

A robust audio watermarking algorithm based on doubletransformation DWT-SVD is presented in this paper. Thewatermark is embedded into the SVs of the blocks of lowfrequency coefficients of the audio signal. Experimental results

Fig. 6. Extracted watermarks for the three methods after various attacks :(a) noise addition (b) Cropping (c) Re-sampling (d) Noise reduction (e) Re-quantization (f) MP3 compression (g) Pass-low filtering (h) Echo addition.

show that this method is robust against common signal pro-cessing. Compared to the method of Himeur based on DWT-DCT and DWT-DST, our method ensures more robustnesswith an acceptable imperceptibility (SNR around 27 dB), mak-ing it suitable for copyright protection application. Moreover,a certain level of security is guaranteed by using two secretkeys in the insertion and extraction process.

As future work, we will try to find the best water-mark insertion positions, which ensure a good robustness-imperceptibility tradeoff, using an optimization algorithm suchas genetic algorithm, Ant Colony Optimization or particleswarm optimisation.

REFERENCES

[1] F.A.P. Petitcolas, R.J. Anderson and M.G. Kuhn, ”Information hiding- asurvey”, Proceeedings of the IEEE, vol. 87, no. 7, pp. 1062-1087, 1999.

[2] S. Katzenbeisser, F.A.P. Petitcolas, Information Hiding Techniques forSteganography and Digital Watermarking, Artech, Boston, 2000.

57 © IT4OD 2014

Page 64: IT4OD 2014 Proceedings

[3] P. Basia, I. Pitas and N. Nicholaidis, ”Robust audio watermarking basedon the time domain”, IEEE Trans. Multimed, vol 3, no 2, 232-241, 2001.

[4] W-N. Lie, L-C. Chang, ”Robust and high-quality time-domain audiowatermarking based on low-frequency amplitude modification”, IEEETrans. Multimed, vol 8, no 1, 46-59, 2006.

[5] F. Abd, El-Samie, ”An efficient singular value decomposition algorithmfor digital audio watermarking”, Int. J. Speech. Technol., vol 12, no 1,27-45, 2009.

[6] P.K. Dhar, M.I. Khan, C.H. Kim and J.M. Kim, ”An Efficient AudioWatermarking Algorithm in Frequency Domain for Copyright Protec-tion”, Communications in Computer and Information Science, vol. 122,pp.104-113, 2010.

[7] D. Megias, J. Serra-Ruiz, M. Fallhpour, ”Efficient self-synchronisedblind audio watermarking system based on time domain and FFTamplitude modification”, Signal Process. vol 90, no 12, 3078-3092,2010.

[8] X. Wang, W. Qi, P. Niu, ”A new adaptive digital audio watermarkingbased on support vector regression”, IEEE T. Audio Speech, vol 15, no8, 2270-2277, 2007.

[9] L-K. Yeo, H-J. Kim, ”Modified patchwork algorithm: a novel audiowatermarking scheme”, IEEE Trans. Speech and Audio Processing, vol11, no 4, 381-386, 2003.

[10] R. Wang, D. Xu, J. Chen and C. Du ”Digital audio watermarkingalgorithm based on linear predictive coding in wavelet domain”, In 7thIEEE International conference on signal processing, vol 1, pp 2393-2396, 2004.

[11] S-T. Chen, G-D. Wu, H-N. Huang, ”Wavelet-domain audio watermark-ing scheme using optimisation-based quantization”, IET Signal Process.vol 4, no 6, 720-727, 2010.

[12] Y. Himeur, B. Boudraa and A. Khelalef, ”A Secure and High RobustAudio Watermarking System for Copyright Protection”, InternationalJournal of Computer Applications, vol. 53, no. 17, pp. 33-39, 2012.

[13] N. Chen and J. Zhu, ”A Robust Zero-Watermarking Algorithm forAudio”, EURASIP Journal on Advances in Signal Processing, pp. 1-7, 2008.

[14] X. Wang and H. Zhao, ”A Novel Synchronization Invariant AudioWatermarking Scheme Based on DWT and DCT”, IEEE Trans. SignalProcessing, vol. 54, no. 12, pp. 4835-4840, 2006.

[15] V. Bhat K, I. Sengupta and A. Das, ”Audio Watermarking Based onQuantization in Wavelet Domain”, ICISS, vol. 5352/2008, pp. 235-242,Springer 2008.

[16] J. Wang, R. Healy and J. Timoney, ”A Novel Audio Watermarking Algo-rithm Based On Reduced Singular Value Decomposition”, In IntelligentInformation Hiding and Multimedia Signal Processing (IIH-MSP) SixthInternational Conference, pp. 143-146,2010.

[17] H-T. Hu, H-H. Chou, C. Yu and L-Y. Hsu,”Incorporation of perceptu-ally adaptive QIM with singular value decomposition for blind audiowatermarking”, EURASIP Journal on Advances in Signal Processing,2014:12, 2014.

[18] N. Sriyingyong and K. Attakitmongco,”Wavelet based audio water-marking using adptive tabu search”, In 1st international symposium onwireless pervasive computing, pp. 1-5, 2006.

[19] P. Bao and X. Ma,”Image adaptive watermarking using wavelet domainsingular value decomposition”, IEEE Trans Circuits Syst Video Technol,vol.15, no. 1, pp. 96-102, 2005.

[20] E. Yavuz and Z. Telatar,”Improved SVD- DWT based digital imagewatermarking against watermark ambiguity”, In Proceedings of the ACMsymposium on applied computing, pp. 1051-1055, 2007.

[21] V. Bhat K, I. Sengupta and A. Das,”An audio watermarking schemeusing sigular value decompostion an dither modulation quantization”,Multimedia Tools Appl. doi:10.1007/s11042-010-0515-1, 2010.

[22] IFPI (International Federation of the Phonographic Industry) :http://www.ifpi.org.

58 © IT4OD 2014

Page 65: IT4OD 2014 Proceedings

La tolérance aux fautes à base d’agents pour les systèmes domotiques

Zaiter Meriem1,2

1 : Université L’arbi Ben M’hidi d’Oum El Bouaghi 2 : Laboratoire Lire, Université de Constantine 2

Algérie [email protected]

Hacini Salima et Boufaida Zizette

Laboratoire Lire, Université de Constantine 2

Algérie salimahacini, [email protected]

Résumé— Les systèmes distribués sont des systèmes constitués de plusieurs composants, chacun accomplissant une tâche afin de satisfaire un objectif individuel ou collectif. Afin d’offrir un confort et une disponibilité des services efficients pour des utilisateurs de plus en plus exigeants, les systèmes distribués sont devenus sophistiqués. Les systèmes domotiques qui visent essentiellement l’automatisation des tâches liées aux équipements d’une maison, représentent un exemple de cette catégorie de systèmes. Les composants constituant ces systèmes varient d’un contexte d’utilisation à un autre selon l’objectif des systèmes eux-mêmes. Par ailleurs, l’occurrence d’une faute dans un des constituants ou même dans l’environnement influe, à court ou à long terme, sur l’état de fonctionnement global du système. Ce problème est d’autant plus grave s’il s’agit d’un système qui, à titre d’exemple, permet de localiser une personne âgée et/ou dépendante dans son lieu de vie et de détecter tout signe de danger (situation anormale). Cet article s’attelle à répondre à la question : comment continuer de satisfaire les utilisateurs en dépit de la présence de faute? Autrement dit, comment assurer la fiabilité de fonctionnement de tels systèmes?

Mots-clés — détection de faute, faute, agent, tolérance aux fautes, système distribué, système domotique.

I. INTRODUCTION

Les systèmes domotiques sont des systèmes à base de composants dont le rôle est le contrôle de fonctionnement des équipements disponibles dans une habitation pour faciliter les tâches du quotidien tels que le système SLCA[1], et MASML [2]. Le fonctionnement de ces systèmes se base généralement sur la réalisation des scénarios. Chaque équipement fournit des services décrits par un ensemble d’opérations et émet des événements qui reflètent ses changements d’états. La domotique offre plusieurs avantages : (1) le contrôle de toute l’habitation par même un simple geste, (2) un bon confort d’utilisation (automatique ou semi-automatique), (3) une possibilité d’économie d’énergie par le contrôle de consommation d’éclairage ou de température ainsi que la possibilité de la télésurveillance de la maison et des personnes à domicile (tel que la télémédecine), etc. Malgré ces avantages, des problèmes peuvent contrer le bon fonctionnement de ces systèmes [3] tels que : (1) la non flexibilité lors de l’intégration des équipements de sous systèmes (par exemple le système d’éclairage avec le système de gestion d’énergie)… (2) gestion

précaire lors de l’automatisation des préférences des utilisateurs qui changent fréquemment... (3) le problème de sécurité engendré par une mauvaise manipulation du système (intentionnelle ou non) ce qui engendre un système global de fonctionnement non sûr.

Dans la littérature, la sûreté de fonctionnement est la propriété qui permet à ses utilisateurs de placer une confiance justifiée dans le service qui leur est délivré. Le service délivré par un système se substitue à son comportement tel que perçu par ses utilisateurs; un utilisateur est un autre système (humain ou physique) qui interagit avec le système considéré [4]. La sûreté d’un système peut être assurée [5, 6] par principalement: La prévention des fautes qui se base sur l’utilisation de

composants informatiques de très bonne qualité (très fiables).

La tolérance aux fautes qui signifie que le système continue de fonctionner même en présence d’une panne.

La tolérance aux fautes représente la capacité d’un système à remplir sa fonction en dépit des fautes [7]. Cette tolérance peut être garantie par la détection et le recouvrement des fautes. La détection peut être effectuée notamment par le contrôle de vraisemblance [5, 6], basé sur le matériel, le logiciel ou sur un code spécial de test périodique. Tandis que les mécanismes de recouvrement [8] peuvent se résumer par l’élimination des erreurs (via la reprise, la poursuite ou la compensation) ou bien l’empêchement de la faute (via le diagnostic, l’isolation, la reconfiguration ou la réinitialisation).

Actuellement, les systèmes domotiques n’offrent aucune possibilité de tolérances aux fautes spécifique au besoin réel de leurs utilisateurs particulièrement en cas de passage à l’échelle [9]. D’autre part, beaucoup de systèmes domotiques utilisent le concept d’agent pour diverses raisons [10] tels que la mobilité, l’adaptabilité, etc.

La technologie d’agent y est effectivement employée car un agent peut [11] : Offrir une bonne solution au passage à l’échelle, si on

incorpore un système domotique dans un système plus large. Etre flexible, réactif Migrer d’un composant à un autre Garder la trace du flux d’exécution

59 © IT4OD 2014

Page 66: IT4OD 2014 Proceedings

Communiquer avec un utilisateur, un composant ou d’autres agents (ce qui constitue un bon critère pour le passage à l’échelle).

Etre, selon les besoins, cloné ou tué, etc.

Nous utiliserons nous aussi les agents en exploitant : (1) quelques uns de ses avantages tels que le clonage ou la mobilité (2) la notion du contexte caractérisant un système domotique pour rassembler d’éventuelles fautes afin de présenter un système tolérant aux fautes basé sur les agents.

La suite de cet article est organisée en quatre sections. La section 2 est consacrée à la définition des fautes pouvant nuire au bon fonctionnement du système en exploitant les caractéristiques des systèmes domotiques et la notion de contexte. La section 3 présente les hypothèses et les algorithmes relatifs à notre mécanisme de tolérance aux fautes. La section 4 décrit l’étude de cas et les résultats préliminaires de notre expérimentation. Enfin, une conclusion et des perspectives achèvent cet article.

II. LES FAUTES DANS LES SYSTEMES DOMOTIQUES

Les environnements domotiques peuvent être liés à des contextes de natures différentes. Chaque contexte représente l’état d’un composant dans l’environnement. Ainsi, le système domotique peut être classé dans la catégorie des systèmes sensibles au contexte. Il existe une pléthore de définitions du contexte [12].

Table 1. Les différentes catégories de faute

De notre côté, nous avons proposé une définition en rapport avec la détection de fautes : « Le contexte est toute information interne ou externe, relative à une entité, exploitable et pouvant avoir un impact sur l’état futur de l’application. Ces informations peuvent dépendre d’une ou plusieurs entités. Ces dernières, peut importe leur nature (matérielle/logicielle/humaine), peuvent déclencher des

événements qui influent sur l’état global du système. A cet effet, l’occurrence d’une faute engendre certainement un disfonctionnement immédiat du système global» ;

Dans les systèmes domotiques, les fautes peuvent être malencontreusement introduites au cours de la conception et/ou de l’implémentation des composants du système global, et peuvent l’être aussi au cours de leur utilisation spécialement si les utilisateurs sont néophytes. Par conséquent, les fautes peuvent être dues à des fautes du logiciel (une déviation arbitraire par rapport au code,...), du matériel (arrêt de fonctionnement d’un composant ou ses constituants internes), à cause d’erreurs de transmission telles que l’omission d’envoi ou de réception de messages ou encore d’attaques malveillantes (à titre d’exemple, l’injection d’un code dans le système par un utilisateur malveillant peut causer une déviation du flux d’exécution normal). La Table1 présente une catégorisation de ces fautes..

III. LE DETAIL DE NOTRE PROPOSITION

La sûreté de fonctionnement de notre système est liée à l’assurance de la continuité de l’échange instauré entre les différentes entités du système. Cette continuité, notée sf(ei), est exprimée, dans cet article, en terme de sûreté de fonctionnement des composants (entités) constituant le contexte du système global; plus formellement, la sûreté (R) d’un système S est vue comme :

R (S)= sf (e1), sf (e2), sf (e3),.. sf(en) (1)

Afin d’assurer une bonne sûreté de fonctionnement, le système doit mettre en œuvre un mécanisme de contrôle faisant intervenir toutes les entités. Ainsi, ce système de contrôle est supporté par un ensemble d’Acls (Agents contrôleurs locaux) ainsi qu’un CG (Contrôleur Global) dont les rôles seront détaillés au niveau de cette section. Les différents contrôleurs sont représentés par des agents. L’architecture du système de contrôle qui s’occupe essentiellement de la détection et du recouvrement des fautes qui surviennent est présentée par la Figure 1.

Chaque entité ei offre un ensemble de services SO(ei) sous forme d’un quadruplet. Cet ensemble comporte la liste des services pouvant être fournis par l’entité (ei) :

SO(ei)=(s0,f(s0),c0 ,d0),(s1,f(s1),c1,d1),(s2,f(s2),c2,d2)… (2)

où f(si) représente l’ensemble des services gérés par le service « si», ci et di, dénotent respectivement le coût et la disponibilité du service i (« disponible » ou « occupé »). Ces deux paramètres sont utilisés comme un critère de choix du service miroir (Cf. Figure 5). Cet ensemble est envoyé au contrôleur global. De plus à chaque connexion d’une entité (ei) au système, deux tâches seront exécutées: ei lance sa requête en demandant un service. Dès qu’elle reçoit l’ensemble des réponses, ei définit l’ensemble des dépendances fonctionnelles D (ei) et les envoie au contrôleur global. La dépendance fonctionnelle D(ei) de l’entité ei est définie par le couple D(ei)=(ej,sk)… où sk représente le service offert par ej à ei.

60 © IT4OD 2014

Page 67: IT4OD 2014 Proceedings

Fig. 1. L’architecture du système de contrôle

Pour mener à bien notre mécanisme un ensemble de contraintes sont à respecter: 1) Dans le cas où l’entité n’est plus active ou qu’elle ait atteint

son but, les ressources qui lui ont été affectées seront libérées.

2) Les messages émis (respectivement reçus) doivent être numérotés selon un ordre croissant de leur arrivée (émission), ceci permet d’éviter le retraitement des requêtes si elles sont en cours d’acheminement ou de traitement (voir les instructions de l’événement 34 au niveau de la Figure 6)

3) Les messages émis doivent être doublement signés par l’entité et par son agent contrôleur local et ceci afin de contrôler le fonctionnement de l’agent, contrôleur local, lui-même qui sera tué et remplacé par un autre avec la valeur la plus récente de l’état d’exécution de l’entité (Cf. Table2).

4) En cas de détection d’un disfonctionnement de l’agent contrôleur global, son duplicata est activé automatiquement. Cette détection est accomplie par la sollicitation du duplicata, par les Acls qui exécutent un algorithme de vote pour confirmer ce disfonctionnement, et donc le système s’adapte automatiquement. Il est à noter que le duplicata possède la même vue, que l’ACG, du contexte du système global alors il est périodiquement mis à jour.

5) Dans le cas d’un disfonctionnement de l’entité supportant l’agent contrôleur global, ce dernier va se déplacer automatiquement vers une autre entité.

A. Le contrôleur global

Le contrôleur global est un agent qui assure un ensemble de fonctionnalités servant à la gestion de la détection de la faute, et à sa prise en charge. Pour ce faire, ce contrôleur doit prendre en compte un ensemble d’informations disposées dans une base de connaissances. Ainsi, la base de connaissances du contrôleur global comporte des informations relatives aux

entités du système telles que l’identité de l’entité notée ei, son état sous forme d’un ensemble de couples (ss, état) où chaque couple représente un service offert par l’entité et son état, une entrée à la table contenant aussi la description de la liste de services offerts par l’entité et l’ensemble de ses dépendances fonctionnelles ainsi que l’état d’exécution émis périodiquement par l’agent local de l’entité (Cf. Table2).

Table 2. Les informations caractérisant une entité au

niveau du CG

a) L’agent contrôleur global en tant que gestionnaire de détection de faute :

Le fonctionnement de l’agent contrôleur global est détaillé à travers un ensemble d’algorithmes. Certains d’entre eux servent à la gestion des événements circulant dans le système (Cf. Figure 2) tels que la notification de l’existence d’une faute au niveau de l’entité ei par son agent contrôleur local (Cf. instruction 10 de la Figure 2) ou bien par un autre agent contrôleur local (autre que son propre contrôleur) (Cf. instruction 15 de la Figure 2) et d’autre types d’événements…

Terminologie

nv_elt: signifie qu’une nouvelle entité est connectée au système global.

rechercher (E,S) permet de proposer un ensemble de services miroir (sm) à l’entité affectée par la panne.

charger_DC(ei): ajoute à la base de connaissances (Cf. Figure 2) une entrée contenant des informations sur l’entité (ei) (état (ei), D (ei)…).

Extract_état (ej,ss): cette fonction permet la récupération de l’état de service ss (ej) à partir de la base de connaissances (Cf. Table 2).

Rv (Cg, ej,ss): est une requête de vérification émise par l’agent contrôleur global à (ej) dans le but de tester son état.

A la réception de l’ensemble des dépendances fonctionnelles d’une entité donnée (ei) (Cf. instruction 9 de la Figure 2), l’agent contrôleur global exécute la procédure de mise à jour des disponibilités des services.

L’ensemble P représente l’ensemble des entités qui dépendent fonctionnellement du : service défectueux (ss) et ses fils (ss) (Cf. Table2).

Entité état Service offert Dépendance Etat d’exécution

e1 (s1,bon) (s2,bon)…

(s1, f(s1), c1, d1)… (e2,s4), … Ex1

: Événement interne : Evénement externe

Agent Contrôleur j

Entité (ej)

Agent Contrôleur m

Entité (em)

Agent Contrôleur k

Entité (ek)

Agent contrôleur global

Entité porteuse

Agent Contrôleur i

Entité (ei)

61 © IT4OD 2014

Page 68: IT4OD 2014 Proceedings

Fig. 2. Tâche du contrôleur global

Fig. 3. La fonction verif_état

L’ensemble P représente l’ensemble des entités qui dépend fonctionnellement du : service défectueux (ss) et ses fils (ss) (Cf. Table2).

b) L’Agent contrôleur global tolérant aux fautes

Dès la confirmation de la détection d’une faute, l’agent contrôleur global exécute les deux sous-tâches suivantes pour la prendre en charge: Déclare l’entité (ei) comme partiellement défectueuse au

service s, en exécutant l’algorithme de la Figure 4 qui signale la panne du service assuré par une entité aux entités qui lui sont dépendantes (Cf. instruction 11 de la Figure 2, instructions 12 et 13 de la Figure 3). L’algorithme de la prise en charge de la faute repose sur l’exploration de D(ei) et la description de la liste de services offerts ) (Cf. Table2) pour signaler la faute.

L’algorithme de prise en charge de la faute fait appel à la procédure de mise à jour de l’état du service en panne et de tous ses fils.

Fig. 4. Prise en charge de la faute

La seconde sous-tâche de l’agent contrôleur global (Cf. instruction 13 de la Figure 2; instruction 14 de la Figure 3) consiste à assurer la continuité du fonctionnement du système en exécutant l’algorithme présenté par la Figure 5 et qui permet de rechercher les services similaires. (se, ce, te) : correspond au service élu.

Fig. 5. La recherche des services similaires

B. Le contrôleur local L’idée de mettre en œuvre un contrôleur local repose sur celle de l’autotest qui permet un contrôle individuel de chaque entité. Ainsi chaque contrôleur local exécute un ensemble de tâches qui lui permet de vérifier le fonctionnement de l’entité qui lui est associée. Un contrôleur local (Acli) est donc un agent assurant les fonctionnalités suivantes :

récupérer les événements externes (les sollicitations) arrivant à l’entité (ei). Dans ce cas un événement externe peut être : (1) une simple requête d’une entité (ej) (Cf. instruction 5 de la Figure 6); (2) un feed-back négatif provenant d’une entité (ej) et résultant d’une éventuelle interaction passée avec

Fonction : prise en charge1 1 Entrée : (ei,ss) 2 Sortie : ensemble de paires P (entité e, service s) 3 Début 4 Pour j=1 jusqu’a NE faire \\ NE : est le nombre d’entités dans le système 5 Répéter 6 Dt(ej) D(ej)//est une variable temporaire pour le traitement 7 (en, sn)Extraire un élément de Dt(ej) 8 Si en=ei et sn ssU fils (ss) alors 9 Insérer P (ej, sn), 10 Mise à jour état (ei, ss) 11 Fin si 12 Jusqu'à Dt(ej)=Φ 13 Fin pour 14 Retourner (P) 15 Fin

Fonction : rechercher (E,S) 1. Entrée : paire ( ei, s) 2. Sortie : paire (entité, service) : 3. Début 4. tsoccupé// disponibilité du service 5. état epanne// état du service de la table 2 6. se s 7. ss se 8. cemax (c) 9. élu i 10. Pour j=1 jusqu’à NE faire 11. Si (ss=se)et (ts= "disponible ") et (cs<=ce) et état e= " bon" alors 12. (se, ce, te) (ss, cs, ts) 13. éluj 14. Fin si 15. (ss, cs, ts)Extraire service offert 16. état eEtat (ss) 17. Fin pour 18. Si état e= « panne »alors 19. Retourner (Φ , Φ ) 20. Sinon 21. Retourner (e élu, se) 22. Fin si 23. Fin

1 Entrée: événement 2 Début 3 Répéter 4 Selon le cas de (événement) faire : 5 nv_elt: 6 créer l’agent contrôleur Acli 7 charger_DC (ei) 8 D (ei) : 9 maj disponibilité (D (ei)) 10 alerte (Acli , ei, ss) : 11 P prise en charge1(ei,ss) 12 envoyer faute (ei, Cg, ss) à chaque entité de l’ensemble P 13 rechercher (E,S) pour chaque entité de l’ensemble P 14 envoyer Miroir (Cg, em, sm) à chaque entité de l’ensemble P 15 alerte (Acli ,ej,ss) OU bon_état(Aclj, ej,ss) : 16 verif_état (ej,ss) 17 alerte (Alci) : 18 Si vérifier_sig (Acli) alors 19 créer un nouveau agent Acli avec l’état EXi et tuer l’ancien 20 Fin si 21 jusqu’a (faux) 22Fin

1 Entrée : entité : ej, service ss 2 Sortie: état de ej

3 Début 4 état (ej,ss)Extract_état (ej,ss); 5 si (état (ej,ss) =panne) alors 6 envoyer faute (ej,Cg,ss) à Acli 7 sinon 8 envoyer Rv (Cg,ej,ss) à Aclj 9 si (Rep (ej,ss)) alors 10 envoyer bon_état (Cg, ej,ss) à Acli 11 sinon 12 P prise en charge1((ej,ss)) 13 envoyer faute (ej, Cg,ss) à chaque entité de l’ensemble P 14 rechercher (E,S) pour chaque entité de l’ensemble P 15 envoyer Miroir (Cg, em, sm) à chaque entité de P 16 Fin si 17 Fin si 18 Fin

62 © IT4OD 2014

Page 69: IT4OD 2014 Proceedings

l’entité (ei); (3) une interrogation sur l’état de service (ss) délivrée par l’entité (ei), ou bien une information de panne de (ss) délivrée par l’entité (ej) si (ei) dépend fonctionnellement de l’entité (ej) (cet événement est déclenché par l’agent contrôleur global) (Cf. instruction 10 de la Figure 6); signaler le disfonctionnement de l’entité (ei) dû à l’une des

deux éventualités suivantes: (1) un feed-back négatif dans le cas d’un résultat erroné (par exemple, une valeur retournée hors domaine de spécification) ou bien un signal de type « non-réponse » de (ei) (ce signal est déclenché par le Aclj de l’entité (ej)). (2) une non-réponse au test de contrôle périodique exécuté par l’agent contrôleur (Acli) lui-même, et donc le contrôleur peut signaler un disfonctionnement de (ei) (Cf. instruction 18, 20,… de la Figure 6); Générer un signal de type « non-réponse » de l’entité (ej)

si elle ne respecte pas sa promesse de réalisation d’un service. Garder la trace d’exécution afin de capturer l’état

d’exécution qui sera utilisé pour la reprise en cas de faute dans un service délivré (Cf. instruction 42 de la Figure 6).

Avant d’établir les algorithmes de fonctionnement de l’agent contrôleur, nous notons qu’un fonctionnement normal d’une entité consiste en un envoi de requête (RS(ei ,ej,ss)), une attente des réponses et une définition éventuelle des dépendances fonctionnelles (sauvegarder (RS(ei ,ej,ss)) ; attente (RP(ej,ss))) (Cf. instructions 7..9 de la Figure 6); mais cet agent (Acli) envoie une alerte (alerte (Acli, ej,ss)) si une entité ej a promis à ei de réaliser le service ss et elle n’a pas répondu, ou bien si cette dernière a renvoyé un résultat erroné. Chaque traitement d’événement est précédé par une vérification de signature et envoi d’une alerte (Alci) en cas de détection d’erreur.

Fig. 6. Algorithme de fonctionnement de l’agent contrôleur local

1. Entrée: événement; 2. Début 3. Répéter 4. Selon le cas de (événement) faire: 5. RS(ej ,ei,ss) et non (Verify_Rq (ej, ei,ss) 6. sauvegarder (RS(ei,ej,ss)) ; 7. envoyer df(ei,ss) à Alcj 8. Traiter (RS(ei,ej,ss)) ; 9. envoyer (RP(ei,ss)) ; 10. faute (ej ,Cg,ss) ou alerte (Alcj, ej,ss) : 11. si (Verify_Rq (ei, ej,ss)) alors 12. annuler (RS(ei,ej,ss)) 13. sinon 14. état (ej) panne 15. fin si 16. alerte (Alcj, ei,ss): 17. Si (état (ei,ss)= panne) Alors 18. envoyer alerte (Alci ,ei,ss) à Cg 19. envoyer alerte(Alci ,ei,ss) à Alcj 20. Sinon 21. Si ((verif_ état _ local (ei, ,ss , 0))=0) Alors 22. envoyer alerte(Alci ,ei,ss) à Cg 23. envoyer alerte(Alci ,ei,ss) à Alcj 24. Sinon 25. envoyer bon_état(Alci ,ei,ss) à Alcj 26. envoyer bon_état(Alci ,ei,ss) à Cg 27. Fin Si 28. Fin si

29. df(ej,ss): 30. mise à jour D(ei); 31. envoyer D(ei) à Cg 32. bon_état(Alcj , ej,ss) ET non RP(ej,ss): 33. envoyer RS2 (ei,ej,ss) à Alcj// le 2ièm envoi de la requête numéro par

le même numéro de la première 34. bon_état(Cg, ej,ss) ET non RP(ej,ss) et vérifier(RS2 (ei,ej,ss)): 35. Envoi RS(ei ,ej,ss) à Cg // utiliser le Cg comme une passerelle pour la

récupération du résultat 36. sauvegarder (RS(ei ,Cg,ss)) ; 37. attente (RP(Cg,ss)); 38. Miroir (Cg, em, sm) : 39. Envoi RS(ei ,em,sm) à Alcm 40. sauvegarder (RS(ei ,em,sm)) ; 41. attente (RP(em,sm) 42. Demander l’état de l’exécution courante à l’entité 43. bon_état(Alcj , ej,ss) : 44. attente RP(ej,ss) 45. non RP(Cg): 46. lancer le traitement de vérification du CG par le duplicata pour prendre

la décision 47. déclarer mode dégradé dans le système 48. RP(ej,ss) ou RP(Cg,ss): 49. Valider RP(ej,ss) 50. non RP(ej,ss) : 51. Envoyer alerte (Alci, ej,ss) à Cg 52. Envoyer alerte (Alci, ej,ss) à Aclj 53. vérifier_sig(cg) : 54. envoyer message « je suis vivant » à Cg

55. jusqu’a (faux) 56. Fin;

Terminologie

RS (ei, ej,ss): est une requête simple envoyée par ei vers ej en demandant le

service ss. Elle désigne un cas de fonctionnement normal.

RP((ei,ss) /Cg): indique que ei (ou Cg) a répondu à une requête.

Faute (ej, Cg,ss): indique une défaillance d’une entité ej (au niveau du service

ss) signalée par l’agent contrôleur global.

Rep (ei,ss): est une fonction booléenne. Elle représente la réponse ou non de ei

au test local lancé par l’agent contrôleur local Acli pour le service ss.

verif_ état _ locale (ei,ss, t): cette fonction représente le test local, a propos du

service ss, déclenché après une durée t. Elle retourne la valeur 0 si l’entité ei n’a

pas répondu, et 1 sinon.

Alerte (Acli , ei, ss): elle dénote la défaillance d’un service ss assuré par une

entité signalée par son contrôleur local Acli.

bon_état (Acli, ei,ss): c’est un événement envoyé indiquant que le service ss

assuré par ei est en bon état.

df(ej,ss): dénote une promesse de l’entité ej pour réaliser le service ss

(dépendance fonctionnelle en service ss).

Verify_Rq (ei, ej,ss): est une fonction qui vérifie si une requête envoyée par ei

est en cours d’accomplissement par ej ou non.

Sauvegarder (RS(ei ,ej,ss)) : permet d’enregistrer la requête (envoyée par(ei) et

à accomplir par (ej)

attente (RP(ej,ss)): c’est une instruction indiquant l’attente de réponse d’une

entité ej à la requête de (ei).

Miroir (Cg, em, sm) : c’est un événement émis par l’agent contrôleur global

indiquant le service miroir sm élu et l’identité de l’entité qui l’assure dans le but de

garantir la continuité du fonctionnement du système global. vérifier(RS2(ei,ej,ss)) est une fonction qui vérifie si une 2ème requête est envoyée

par ei à ej ou non

63 © IT4OD 2014

Page 70: IT4OD 2014 Proceedings

IV. EXPERIMENTATION

Le système domotique choisi pour l’expérimentation concerne la surveillance d’une personne malade, âgée et/ou dépendante dans son lieu de vie et permet de détecter tout signe de danger (situation anormale).

La domotique vise en effet à apporter des solutions techniques pour répondre aux besoins de confort, de sûreté, de sécurité (alarme) et de communication (commandes à distance, signaux visuels ou sonores, etc.) que l'on peut retrouver dans les maisons, les hôtels ou les lieux publics, etc. Les composants considérés par notre système sont un glycomètre, un défibrillateur automatisé externe pour l’analyse automatique du rythme cardiaque et la délivrance d’un choc électrique de défibrillation à la victime d'un arrêt cardiaque soudain, un tensiomètre électronique automatique de poignet, un climatiseur, un téléviseur, un four, un chauffage, un détecteur de feu, un téléphone portable, etc.

L’expérimentation se base sur des scénarios de problèmes qui seront simulés par l’injection de fautes et la vérification de leur détection. Dans les résultats obtenus et présentés par la figure 7, nous remarquons que les fautes ont un bon niveau de détection notamment celles du contrôleur local ou global ainsi que celles liées à l’utilisateur (matériel ou logiciel). Cependant, leur prise en charge est moins bonne car cette dernière dépend, d’une part, de la persistance de la faute ; spécifiquement les fautes permanentes (voir tableau 1) nécessitent une intervention humaine et d’autre part, du nombre des services miroirs existant dans le système.

Fig. 7. Une représentation graphique des résultats de détection et de prise en

charge

V. Conclusion

Notre réflexion se base sur l’utilisation des agents afin de contrôler le bon fonctionnement du système et d’offrir une bonne disponibilité des services cruciaux dans un système domotique de santé. Le comportement de ce système sensible au contexte dépend de la situation dans laquelle se trouvent ses composants, et un disfonctionnement de l’un des composants va certainement affecter le fonctionnement du système. La tolérance aux fautes permet de résoudre ce problème. Le mécanisme de tolérance aux fautes présenté dans cet article exploite, entre autres, la réplication, la

signature numérique ainsi que l’emploi des agents dont les avantages tels que le clonage ou la migration ne peuvent que le renforcer. Ainsi, des agents contrôleurs ont contribué à la détection et au recouvrement d’éventuelles fautes. Nous envisageons de tester le mécanisme proposé sur d’autres types de fautes notamment celles causées par l’environnement. Nous œuvrons aussi à la distribution de contrôle entre les agents locaux eux-mêmes. Ainsi chaque agent local aura la possibilité de mettre à jour l’état du service offert par l’entité défectueuse en cas de réception d’une information de panne. Par conséquent, après une certaine durée de temps chaque agent possèdera une vue partielle sur l’état du système et une vue globale par rapport au besoin de son entité, ce qui lui permet de construire dynamiquement sa propre communauté de communication.

REFERENCES

[1]. J. Y. Tigli, S. Lavirotte, G. Rey, V. Hourdin, D. Cheung-Foo-Wo, E. Callegari, and M. Riveill.WComp Middleware for Ubiquitous Computing : Aspects and Composite Event-based Web Services. Annals of Telecommunications, 64(3-4) :197_214, April 2009. [2]. C. L. Wu, C. F. Liao, and L. C. Fu. Service-oriented smart-home architecture based on OSGi and mobile-agent technology. IEEE Transactions on Systems, Man, and Cybernetics, Part C, 37(2) :193_205, 2007. [3]. Ratu l Mahajan-Sharad Agarwal Stefan Saroiu Colin Dixon A.J. Bernheim Brush, Bongshin Lee. Home Automation in the Wild: Challenges and Opportunities . In ACM Conference on Computer-Human Interaction, May 2011. [4]. J.-C. Laprie, J. Arlat, J.-P. Blanquart, A. Costes, Y. Crouzet, Y. Deswarte, J.-C. Fabre, H. Guillermain, M. Kaâniche, K. Kanoun, C. Mazet, D. Powell, C. Rabéjac et P. Thévenod, Guide de la sûreté de fonctionnement, 369p., 1995. [5]. Lamport, Leslie; Robert Shostak, Marshall Pease (July 1982). "The Byzantine Generals Problem". ACM Transactions on Programming Languages and Systems 4 (3): 382–401. Retrieved 2007. [6]. J.J. Horning, H.C. Lauer, P.M. Melliar-Smith, B. Randell, “A program structure for error detection and recovery”, Proceedings of the Conference on Operating Systems : Theoretical and Practical Aspects, IRIA, France, Springer-Verlag, Lecture Notes in Computer Science Vol.16, pp. 177-193, April 1974. [7]. Algidras Avizienis, Jean-Claude Laprie, Brian Randell Et Carl Landwehr, “Basic Concepts And Taxonomy Of Dependable And Scure Computing”, Ieee Transactions On Dependable And Secure Computing, Pp.1133, Jan-Mar 2004. [8]. Thomas Pareaud “adaptation en ligne de mécanismes de tolérance au fautes par une approche à composant ouverts. Université de Toulouse. Thèse de doctorat soutenue le 27 janvier 2009. [9]. Sajid Sohail, Tariq Javid “Robust Home Care Access Network” Master’s Thesis in Computer Systems Engineering, School of Information Science, Computer and Electrical Engineering Halmstad University, May 2009. [10]. F. Hamoui, C. Urtado, S. Vauttier, and M. Huchard. SAASHA : A self-adaptable agent system for home automation. In Proc of the 36th EUROMICRO Conference on Software Engineering and Advanced Applications, pages 227_230. IEEE Computer Society, September 2010. [11]. D. B. Lange and M. Oshima, “Seven Good Reasons for Mobile Agents”. Communications of the ACM, Vol. 42, No.3, March. 1999. [12]. Dey, A.k., Abowd G. D.: Towards a Better understanding of context and context- Awarness, At the CHI 2000 Workshop (2000)

64 © IT4OD 2014

Page 71: IT4OD 2014 Proceedings

1

Robust Multimodal Personal Identification System

Using Palmprint & Palm-vein Images

Othaila Chergui1, Abdallah Meraoumia2, Hakim Bendjenna1 and Salim Chitroub3

1University of Tebessa, Computer Science Department, Tebessa, Algeria,2Univ Ouargla, Fac. des nouvelles technologies de l’information et de la communication,

Lab. de Genie Electrique, Ouargla 30 000, Algeria3Signal and Image Processing Laboratory, Electronics and Computer Science Faculty, USTHB.

P.O. box 32, El Alia, Bab Ezzouar, 16111, Algiers, Algeria

Email: O [email protected], [email protected], [email protected], S [email protected]

Abstract—Automatic personal identification plays an impor-tant role in the security systems. Nowadays, physiological andbehavioral characteristics of a person popularly known as bio-metrics are increasingly used for security purposes. Recently,two novels hand-based biometric modalities, PaLmPrint (PLP)and PaLm-Vein (PLV), have attracted an increasing amount ofattention. In this paper, we propose a new scheme for improvingthe hand-based identification by combining the results of severalclassifiers and using the discrete CoNtourlet Transform (2D-CNT)method for feature extraction. In this study, the PLP (PLV) isdecomposed into several bands using 2D-CNT at one level. Sub-sequently, some of resulting bands are used to create the featurevector. Based on this feature vector, two sub-systems, for eachmodality, can be created. The first one is based directly on thisfeature vector. Whereas, the second sub-system, use the HiddenMarkov Model (HMM) in order to modeling the feature vector.Furthermore, the results of the different classifiers are combinedusing matching score level fusion strategy. The proposed system istested and evaluated using a database of 400 users. The obtainedexperimental results show the effectiveness and reliability of theproposed system, which brings high identification accuracy rate.

Index Terms—Biometrics, Identification, Palmprint, Palm-vein,Contourlet, HMM, Data fusion.

I. INTRODUCTION

RRELIABILITY in personal identification is key to the

stringent security requirements in both social and in-

dustrial environments. Over the last few years, the increas-

ing concern this security has promoted research in different

biometric technologies for human identity assessment [1]. As

result, a number of biometrics-based technologies have been

developed and hand-based person identification is one of these

technologies. This technology provides a reliable, low cost and

user-friendly viable solution for a many applications which

require reliable identification scheme [2].

The human hands contain a wide variety of biometric

modalities, like hand geometry, fingerprint, finger-knuckle-

print and PaLmPrint (PLP), that can be used by biometric

based identification systems. Among these modalities, PLPs

are relatively stable and the hand image from which they are

extracted can be acquired relatively easily. Therefore, in the

past few years, PLP has attracted an increasing amount of

attention and it has proven to be a unique biometric identifier

[3]. Thus, several studies for PLP-based personal identification

have focused on improving the performance of PLP images

captured under visible light. However, during the past few

years, some researchers have used more features from the

palm, such as the veins of the palm to improve the effect of

these systems. The veins of the palm mainly refer to the inner

vessel structures beneath the skin and the PaLm-Vein (PLV)

images can be collected using Near-InfraRed (NIR) light [4].

Obviously, the palm-veins are a low risk of falsification,

difficulty of duplicated and stability because they lie under the

skin. Moreover, the availability of a device that can acquire

PLP and PLV images simultaneously has promoted research to

constrict a multimodal system based on the fusion of PLP and

PLV modalities in order to overcome some of the limitations

imposed by unimodal systems like as insufficient accuracy

caused by noisy data acquisition in certain environments [5]. In

this work, we propose a new scheme for combining the results

of PLP and PLV modalities and using the discrete CoNtourlet

Transform (2D-CNT) method for feature extraction. In this

study, the PLP (PLV) is decomposed into several bands using

2D-CNT at one level. Subsequently, some of resulting bands

are used to create the feature vector. Based on this feature

vector, two sub-systems, for each modality, can be created.

The first one is based directly on this feature vector. Whereas,

the second sub-system, use the Hidden Markov Model (HMM)

in order to modeling the compressed feature vector (using

Principal component analysis (PCA)). Furthermore, the results

of the different sub-systems are combined using matching

score level fusion strategy.

The rest of the paper is organized as follows: The proposed

scheme of the multimodal biometric system is presented in

section 2. Section 3 gives a brief description of the region of

interest extraction. Feature extraction and modeling process

are discussed in section 4. A section 5 is devoted to describe

the matching and normalization method. The fusion technique

used for fusing the information is detailed in section 6. In

section 7, the experimental results, prior to fusion and after

fusion, are given and commented. Finally, the conclusions and

further works are presented in sections 8.

II. MULTIMODAL SYSTEM OVERVIEW

The proposed system is composed of two sub-systems

exchanging information in matching score level. Each sub-

system exploits different feature extraction technique. There

65 © IT4OD 2014

Page 72: IT4OD 2014 Proceedings

2

Fig. 1. Multiple algorithms based Palm-vein identification system.

Enrollment

Preprocessing

HMM-Modeling Score fusion Decision

Feature extraction Matching Normalization

Database

(a) (b) (c) (d) (e)

Fig. 2. Various steps in a typical region of interest extraction algorithm. (a) The filtered image, (b) The binary image, (c) The boundaries of the binaryimage and the points for locating the ROI pattern, (d) The central portion localization, and (e) The preprocessed result (ROI).

Gaussian filter Binary image Boundary Localization Extraction

are two phases in each unimodal system (for example Fig. 1

shows the block-diagram of the proposed unimodal identifi-

cation system based on the PLV modality): enrollment and

identification. Both phases, for the tow sub-systems, comprise

two sub-modules: preprocessing for PLV localization and ob-

servation vector for features extraction. However, enrollment

phase consists, for the second sub-system, of an additional

sub-module, HMM modeling, for modelled the observation

vector and then store their parameters in the system database.

Also, identification phase consists of additional sub-modules,

matching, normalization and fusion, for calculating dissimi-

larity and fused the two normalized matching scores. Finally,

based on this unique matching score, a final decision, whether

accept or reject a user, is made.

III. ROI EXTRACTION FROM PLP & PLV IMAGES

In order to localize the Region Of Interest (ROI) area,

the first step is to preprocess the palm images; we use the

preprocessing technique described in [6] to align both the

PLP & PLV images. In this technique, Gaussian smoothing

filter is used to smoothen the image before extracting the ROI

area. After that, Otsu’s thresholding is used for binarized the

hand. A boundary-following algorithm is used to extract the

hand contour. The tangent of the two stable points, F1 & F2,

on the hand contour (they are between the forefinger and the

middle finger and between the ring finger and the little finger)

are computed and used to align the PLP & PLV images. The

central part of the image, which is 128× 128, is then cropped

to represent the whole PLP & PLV images. Fig. 2 shows an

example of the PLV preprocessing steps.

IV. FEATURE EXTRACTION AND MODELING PROCESS

In our work, a new method for personal identification

using palm modality (PLP or PLV) is presented. Thus, from

each representation, we design two sub-systems which employ

different templates. In the first sub-system, the ROI sub-

image is typically analyzed using the 2D-CNT technique [7]

at one level. Then, the different decomposition bands are

concatenated in order to construct the feature vector V1 (with

size [τ, η], τ = η = 128). For the second sub-system, we

aim to reduce the vector V1 using PCA technique [8]. A new

feature vector, V2 (with size [τ, κ], κ ≪ η), also includes most

of the useful information from the original vector is obtain.

Often, the goal is to compress V1 in size and to discover

compact representations of their variability. After that, an

HMM model [9] (M) of the feature vector V2 is constructed.

As result, each palm modality is represented by V1 and Mfor respectively the first and second sub-system. Fig. 3 shows

the block diagram of the proposed feature extraction methods.

V. MATCHING AND NORMALIZATION METHOD

Matching process determines the similarity between two

given templates/models. The feature vector obtained by the

recognition should enter a comparison process. This com-

parison is made against user template/model, which will be

calculated depending on the comparison algorithm used. Thus,

during the identification process, the feature vector is extracted

using 2D-CNT method. Then the similarity score of the feature

vector given each template/model is computed. For the first

sub-system, the Sum of Absolute Differences (SAD) is used:

dS1 =

τ−1∑i=0

η−1∑j=0

|V1t(i, j)− V1r(i, j)| (1)

For the second sub-system, the Log-likelihood score is used:

dS2 = P (V2t|Mi) = (V2t,Mi) (2)

Therefore, the score vector is given by:

D = [dSi1 , d

Si2 , d

Si3 , d

Si4 · · · dSi

N ] \ i ∈ 1, 2 (3)

where N represents the size of the system database.

66 © IT4OD 2014

Page 73: IT4OD 2014 Proceedings

3

Fig. 3. Block diagram of the proposed feature extraction methods.

2D-CNT Concatenation PCA HMM

The matching scores output by the various sub-systems

are heterogeneous; score normalization is needed to transform

these scores into a common domain, prior to combining them.

Thus, a Min-Max normalization scheme was employed to

transform the scores computed into similarity scores in the

same range. Thus,

D = α− β

[ D −min(D)

max(D)−min(D)

](4)

where D represent the normalized vector and the two parame-

ters (α,β) are equal to (1,1) and (0,-1) for respectively the first

and second sub-system. However, these scores are compared,

and the highest score is selected. Therefore, the best matching

score is Do and its equal to max(D).

VI. FUSION TECHNIQUE

Multimodal biometric fusion method is a novel solution

to solve the limitations imposed by unimodal systems. Re-

cently, multimodal biometric fusion techniques have attracted

increasing attention and interest among researchers, in the

hope that the supplementary information between different

biometrics might improve the identification process [10]. The

matching score level fusion is the most common approach

used due to the ease in combining the scores generated by

different sub-systems. Thus, during the system design we

experiment four different fusion rules: sum-score (SUM), min-

score (MIN), max-score (MAX), mul-score (MUL) and sum-

weighting-score (WHT).

VII. EXPERIMENTAL RESULTS

A. Experimental database

We experiment our method on the multispectral palmprint

database from the Hong Kong polytechnic university (PolyU)

[11]. The database contains images captured with visible and

infrared light. Multispectral palmprint images were collected

from 250 volunteers, including 195 males and 55 females.

The age distribution is from 20 to 60 years old. It has a

total of 6000 images obtained from about 500 different palms.

These samples were collected in two separate sessions. In each

session, the subject was asked to provide 6 images for each

palm. Therefore, 24 images of each illumination from 2 palms

were collected from each subject. The average time interval

between the first and the second sessions was about 9 days.

B. Unimodal systems test results

In order to obtain the performance characteristics, the

feature vector of unknown PLP (or PLV) is presented to

the system and the system will try to match this modality

with all stored templates (or models) in the database. In our

experiment, three images of each palm were randomly selected

for enrollment and the other (nine) were taken as the test

set. Thus, there are totally 3600 genuine comparisons and

718200 impostor comparisons are generated. The goal of this

experiment was to evaluate the system performance when we

using information from each modalities (PLP and PLV). In

addition, for the second sub-system (HMM based system) and

in order to find the best parameters of the ergodic HMM

model, we choose empirically the number of Gaussian in the

Gaussian Mixture Model (GMM) equal to 1 and a number

of states of the HMM equal to 4. After Appling the PCA

technique and in order to select the best number of PCs vectors

for V2, we conducted several experiments to comparing all

the Genuine Acceptance Rate (GAR) for several set of PCs

(several V2) and finding the set that gives the best identification

rate. Thus, only 16 PCs vectors for the both modality (PLP

and PLV) are enough to achieve good representation.

1) PLP based system: This section describes the results of

the proposed methods in the case of using PLP modality. Thus,

in the case of open set identification scenario, the effectively of

the vector based feature representation in comparison with the

model based feature representation can be shown in Fig. 4.(a),where the Receiver Operating Characteristic (ROC) curves

(False Rejected Rate (FRR) against False Accept Rate (FAR))

and Equal Error Rate (EER) obtained from experimental

results are illustrated. From this figure, we were able to

conclude that the HMM based feature representation (second

sub-system) achieved the best performance, it can achieve an

EER equal to 0.493 % at a threshold To = 0.7973. Very

poor results are obtained when using vector based feature

representation (first sub-system), in this case the system work

with an EER equal to 5.585 % at a threshold To = 0.8743.

In the case of closed set identification, the result is pre-

sented as a Rank of Perfect Recognition (RPR) and Rank-One

Recognition (ROR) in Table 1, which presents the experiments

results, obtained for the two feature extraction methods in the

case of open and closed set identification system. The best

result of ROR is given as 97.083 % with lowest RPR of 345

in the case of the HMM (model based feature representation).

The system can operate at a ROR of 84.333 % with RPR

= 389 in the case of vector based feature representation. It

is interesting to note that, the processing time of the second

sub-system is very lower than the first sub-system.

2) PLV based system: We have also performed the openset identification performance in the case of PLV modality by

applying the two feature extraction methods and drawing the

ROC curves as shown in Fig. 4.(b). From this figure, it is

clear that our identification system achieves the best EER in

67 © IT4OD 2014

Page 74: IT4OD 2014 Proceedings

4

(a) (b) (c)

Fig. 4. Performance of unimodal identification systems. (a) ROC curves by different methods for PLP modality, (b) ROC curves by different methods forPLV modality and (c) ROC curves by different modalities.

TABLE 1 : UNIMODAL IDENTIFICATION SYSTEMS TEST RESULTS

METHODS

OPEN SET IDENTIFICATION CLOSED SET IDENTIFICATION

Sub-system 1 (Vector V1) Sub-system 2 (Model M) Sub-system 1 (Vector V1) Sub-system 2 (Model M)

To EER To EER ROR RPR ROR RPR

PLP 0.8743 5.585 0.7973 0.493 84.333 389 97.083 345

PLV 0.8637 0.247 0.7780 0.611 98.361 312 97.056 375

the case of vector based feature representation. However, it

can operate at EER = 0.247 % at the threshold To = 0.8637.

Also, we can observe that HMM based feature representation

can provide a similar accuracy (EER equal to 0.611 % at

To equal to 0.7780). In other hand, for the evaluation of the

system performance in the case of closed set identification

scenario, the test results are shown in Table 1 (second line).

From these obtained experiments results, it can be seen that

always the vector based feature representation offers better

results in terms of the ROR (98.361 % and a lowest RPR =

312). Finally, we plot the ROC curves (GAR against FAR), in

Fig. 4.(c), for the two best identification systems. It can safely

be see the benefits of using the PLV modality. Compared with

other approaches in the literature our system achieves better

identification results especially in the open set identification

case. A very lower error (EER = 0.247 %) for a database

size equal to 400 users proves the superiority of our proposed

feature extraction methods.

C. Multimodal systems test results

Our work is based on two modalities and two feature

extraction methods, for that several multimodal systems can

be found. Therefore, we considered only three different cases:

multi-biometric system (fusion of PLP and PLV), multi-algorithmic system (for each modality the fusion of the two

sub-systems is performed) and hybrid system (fusion of the

two multi-algorithmic systems based on PLP and PLV). These

cases were tested to find the case that optimizes the identifi-

cation system accuracy. The fusion is done at the matching

score level by using different rules.

1) multi-biometric systems: The objective of this section is

to investigate the integration of the different modalities (PLP

and PLV) in order to improve the system performance. In

our system, different fusion rules, for both feature extraction

methods, were tested to find the rule that optimizes the system

accuracy. Thus, to find the better of the all fusion rules, with

the lowest EER, Table 2 was generated. In the case of openset identification scenario, the Table shows that the SUM rule

with the model based feature representation (M) offers better

results in terms of the EER. Thus, we have a minimum EER

equal to 0.167 % at the threshold To = 0.7825. It is clear that

the MUL rule with the vector based feature representation (V1)

also improves the result (0.202 % with To = 0.9848).

We have also performed the closed set identification sce-

nario by applying all fusion rules on the matching scores

obtained from the different PLP and PLV based systems in

the two cases V1 and M and calculated the ROR and RPR.

These results (see Table 2) show that generally by combining

the two systems, the performance is improved in both ROR and

RPR cases. Also, WHT fusion rule and model based feature

representation (M) performs better than the other cases and

improves the original performance. Thus, the best system can

operate with ROR equal to 99.056 % and RPR = 311.

2) Multi-algorithmic systems: In this experiment, the

matching is carried out in terms of a set of SAD scores, for

the V1 based system, and their log-likelihood scores for the

M based system. Thus, our goal is to matching the input

modality (PLP or PLV) against every registered identity to

choose the one which gives the best scores. For that, we

have developed a prototype PLP (PLV) identification system

utilizing multiple algorithmic to boost the system performance.

It is based on combining the two feature extraction methods

for the purpose of deciding a PLP (PLV) match. In the multi-

algorithmic system, a user is registered with the system using

68 © IT4OD 2014

Page 75: IT4OD 2014 Proceedings

5

TABLE 2 : MULTIMODAL IDENTIFICATION SYSTEMS TEST RESULTS (PLP + PLV)

FUSION RULES

OPEN SET IDENTIFICATION CLOSED SET IDENTIFICATION

Vector V1 Model M Vector V1 Model MTo EER To EER ROR RPR ROR RPR

SUM 0.8512 0.326 0.7825 0.167 97.694 122 99.000 299

WHT 0.8632 0.215 0.7836 0.172 98.500 302 99.056 311

MUL 0.9848 0.202 0.6296 0.219 90.472 109 99.000 303

MAX 0.8061 0.964 0.8446 0.237 96.917 335 96.833 269

MIN 0.9491 0.306 0.7414 0.361 90.472 90 98.611 352

TABLE 3 : MULTIMODAL IDENTIFICATION SYSTEMS TEST RESULTS (V1 + M)

FUSION RULES

OPEN SET IDENTIFICATION CLOSED SET IDENTIFICATION

PLP PLV PLP PLV

To EER To EER ROR RPR ROR RPR

SUM 0.8292 0.306 0.7738 0.167 97.917 321 99.444 176

WHT 0.7989 0.398 0.8172 0.122 97.472 330 99.444 198

MUL 0.7283 0.361 0.6552 0.178 97.833 285 99.417 243

MAX 0.9407 0.417 0.8876 0.111 89.695 358 97.861 256

MIN 0.7845 0.750 0.7439 0.361 96.972 329 99.056 355

the different algorithms (V1 and M) employed, before they can

be identified. During identification, the features are extracted

using the two methods and the matching is carried out with

these extracted features against the reference database. The

best scores are chosen in both sub-systems (SAD and log-

likelihood), separately. However, the two best scores are fused

using one of five fusion rules described above. Finally, this

final score is used for decision making to accept or reject

the person. The open/closed set identification test, reported

in Table 3, is aimed to shows the advantage of using multi-

algorithmic system, in this table we report the results of the

two modalities (PLP and PLV). First, the PLP modality is

examined and the open set identification test, reported in

Table 3, shows that the SUM rule offers better results with

a lower EER equal to 0.306 % at a To = 0.8292. In the case

of closed set identification system, always SUM rule offers

better results than others fusion rules. It can provide a ROR

equal to 97.917 % and a RPR = 321. Therefore, the PLM

based multi-algorithmic system can achieve higher accuracy

compared with a PLP based unimodal system.

Second, we report the experiments where we have using

the PLV modality (Table 3). This table shows that the MAX

rule offers better results in terms of EER with 0.111 % at

To = 0.8876 for the open set identification case. The other

fusion rules, SUM, WHT, MUL and MIN, done 0.167 %,

0.122 %, 0.178 % and 0.361 %, respectively. Finally, the

closed set identification results (Table 3) shown that, SUM

rule give the best identification rate with ROR equal to 99.444

% with RPR = 176. The WHT rule gives the same ROR

but produce a higher RPR. However, this multi-algorithmic

scheme of identification improved the identification accuracy

considerably.

3) Hybrid systems: In the previous subsections information

integration involved looking for complementary information

present in a single biometric trait, PLP or PLV, or in a single

feature extraction method, V1 or M. However, to enhance the

performance of such identification system, the two best multi-

algorithmic systems (PLP based on V1 & M and PLV based

on V1 & M) are fused. To find the better of the fusion rules

an experimental result at the EER point is shown in Table

4 (performance of the open/closed set identification system).

The open set identification test results show that SUM, WHT

and MUL rules based fusion scheme get the best performance

with a minimum EER equal to 0.083 % at the threshold To

equal to 0.8225, 0.8139 and 0.7416 for respectively SUM,

WHT and MUL rules. The MAX rule give an EER equal to

0.129 % (To = 0.9859). Finally, MIN rule provide an EER

(near to the MAX rule) equal two 0.1345 % (To = 0.7915).

Compared with other existing multimodal based identification

systems, the proposed identification system has achieves better

results expressed in terms of the EER.

In the case of closed set identification, always, SUM rule

based fusion has the best performance. Thus, the best result

of ROR is given as 98.500 % with lowest rank of 132. Also,

WHT and MUL rule give a same ROR but with a RPR equal to

150 and 182. A similar result is given by the MIN rule, ROR

= 99.389 % with RPR = 288. Finally, MAX rule provide the

poor result (ROR = 90.250 % and RPR = 110). From these

results, the performance of the closed set identification system

is significantly improved by using the fusion.

4) Comparative study: Near-infrared image can provide

more information than just color, and improves the accuracy of

the color. Thus, the near-infrared and visible image fusion has

been successfully used for visualization purposes. In general,

the information in the near-infrared (PLP) and visible image

(PLV)is independent and complimentary. According to some

specific fusion schemes, these images are fused in order to

construct a more effective biometric system. In order to choose

the best multimodal identification system, we have developed

a comparative study between the different systems. Thus, for

this comparison, a graphical relationship can be established

(see Fig. 5.(a)). This figure summarizes the results in terms

of the ROC curves. We can observe that, firstly, always the

multimodal systems give a lower error and it is able to be

69 © IT4OD 2014

Page 76: IT4OD 2014 Proceedings

6

(a) (b) (c)

Fig. 5. Performance of multimodal identification systems. (a) ROC curves by multimodal systems, (b) ROC curves for the best system (Hybrid) and (c)CMC curves for the best system (Hybrid).

TABLE 4 : MULTMODAL IDENTIFICATION SYSTEMS TEST RESULTS (PLP V1 + M + PLV V1 + M)

FUSION RULESOPEN SET IDENTIFICATION CLOSED SET IDENTIFICATION

To EER ROR RPR

SUM 0.8225 0.083 99.500 132

WHT 0.8139 0.083 99.500 150

MUL 0.7416 0.083 99.500 182

MAX 0.9859 0.129 90.250 110

MIN 0.7915 0.135 99.389 288

used in a several applications like access control, surveillance

systems and physical buildings. Second, hybrid system gives

a perfect performance for open set identification scenario.

This, system work with an EER equal to 0.083 % for a

database size equal to 400 users this reflects the number of

employees in medium sized companies. Finally, the ROC and

the Cumulative Match Curves (CMC) for the best system is

shown respectively in Fig. 5.(b) and Fig. 5.(c).

VIII. CONCLUSION AND FURTHER WORKS

This work describes the design and development of a

multimodal biometric personal identification system based

on features extracted from PLP and PLV. Furthermore, the

unimodal systems suffer from various problems affecting the

system performance. These problems are effectively handled

by multimodal systems. In this paper, two different sub-

systems derived from each modality (PLP and PLV) were

used. Fusion of the proposed sub-systems is performed at

the matching score level to generate a fused matching score

which is used for recognizing an image. Feature extraction

process use two methods (V1 and M). The experimental

results, obtained on a database of 400 users, shown very high

identification accuracy. They also demonstrate that combining

different system does significantly perform the accuracy of

the system. A comparative study that we have carried out

has shown that the performance of the hybrid system is very

considerable and promising. For further improvement, our

future work will project to use other palm modalities (3D

shape & multispectral and hyper spectral palmprint) and other

biometric modalities like hand geometry and finger-knuckle-

print as well as the use of other fusion level like feature

and decision levels. Also we will focus on the performance

evaluation in both phases (verification and identification) by

using a large size database.

REFERENCES

[1] Ajay Kumar and David Zhang, “Improving Biometric Authentication Per-formance From the User Quality”, IEEE transactions on instrumentationand measurement, vol. 59, no. 3, march 2010.

[2] Jinrong Cui, Yong Xu, “Three dimensional palmprint recognition usinglinear discriminant analysis method”, International Conference on Inno-vations in Bio-inspired Computing and Applications, pp.107-111, 2011.

[3] Abdallah Meraoumia, Salim Chitroub and Ahmed Bouridane, “Palmprintand Finger-Knuckle-Print for efficient person recognition based on Log-Gabor filter response”, International Journal Analog Integrated Circuitsand Signal Processing, Vol 69 (1), pp:17-27, 2011.

[4] Jinfeng Yang, Yihua Shi, Jinli Yang, “Personal identification basedon finger-vein features”, Computers in Human Behavior, Vol. 27,pp.15651570, 2011.

[5] Ashok Rao, Mohammad Imran, Raghavendra R, Hemantha Kumar G, “Multibiometrics: analysis and robustness of hand vein & palm print com-bination used for person verification”, International Journal of EmergingTrends in Engineering and Technology ,Vol. I, No. 1,pp 11-20, 2011.

[6] D. Zhang, Z. Guo, G. Lu, L. Zhang, and W. Zuo, “An online system ofmultispectral palmprint verification”,IEEE Trans. Instrum. Meas., vol. 59,no. 2, pp. 480490, Feb. 2010.

[7] E.R. Ardabili, K.Maghooli. E.Fatemizadeh, “Contourlet Features Extrac-tion and adaboost Classification for Palmprint Verification”, Journal ofAmerican Science, Vol 7(7), 2011.

[8] M.S. Bartlett, J.R.Movellan, and T.J. Sejnowski, “Face recognition by in-dependent component analysis”, IEEE Transactions on Neural Networks,Vol 13, N 6, pp. 1450-1464, 2002.

[9] Harun Uguz, Ahmet Arslan, Ibrahim Turkoglu, “A biomedical systembased on hidden Markov model for diagnosis of the heart valve diseases”,Pattern Recognition Letters 28, pp: 395-404, 2007.

[10] A. Meraoumia, S. Chitroub and A Bouridane, “Fusion of Finger-Knuckle-Print and Palmprint for an Efficient Multi-Biometric System ofPerson Recognition”, IEEE International Conference on Communications(ICC), Kyoto, japan, pp. 1-5, 2011.

[11] The Hong Kong Polytechnic University (PolyU)Multispectral Palmprint Database. Available at:http://www.comp.polyu.edu.hk/biometrics/MultispectralPalmprint/MSP.htm.

70 © IT4OD 2014

Page 77: IT4OD 2014 Proceedings

Core Points Detection for Touch Based and Touch-lessFingerprint Images

Salah Ahmed OTHMAN Laboratory of Signals and Images (LSI)

University of Science and Technology of Oran, Mohamed Boudiaf

Oran, Algeria [email protected]

BOUDGHENE STAMBOULI Tarik Laboratory of Signals and Images (LSI)

University of Science and Technology of Oran, Mohamed Boudiaf

Oran, Algeria [email protected]

Abstract—Singular points detection is most important task for fingerprint image classification operation. Two types of singular points called core and delta point are claimed to be enough to classify the fingerprints images. For touch-less fingerprint recognition system, fingerprint image has some challenging problems as low contrast between the ridges and the valleys pattern, non-uniform lighting, motion blurriness and defocus due to less depth of field of digital camera. All of these problems make detection of core point more difficult compared to images of touch based fingerprint system. In this work we developsimple method to detect core points of fingerprint image acquired bytouch-less system as well as touch based system depend on orientation consistency measure.

Keywords-fingerprint; core point; touch-less fingerprint; orientation consistency.

I. INTRODUCTION Fingerprints are most widely used human characteristics for people identification. A fingerprint consists of ridges and valleys and each individual has fingerprint which is different from others. An Automatic Fingerprint Identification Systems (AFIS) are used to identify individual depend on the pattern of fingerprint. The AFIS can be touch-based fingerprint system or touch-less fingerprint system and the difference between them is in the sense that the touch-less fingerprint system uses digital camera to acquire the fingerprint image where the touch-based fingerprint system uses live-acquisition techniques. T he AFIS available today are in general touch-based fingerprintsystems but these systems suffer in many problems such as contamination which accurse because the fingerprintplacing of different people over the same interface. This produces a low quality fingerprint image. Another problem is due to contact pressure which creates physical distortions. In general the durability of touch-based fingerprint system is weakened under the pressure of use [1]. For overcoming these problems researchers started to develop touch-less fingerprint systems; They use digital camera in which fingers are not in contact with the sensor and the fingerprint images acquired are distortion free[2].While there are strong advantages of using digital camera, there are drawbacks points. Digital camera images cannot easily be processed due to color content and poor contrast between ridges and valleys in the finger tip. The depth field of camera is small, thus some parts of fingerprint arein the focusand

other out of focus. Unfortunately, there are no much works on the usage of touch-less fingerprint systems; These worksmainly focused on the ridge structureextraction phases [3],[4].and comparison between touch based fingerprint system and touch-less fingerprint system [5].Usually fingerprint includes two types of features at local level that is minutiae (ridges ending and ridges bifurcations) and at global level that aresingular points ,core and delta,(see fig 1). The singular points can be viewed as the points where the orientation field is discontinuous. Core points are the points where the innermost ridge loops are at their steepest. Delta points are the points where three patterns deviate.Singular points change form image to other depending on the type/class of the fingerprint. For an instance, arch type fingerprint, delta point is absent, while there are other type like whorl, that contain more than one core or delta points. Once detected, singular points can be used to classify fingerprints in order to reduce the search space in the recognition. Numerous studies are being proposed in the literature for singular point detection. Karuet.al[7].used variations of Poincare index for singular point detection. Bazen and Gerez [8] used directional field with Poincare index to detect singular points. Poincare method is reliable for good images but gives spurious singular points in noisy images Zheng et al. [9] used curvature-based method to detect singular points. Geevar et al[6] used orientation consistency estimation of square gradient image to detect singular points of fingerprint

(a) (b) Fig1. (a) Touch based fingerprint image. (b) Touch-less fingerprint image captured by webcam. Core point is indicated by circle and the delta points are indicated by triangle.

71 © IT4OD 2014

Page 78: IT4OD 2014 Proceedings

images.orientationconsistency estimation is defined as how well orientations over a neighborhood are consistent with the dominant orientation. Geevar et al[6] considered the core and delta points as a region in fingerprint where ridge orientation have local minimum orientation consistency.While the core points block (center of image) contains the most of ridges characteristics (ridges ending and ridges bifurcation) and low cost camera is used that offers relatively highresolution(640 x 480) compared with touch-based fingerprint sensor but with small depth; that makes delta points don’t appear very well. We propose the orientation consistency estimation method to detect the core points of touch-less and touch basedfingerprint system image.For touch-less fingerprint system simple webcam (Intex IT-308WC) is used and three conditions before acquisition must be checked:

• The focus of the lenses of webcam must be fixed according to distance;

• Fingerprint must be vertical in image that allow to give unique orientation of fingertip;

• Illumination of webcam and the surrounding environment must be unique.

The rest of the paperis organized as follows. Section 2 gives the normalization and segmentation of fingerprint image. Section 3 studies the ridges orientation estimation and orientation consistency measure. Section 4gives the steps of core point detection. Section 5 gives the experimental results. And conclusions are given in section 6.

II. NORMALIZATION AND SEGMENTATION

A. Normalization Normalization is the first preprocessing operation; it is done to minimize the non-uniform lighting problem. The main purpose of normalization is to reduce the variations in grayscale level values along ridges and valleys; which facilitates the subsequent processing steps.An input fingerprint image is normalized so that it h as a pre-specified mean and variance.Normalization is done in grayscale level. Touch based system gives fingerprint image in grayscale level so we can directly normalize the fingerprint image. For fingerprint image captured by touch-less fingerprint system conversion from RGB to grayscale level is done. The grayscale image is then given as an input to the normalization block where the image can be normalized. Let I(i , j) denote the gray-level value at pixel (i , j), M and V denote the mean and variance of I, respectively, and N(i , j) denote the normalized gray-level value at pixel (i , j) .The normalized image is defined as follows:

𝑁𝑁(𝑖𝑖, 𝑗𝑗) =

⎩⎨

⎧𝑀𝑀0 + (𝑉𝑉0 .𝐼𝐼(𝑖𝑖 ,𝑗𝑗 )−𝑀𝑀𝑖𝑖)2

𝑉𝑉, 𝑖𝑖𝑖𝑖 𝐼𝐼(𝑖𝑖, 𝑗𝑗) > 𝑀𝑀

𝑀𝑀0 − (𝑉𝑉0 .𝐼𝐼(𝑖𝑖 ,𝑗𝑗 )−𝑀𝑀𝑖𝑖)2

𝑉𝑉, 𝑜𝑜𝑜𝑜ℎ𝑒𝑒𝑒𝑒𝑒𝑒𝑖𝑖𝑒𝑒𝑒𝑒,

(1)

Where M0 and V0are the desired mean and variance values respectively. Normalization is a pixel-wise operation; it does not change the clarity of the ridge and valley structures.

B. Segmentation

In parallel with the normalization process fingerprint segmentation is also going on. Segmentation is the process of separating the foreground regions in the image from the background regions. The foreground regions correspond to the clear fingerprint area containing the ridges and valleys, which is the RegionOfInterest (ROI). Segmentation step is important in determining the accuracy of orientation, since the noises in the background image may give false orientation and lead to false detection of core points.In this work, segmentation for image captured by touch based fingerprint system is done by binarizing the image with an adaptive threshold value and morphological operators. Sincethe segmentation of image captured by touch-lessfingerprint system is done by using skin color detection, with morphological filters, such as the ho les filling operator and the erosion operator.First image is converted from RGB color space to YCbCr color space. In this color space skin is presented by a particular portion of the space [11]. Segmentation of skin color can be limited to a segmentation of the chrominance components Cb and Cr, while segmentation was processed by using an upper and lower bound for each channel after regularization has been applied using two simple morphological filters: first the larger connected object (the fingertip) is selected and the holes inside it are filled, then, all the remaining smaller objects are removed. The final step is an erosion operation performed by using a structured element (asquare of 1/40 of the image width). This last step is required to unselect the borders of the fingertip where typically the ridges are not correctly acquired (see fig 2).

Fig2. Fingertip skin color based segmentation (two first columns).adaptive threshold (third column).The input images (top) andthe output images (bottom).

72 © IT4OD 2014

Page 79: IT4OD 2014 Proceedings

III. RIDGE ORIENTATION ESTIMATION AND ORIENTAION CONSISTENCY MEASURE

A. Ridge orientation estimation The ridges orientation is then estimated using the least square method that averages the squared gradients proposed by Jain et.al.[10] This method estimates the orientation of each block rather than pixel basis. The steps for calculating the orientation at pixel (𝑖𝑖, 𝑗𝑗) for touch based and touch-less fingerprint imagesare as follows:

1. Divide the segmented image into non-overlapping block size W x W and center it at pixel(i, j). The size of w should not be big to overlap different ridges and not too small to miss the ridge details.

2. For each pixel(i, j) compute the gradients ∂x(i, j) and ∂y (i, j) which are gradient magnitudes along x (horizontal) and y (vertical) directions. Two sobel filters are used for this.

3. Compute the local orientation of pixel (i, j) using the following equation

Gxx = ∂x

2

(u,v)∈W

(u, v) (2)

Gyy = ∂y

2

(u,v)∈W

(u, v) (3)

Gxy = ∂x (u, v)∂y (u, v)

(u,v)∈W

(4)

θ(i, j) =12

tan−1 2Gxy

Gxx − Gyy , (5)

whereθ(i, j) is the least square estimate of the local orientation at the block centered at pixel (i, j).

4. Due to the presence of noise, corrupted ridge and valley structures, minutiae etc. in the input image, the estimated local ridge orientation, θ(i, j) , may not always be correct. A low-pass filter is hence used to modify the incorrect local ridge orientation, to apply a low pass filter the orientation image must be converted to a continues vector field by:

∅𝑥𝑥(𝑖𝑖, 𝑗𝑗) = cos2𝜃𝜃(𝑖𝑖, 𝑗𝑗) , (6)

∅𝑦𝑦(𝑖𝑖, 𝑗𝑗) = sin2𝜃𝜃(𝑖𝑖, 𝑗𝑗), (7) where∅x and ∅y are the x and y components of the vector field, respectively. After the vector field has been computed, Gaussian smoothing is performed as follows:

∅x′ = G(u, v)∅x

(u,v)∈w

(i − uw, j − vw), (8)

∅y′ = G(u, v)∅y

(u,v)∈w

(i − uw, j − vw), (9)

where G is a Gaussian low-pass filter of size 𝑒𝑒 × 𝑒𝑒.

5. Compute the locale ridge orientation at pixel (i, j) using :

𝑂𝑂(𝑖𝑖, 𝑗𝑗) =12𝑜𝑜𝑡𝑡𝑡𝑡−1 ∅𝑦𝑦

′ (𝑖𝑖, 𝑗𝑗)∅𝑥𝑥′ (𝑖𝑖, 𝑗𝑗)

. (10)

B. Orientation Consistency Estimation measure:

After finding the ridges orientation map (see Fig 3), next step is to calculate the orientation consistency. Orientation consistency of the intensity gradient image can be used to accurately locate the singular points. In intensity gradient vector image, G(i, j) is estimated by differentiation from input imagef(i, j).

G(i, j) = G𝑧𝑧(i, j)ejθz (i,j) (11)

whereGz(i, j) is the gradient amplitude and is defined as

Gi(i, j) = Gx2 + Gy

2 (12)

where Gx ,GY are gradients of horizontal, vertical directions and θ represents the orientation and are computed by

Gx(i, j) =∂f(i, j)∂i

, Gy (i, j) =∂f(i, j)∂j

θ(i, j) = tan−1G yG x (13)

Fig3. Touch-less and touch based fingerprint images with its orientation map

73 © IT4OD 2014

Page 80: IT4OD 2014 Proceedings

Our propose of core points as a region in fingerprint where ridge orientations have local minimum orientation consistency.Many methods have been proposed in the literature as coherence, reliability, and consistency. The coherence and reliability of the square gradient is defined as a measure of how well the orientations over a neighborhood are pointing in the same direction.Since we are only interested in core point detection for this work, and for more accurate measurement, we use the squared gradient image with orientation image for calculating the orientation consistency[12]. Orientation consistency (CE) is defined as how well orientations over a neighborhood areconsistent with the dominant orientation and can be expressed as

CE =(∑ Gi(i, j)cos2O(i, j))2 + (∑ Gi(i, j)sin2O(i, j))2

NN

∑ Gi(i, j)N

(14)

whereGi is squared gradient image computed using equ (12) and 𝑁𝑁 is a window of size N x N in a smoothed orientation 0(i, j).If all the orientations in N are in the same direction then CE will be high (CE = 1), while if the orientations are all in different directions then CE will be very low ( CE = 0). Thus, the value of orientation consistency measure will range from 0 to 1.Then a value of CE which is less than a threshold Tc can be chosen to accurately locate the core points in the input image. It would be better, if it is in the range0.1 < 𝑇𝑇𝑇𝑇 < 0.5.

IV. CORE POINT DETECTION The proposed core points detection in a fingerprint image has the following processing steps:

1) Normalization of input image by using equ(1), the main propose of normalization is to reduce the variation in gray-scale level;

2) In parallel with normalization, fingerprint segmentation is also going on to separate the background image from the foreground, that’s mean to obtain the binary mask of fingertip; we use in this work skin color detection methodwith two morphological filters for webcam fingerprint images and adaptive threshold value with morphological operators for touch based fingerprint images.

3) Once obtained the binary mask, it is used to remove the normalized imageforeground then the ridges orientation estimation is going on by usingequs(2 – 10).

4) From orientation image equ(10) and square gradient image equ(12) compute the orientation consistency

usingequ(14),by taking each block of N × N neighborhood size. The value of CE will be in the range of 0 to 1. Search within fingertip for block(s) with minimum local consistency (see Fig 4).

5) Find blocks with minimum local consistency by 𝐶𝐶𝐶𝐶 < 𝑇𝑇𝐶𝐶 . multiple blocks will be detected; they will be core point, detla point or spurious point. Localization of core points is done by scanning the threshold image using a window of sizeN × N. For distinguish core point from delta point and spurious points the coordinates of fingertip are used, the values of minimum locale consistency that will be nearthe center of fingertip are selected as core points.

V. EXPERIMENTAL RESULTS

In this work, we have used window of 11x11 and 5x5 for calculation of the orientation field from touch-less fingerprint image and touch based fingerprint image respectively and window 5x5 and 3x3 for finding the orientation consistency measure field. The proposed core point detection method has been tested with:

• First: a sample set of touch based fingerprint images taken form Neurotechnologija web site [13] named Verifinger_ Sample_ DB. This database contains 360 different images of 45 individuals.120 sample images have been taken for testing including 9 arch type fingerprints.

• Second: a sample set of touch-less fingerprint images acquired by simple webcam (Intex IT-308WC) for 20 persons and 6 different impression of the same finger.

74 © IT4OD 2014

Page 81: IT4OD 2014 Proceedings

120 sample images have been tested including 6 arch type fingerprints.

First true core points for each fingerprint image has been marked manually. For touch based database from 139 core points, 129 core points have been correctly identified (92.8% accuracy) and for touch-less database from132 core points, 119 core points have been correctly identified (90.15% accuracy). Table (1) shows the summary of tested results. Efficiency of proposed method depends on the acquisition conditions of fingerprint i.e. the quality of fingerprint images. Fig 5 shows examples of core points detection by CE.

TABLE I SUMMARY OF TEST RESULTS

Images tested Touch-less

images

Touch based

images Total Number of fingerprints taken for testing Total number of arch type images Total number of core points manually marked in fingerprints (excluding arch type) Number of correctly identified core points using CE Number of spurious core points detected (excluding arch type)

120 6

132 119

13

120 9

139 129

10

VI. CONCLUSION

In this paper, we have presented a simple method for detection the core points of touch-lessand touch based fingerprint images by using orientation consistency measure.Sincethe depth of webcam is small and the zone around core points contains the most of ridges characteristics, we used consistency of the orientation field to detect core points. The consistency of the orientation field isminimum in singular regions. Thismethod will find the localminimum orientation consistency to detect the core points.Experiment results show that the proposed method is capableof detecting core points in a fingerprint touch-less image as well as touch based fingerprint images.Higher accuracy can beobtained by improving acquisition conditions of fingerprint image and the orientation smothering algorithmto avoid spurious detection of core points.Our future work will focus onclassifying the touch-less fingerprint images depend on the small region around core points so that thecomputational time for matching fingerprints in a hugedatabase may reduce.

References :

[1] M. Kokou, Amine Nait Ali,” Fingerprint Characteristic Extraction by Ridge Orientation: An Approach for a Supervised Contactless Biometric System” International Journal of Computer Applications (0975 – 8887) Volume 16– No.6, February 2011.

[2] B.Y. Hiew, Andrew B.J. Teoh, and David C.L. Ngo, “Preprocessing of Fingerprint Images Captured with a Digital Camera", 9th International Conference on Control, Automation, Robotics and Vision (ICARCV 2006), Singapore, 2006.

[3] Lee C.,et .al. 2006 Preprocessing of a Fingerprint Image Captured with a Mobile Camera. ICB 2006, LNCS 3832, pp. 348-355.

[4] D. Lee, W. Jang, D. Park, S. Kim, J. Kim, “A Real-Time Image Selection Algorithm: Fingerprint Recognition Using Mobile Devices with Embedded Camera”, AutoID, 2005, pp.166-170.

[5] Prabhjot Kaur, Ankit Jain,and Sonia Mittal,” Touch-less Fingerprint Analysis — A Review and Comparison”, I.J. Intelligent Systems and Applications, 2012, 6, 46-52.

[6] Geevar C Zacharias and P Sojan lal « Singularity Detection in Fingerprint Image using Orientation Consistency “ pro. Of IEEE 978-1-4673-5090-7/13/$31.00 ©2013 .

[7] K. Karu and A. K. Jain, “Fingerprint classification,” Pattern Recognition,vol. 29, no. 3, pp. 389–404, 1996.

[8] A. M. Bazen , et .al, “Systematic methods for the computation of the directional fields and singular points of fingerprints,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 27, no. 7, pp. 905–919,2002.

[9] X. Zheng, et .al, “A detection of singular points in fingerprint images combining curvature and orientation field,” in Proc.Intl Conf. Intelligent Computation, 2006, pp. 593–599.

[10] A. K. Jain, S. Prabhakar, L. Hong, and S. Pankanti, “Filterbank-based fingerprint matching,” IEEE Trans. Image Processing, vol. 9, no. 5, pp.846–859, 2000.

[11] M. ABDALLAH, et .al ,”Different Techniques of Hand Segmentation in the Real Time”, International Journal of Computer Applications & Information Technology Vol. II, Issue I, January 2013 (ISSN: 2278-7720).

[12] D. Luo, Q. Tao, J. Long, and X. Wu, “Orientaion consistency based feature extraction for fingerprint identification,” in TENCON’02 Pro - ceedings IEEE., vol. 1, 2002, pp. 494–497.

[13] Neurotechnology. [Online]. Available: http://www.neurotechnologija. com/download.html Fig5. Some results of core points detection by CE: tow first columns

touch-less fingerprint images and third columns for touch based fingerprint images.

75 © IT4OD 2014

Page 82: IT4OD 2014 Proceedings

A hierarchical intrusion detection system based on combining predictions of different classifiers

Ahmed AhmimNaciraGhoualmi-Zine Laboratory of Computer Networks and Laboratory of Computer Networks and

Systems, Department of Computer Science Systems, Department of Computer Science BadjiMokhtar-Annaba UniversityBadjiMokhtar-Annaba University

[email protected] [email protected] Abstract—Nowadays, the cyber-attacks become a crucial problem. The intrusion detection system (IDS) is one of the most important weapons against these cyber-attacks. The simple one level IDS cannot combines a high true positive rate of frequent attacks, low false alarm rate, and an acceptable true positive rate of low frequent attacks. To deal with these limits, we propose a new hierarchical intrusion detection system. The proposed model includes two levels. The first one contains five classifiers Repeated Incremental Pruning to Produce Error Reduction, Multilayer Perceptrons, Self-Organizing Feature Map Network, C4.5 Decision Tree and Naïve Bayes used for their high rate of correct classification of respectively DOS, Normal behavior, Probe, R2L and U2R. Only five predictions of the first level are selected, and used as inputs of the second level that contains RBF network as final classifier. The experimentation on KDD99 shows that our model gives the highest accuracy and the highest detection rate compared to the results obtained by some well-known IDS models.

Index Terms—Computer Security, Intrusion Detection System, IDS, Hierarchical IDS, Hybrid IDS.

I. INTRODUCTION Actually, the computer networks are widely used to perform various activities such as shopping, education, communication, etc. The security of computer networks is a crucial problem due to the importance and sensitivity of thecommunicatedinformation. The cyber-attack represents one of the most dangerous secret weapons. Computer security rallies methods, techniques and tools used to protect systems, data, and services against the accidental or intentional threats so as to ensure confidentiality, availability, and integrity [1].

Nowadays, different techniques and methods are developed to implement the security policy such as authentication, cryptography, firewalls, proxies, antivirus, Virtual Private Network (VPN), and Intrusion Detection System (IDS).

An IDS is either software or hardware system that automates the monitoring process of events occurring in computer systems or networks, by analyzing them to notify the probable security problems [2]. We can classify the intrusion detection system into two categories: anomaly detection and misuse detection [3]. I f an intrusion detection system uses information about the normal behavior of the system which it monitors, we qualify it a s anomaly detection. If an intrusion detection

system uses information about attacks, we qualify it as misuse detection [4].

Different methods and techniques are used in intrusion detection. In the early stage, the artificial intelligence and learning machine are used. But, face problems like huge network traffic volumes, highly imbalanced data distribution, and difficulty to give decision limits between normal and abnormal behavior and a r equirement for continuous adaptation to a constantly changing environment these techniques have shown limitations [5].

The data mining techniques are used to deal with these limitations, where various data mining techniques are used such as Fuzzy Logic [6], Naïve Bayes [7], RIPPER [8], Decision Trees [9], Support Vector Machines [10], Artificial Neural Networks [11].

Although the data mining technique offers many advantages for intrusion detection, but this simple one level IDS has some limits like the very low detection rate for the low frequent attacks, the high false alarm rate, the inability to combine high detection rate and low false alarm rate. To skip this limit the hierarchical and hybrid IDS are increasingly used in the last decade [12]. The hierarchical and hybrid IDSs use the combination of different classifiers on different level in order to increase the detection rate and decrease the false alarm rate.

Actually, there are several hierarchical and hybrid models like Hybrid flexible Neural Tree based [13], Hybrid Machine Learning [14], Hierarchical neural network model [15], hierarchical clustering and support vector machines [16].

This paper is organized as follows. Section 2 presents the related works. We outline in section 3 the general structure and the operation mode of our model. The experiments are discussed in section 4. Finally, the section 5 draws the conclusion.

II. RELATEDWORKS The main drawbacks of the simple one level IDS are:

the low detection rate of the low frequent attack, the high false alarm rate, the inability to combines high detection rate and low false alarm rate.To deal with the above inconveniences, and enhance the performance of IDS, some hierarchical and hybrid models based on different

76 © IT4OD 2014

Page 83: IT4OD 2014 Proceedings

type of classifier are developed such as: IDS based on hierarchical clustering and support vector machines [16], IDS based on an evolutionary soft computing model using neuro-fuzzy classifiers [17], multiple-level hybrid classifier for IDS using Bayesian clustering and decision trees [18], IDS based hybrid RBF/Elman neural networks [19], FC-ANN [20].

Toosi and Kahani (2007) [17] proposed hierarchical IDS based neuro-fuzzy networks, fuzzy inference approach and genetic algorithms. At first a set of parallel neuro-fuzzy classifiers are used to perform the initial classification. Then, the fuzzy inference system based on the outputs of neuro-fuzzy makes the final decision of classification, where the genetic algorithm optimizes the structure of the fuzzy decision engine.

Xiang et al. (2008) [18] developed a multiple-level hybrid IDS based supervised tree classifiers and unsupervised Bayesian clustering. This model has four stages of classification similar to the well-known three-level tree classifier [21].

Tong et al. (2009) [19] proposed a hybrid IDS based RBF/Elman neural networks. The RBF neural network is employed as a real-time pattern classification, and Elman neural network is employed to restore the memory of past events.

FC-ANN [20] is hierarchical IDS based neural network and fuzzy clustering. It's composed of three layers: the first layer is a fuzzy clustering that generates the different training subsets. T he second layer represents the different neural networks trained to formulate the different base models. The last layer is a f uzzy aggregation module which is employed to aggregate these results and reduce the detected errors.

Horng et al. (2011) [16] proposed an IDS that combines a hierarchical clustering algorithm, a simple feature selection procedure, and the SVM technique. At first the hierarchical clustering algorithm is used to generate training instances. Then, the simple feature selection procedure was applied to eliminate unimportant features from the training set. Finally, the obtained SVM model classifies the network traffic data.

The related works have addressed some limits of the simple one level IDS like the combination of high detection rate and low false alarm, give a better detection rate for the low frequent attacks. Despite all these advantages, these related works are unable to increase the detection rate of the low frequent attacks without decrease the detection rate of the frequent attacks or increase the false alarm rate.

III. OUR MODEL Our work aims to build a n ew hierarchical IDS that

better detect the low-frequent attacks without losing their high detection rate on the detection of the frequent attacks or their low false alarm rate. In this section, we present the different components of the new hierarchical IDS and

their usefulness. As shown in figure 1 our model is composed of two levels. • The first level: this level contains different types of

classifier. These latter are selected for their highest detection rate for one or more classes of network connection. The process of selecting the best classifier of the first level is aim to benefit from these strong points of classifiers in order to increase the detection rate for all categories of network connections, mainly for the low frequent attacks like U2R attacks. Moreover, this choice of the best classifiers provides a maximum of correct estimation for each category of network connection, which facilitates the task of the second level to take the right final decision of classification. As illustrated in Figure 1, each classifier gives five predictions relative to the four categories of attacks and normal behavior. We maintain only the prediction of classes for which the classifiers are selected. We eliminate the other predictions because they represent non-useful information that can negatively influence the learning step of the classifier of the second level. The five selected predictions are used as inputs of the second level.

• The second level: this level contains the final classifier that decides if the connection is normal behavior or an attack, where it uses the selected outputs of the first level as inputs. The transformation of the different data set features to only five features with direct relation to the two classes of network connection increases the accuracy of the model.

Fig. 1. General structure of our model

77 © IT4OD 2014

Page 84: IT4OD 2014 Proceedings

A. The operation mode of our model The operating mode of our model is composed of three stages: select the different classifiers of the first level and second level, training stage and testing stage.

1) Select the different classifiers of the first and second level In the aim to select the best classifiers of the first and the second level, we perform a comparative study between different types of classifiers. For the first level, the different classifiers are compared relative to their performance on the classification of the network connection in one of the five classes of network connections (DOS, Probe, R2L, U2R, and normal behavior). We select only five classifiers those give a good accuracy, and the highest rate of correct classification for at least one of the five classes of network connections. For the second level, we select the classifier that gives the highest accuracy on the classification of network connection in one of the two the classes (Normal, Attack). To perform the second comparative study, we use the selected outputs of the first level as inputs of the second level.

2) Training stage This stage represents the training of our model with the aim to prepare it for the test stage. This stage is composed of two steps: • Train the first level: we train the different classifiers

of the first level with the training data set, where each feature of the data set represents an input for the classifiers of this level.

• Train the second level: a new data set is created from the predictions of the selected classifiers of the first level. To generate this new training data set, we associate the selected predictions result with the correct label as in the following table 1. The new training data set is used to train the classifier of the second level.

TABLE I. THE NEW TRAINING DATA SET

DOS Prediction

Probe prediction

U2R prediction

R2L prediction

Normal prediction Label

0.94 0.25 0.17 0.38 0.18 Attack

0.15 0.34 0.18 0.36 0.94 Normal

0.28 0.28 0.89 0.22 0.15 Attack

0.35 0.99 0.38 0.14 0.36 Attack

0.16 0.13 0.25 0.89 0.32 Attack

3) Test stage In this stage, we test the performance of our model after the achievement of the training stage, where we use the test data set. To perform this stage, we process in parallel each record of the data test by the different classifier of the first level. Then, we use the selected prediction outputs of the different classifiers of the first level as an

input of the classifier of the second level. Finally, the classifier of the second level makes the final decision, where each record is classified as an attack or a normal behavior.

IV. EXPERIMENTS This section is divided into three parts. In the first one, we detail the training and test data set. The second part represents a comparative study between eight classifiers in the aim to select the best ones for the first and the second level. Whereas, the third part represents the comparative study between our model and the related works. We have performed a set of experience on KDD99 [22] which represents the most used data set for intrusion detection in the last decade [12], [5]. NeuroSolutions Software [23] is used for the implementation of neural networks, and Weka Data Mining Tools [24] is used for the implementation of other classifiers. The combination of NeuroSolutions and Weka Data Mining is used to implement our model. The results are obtained on a Windows PC with Core 2 Duo 2.0 GHz CPU and 2 GB RAM.

A. Training and Test Data Set The KDD99 is derived in 1999 from DARPA-Lincoln98 [25] dataset that is collected by MIT’s Lincoln laboratory. KDD99 contains 39 type of attacks and normal behavior classified into five classes: DOS attack, U2R attack, PROB attack, R2L attack and Normal behavior [22]. Table 2 summarizes the distribution of attack and normal behavior records of our training data set. The KDD99 Test data set is used to evaluate the performance of our models.

TABLE II. DISTRIBUTION OF ATTACK AND NORMAL BEHAVIOR OF OUR TRAINING DATA SET

Type of connection Number of Record Proportion

Normal 4,500 22,50%

DOS 12,319 61,60%

Probe 2,130 10,65% R2L 999 5,00% U2R 52 0,26%

Two features (num_outbound_cmds and is_host_login) are removed because of their identical values in the training data set. To normalize data sets, the ASCII encoding method is used to convert the symbolic data to numerical values. Then, each data xi

B. Comparative studies of classifiers

of the feature j is normalized based on the follows equation:𝑥𝑥𝑖𝑖(𝑗𝑗) =𝑥𝑥𝑖𝑖(𝑗𝑗 )− 𝑚𝑚𝑖𝑖𝑚𝑚 (𝑥𝑥(𝑗𝑗 ))

𝑚𝑚𝑚𝑚𝑥𝑥 (𝑥𝑥(𝑗𝑗 ))−𝑚𝑚𝑖𝑖𝑚𝑚 (𝑥𝑥(𝑗𝑗 ))(1)

In the aim to select the best classifiers for the first and second level of our model, we have performed comparative studies. The first comparative study aims to select the classifiers those give the highest true positive

78 © IT4OD 2014

Page 85: IT4OD 2014 Proceedings

rate for DOS, Probe, U2R, R2L and the highest true negative rate for Normal behavior. The second comparative study aims to select the classifier that gives the highest accuracy for the second level. The different classifiers compared are: Naïve Bayes (NB) [27], C4.5 Decision Tree (DT) [28], Support Vector Machine (SVM) [29], Repeated Incremental Pruning to Produce Error Reduction (RIPPER) [30], Multilayer Perceptrons (MLP) [31], Self-Organizing Feature Map Network (SOFM) [32], Radial Basis Function Neural Network (RBF) [31], and Recurrent Neural Networks (RNN) [33]. In these comparative studies, we have used the training data set detailed in above Table 2. In these comparative studies, we have used NeuroSolutions Software [23] for the implementation of MLP, SOFM, RBF, RNN and Weka Data Mining Tools [24] for the implementation of SVM, NB, DT, RIPPER. In the first level, each classifier has 39 inputs that represent the 41 features of KDD9 without num_outbound_cmds and is_host_login. For neural networks, like Bagdad [26] each one has three hidden layers contain respectively 38, 19, and 12 neurons and an output layer with 5 neurons that represent the four categories of attacks (DOS, PROBE, U2L, R2L) and normal behavior. For the other classifiers each one gives their prediction for the four categories of attacks (DOS, PROBE, U2L, R2L) and normal behavior. In the second level, each classifier has 5 inputs that represent the five selected predictions of the classifiers of the first level. F or neural networks, each one has two hidden layers contain respectively 15 and 7 neurons and an output layer with 2 neurons that represent Attack and Normal behavior. For the other classifiers each one gives their two predictions for Attack and Normal behavior. Table 3 summarizes the result of correct classification of the eight classifiers. As illustrated in Figure 2, the best classifier in the detection of Normal behavior, DOS, R2L, Probe, U2R are respectively MLP with TNR equal to 98.99 %, RIPPER with DR equal to 97.49%, DT with DR equal to 28.23%, SOFM with DR equal to 97.10%, NB with DR equal to 22.81%.

TABLE III. THE CORRECT CLASSIFICATION OF THE EIGHT CLASSIFIERS OF THE FIRST LEVEL

DOS Normal Probe R2L U2R

DT 97.05% 86.59% 92.05% 28.23% 8.77%

SVM 97.04% 96.53% 84.47% 9.81% 8.77%

NB 96.33% 94.17% 89.53% 0.78% 22.81%

RIPPER 97.92% 97.34% 84.21% 13.95% 10.53%

MLP 97.49% 98.99% 83.20% 7.80% 0.00%

RBF 96.31% 95.14% 77.96% 3.45% 0.00%

SOFM 96.65% 95.17% 97.10% 1.93% 0.00%

RNN 97.59% 97.22% 84.61% 8.21% 0.00%

Fig. 2. The performance of the different classifiers for the first level

For the second level, we select RBF Network that gives the highest accuracy compared to other classifiers.

C. Evaluation of the new hierarchical IDS After analysis the performance of the different types of classifiers, we exploited their strong points in order to achieve our goal. The practical structure of our new model contain in the first level RIPPER, SOFM, DT and NB for their highest true positive rate in the detection of respectively DOS, Probe, R2L and U2R. Moreover, MLP is selected for their highest true negative rate in the detection of normal behavior. In the second level, we use RBF Network as a final classifier in order to combine the predictions of the different classifiers and give the final decision. To build our model, we have used Weka Data Mining Tools [24] to train and test the different classifiers, NeuroSolutions Software [23] to train and test the different neural networks, Java SE Development Kit 7 [34] and MySQL database [35] to process the data set and combine the different outputs of the first level as inputs of the second level. To evaluate the performance of our new model, we have compared its performance with the performance of the related works that used all KDD99 Test data set [22] for the evaluation of the performance of their model. For our model, we have used the Training Data Set detailed in above Table 2 as a training data set, and all KDD99 Data Test [22] as test data set. The result of the comparison is shown in Table 4.

0,00%

10,00%

20,00%

30,00%

40,00%

50,00%

60,00%

70,00%

80,00%

90,00%

100,00%

Corr

ect c

lass

ifica

tion

rate

DT

SVM

NB

RIPPER

MLP

RBF

SOFM

RNN

79 © IT4OD 2014

Page 86: IT4OD 2014 Proceedings

TABLE IV. COMPARISON BETWEEN OUR MODEL AND RELATED WORKS

Our model

Tossi [17]

FC-ANN [20]

Xiang [18]

Horng [16]

Normal 98.85% 98.20% 99.08% 96,80% 99.30%

DOS 98.68% 99.50% 96.70% 98.66% 99.50%

Probe 96.88% 84.10% 80.00% 93.40% 97.50%

R2L 42.77% 31.50% 58.57% 46.97% 28.80%

U2R 67.11% 14.10% 76.92% 71.43% 19.70%

DR 95.0% 94.77% 93.94% 93.93% 94.82%

FAR 1.15% 1.90% 0.92% 3.20% 0.70%

Accuracy 95.76% 95.30% 94.94% 94.49% 95.70%

As shown in figure 3, the best model in the detection

of Normal behaviors is Horng [16] model with 99.30%, DOS attacks is Horng [16] model with 99.50%, Probe attacks is Horng [16] model with 97.50%, R2L attacks is FC-ANN [20] model with 58.57%, and U2R attacks is FC-ANN [20] model with 76.92%. Our model doesn't give the highest rate of correct classification for none category of network connection, but it is close to the highest rate of correct classification for most of them, where it gives 98.85% for Normal, 98.68% for DOS, 96.88% for Probe, 42.77% for R2L and 67.11% for U2R.

The time required to test all KDD99 Test data set

records is 78.53 second, so the average time required to process one record is 252.48 Microsecond. That proves the speed of our model to process the network traffic.

Globally, our model gives the highest detection, the

highest accuracy and a l ow false positive rate that represents the third least false alarm rate. The improvement of the accuracy represents 186 records correctly classified more than the best model of the related works. Moreover, our model shows its ability to better detect the low frequent attacks as U2R and R2L without decrease the detection rate of frequent attacks or increase the false alarm rate, which represents a great advantage.

The comparative study between our model and other

models shows that our model has achieved the objectives of our paper, where it gives the highest accuracy with 95.76%, it combines the high detection rate and a low false alarm rate, and it better detects the low-frequent attacks without decrease the detection rate of frequent attacks or increase the false alarm rate.

Fig. 3. Comparison between our model and related works

V. CONCLUSION In this article, we have proposed a new IDS model based on the combination of different classifiers that meets the following requirements: better detect the low frequents attacks as U2R, give a high true positive rate for frequent attacks and give a l ow false alarm rate. Our model includes two levels. The first one contains five classifiers Repeated Incremental Pruning to Produce Error Reduction, Multilayer Perceptrons, Self-Organizing Feature Map Network, C4.5 Decision Tree and Naïve Bayes used for their high rate of correct classification of respectively DOS, Normal behavior, Probe, R2L and U2R. Only five predictions of the first level are selected, and used as inputs of the second level that contains RBF network as final classifier. The experiments show that our model gives the highest detection rate, the highest accuracy and a l ow false alarm rate compared to some well-known IDS models. Furthermore, our model has shown its ability to better detect the low-frequent attacks without decrease the detection rate of frequent attacks or increase the false alarm rate.

VI. REFERENCE [1] E. Cole, R. Krutz and J. Conley, Network Security Bible,

Wiley Publishing, Inc, ISBN13: 978-0-7645-7397-2, 2005. [2] K. Scarfone and P. Mell, “Guide to Intrusion Detection and

Prevention Systems (IDPS)”, NIST Special Publication, Gaithersburg, pp. 800-94, 2007.

[3] S. Axelsson, “Intrusion detection systems: A survey and taxonomy”, Technical Report 99-15, Chalmers University, Goteborg, March 2000, 2000.

[4] H. Debar, M. Dacier and A. Wespi, “A Revised Taxonomy for Intrusion Detection Systems”, Annals of Telecommunications, Vol. 55, No. 7-8, pp.361-378, 2000.

0,00%

10,00%

20,00%

30,00%

40,00%

50,00%

60,00%

70,00%

80,00%

90,00%

100,00%

Nor

mal

DOS

Prob

eR2

LU

2R DR FAR

Accu

racy

Our model

Tossi [17]

Wanga [20]

Xiang [18]

Horng [16]

80 © IT4OD 2014

Page 87: IT4OD 2014 Proceedings

[5] S. W. Xiaonan and W. Banzhaf, “The use of computational intelligence in intrusion detection systems: A review”, Applied Soft Computing, Vol. 10, No.1, PP 1–35, 2010.

[6] W. Chimphlee, H. A. Addullah and M. N. M. Sap, Srinoy, S., Chimphlee, S., “Anomaly-based intrusion detection using fuzzy rough clustering”. P roceeding ICHIT '06 Proceedings of the 2006 International Conference on Hybrid Information Technology, IEEE Computer Society Washington, Vol. 01, pp. 329-334, 2006.

[7] S. L. Scott, “A Bayesian paradigm for designing intrusion detection systems”, Computational Statistics and Data Analysis, Vol. 45, No. 1, pp. 69–83, 2004.

[8] W. Fan, M. Miller, S. Stolfo, W. Lee and P. Chan, Using artificial anomalies to detect unknown and known network intrusions, Knowledge and Information Systems, Vol.6, No.5, pp.507-527, 2004.

[9] S. Paek, Y. Oh and D. Lee, " sIDMG: Small-Size Intrusion Detection Model Generation of Complimenting Decision Tree Classification Algorithm",7th International Workshop, WISA 2006, Jeju Island, Korea, August 28-30, Springer Berlin Heidelberg, pp 83-99, 2006.

[10] Z. Zhang and H. Shen, "Application of online-training SVMs for real-time intrusion detection with different considerations", Computer Communications, Vol.28, No.12, pp. 1428–1442, 2005.

[11] J. Cannady, “Artificial neural networks for misuse detection”, in Proceedings of the 21st National Information Systems Security Conference, Arlington, VA, USA, pp. 368–381, 1998.

[12] C. Tsaia, Y. Hsub, C. Linc and W. Lin, “Intrusion detection by machine learning: A review”, Expert Systems with Applications, Vol. 36, No. 10, pp 11994–12000, 2009.

[13] Y. Chen, A. Abraham and B. Yang, “Hybrid flexible neural-tree-based intrusion detection systems”, International Journal of Intelligent Systems, Vol. 22, No.4. pp 337 – 352, 2007.

[14] T. Shon and J. Moon, “A hybrid machine learning approach to network anomaly detection”, Information Sciences: an International Journal, Vol. 177, No. 18, pp 3799-3821, 2007.

[15] C. Zhang, J. Jiang, M. Kamel, “Intrusion detection using hierarchical neural networks”, Pattern Recognition Letters, Vol. 26, No. 6, pp 779–791, 2005.

[16] S. Horng, M. Su, Y. Chen, T. Kao, R. Chen, J. Lai and D. C. Perkasa, “A novel intrusion detection system based on hierarchical clustering and support vector machines”, Expert Systems with Applications, Vol.38, No.1, pp.306–313, 2011.

[17] N. A. Toosi and M. Kahani, “A new approach to intrusion detection based on an evolutionary soft computing model using neuro-fuzzy classifiers”, Computer Communications,Vol.30, No.10, pp.2201–2212, 2007.

[18] C. Xiang, C. P. Yong and S. L. Meng, “Design of multiple-level hybrid classifier for intrusion detection system using Bayesian clustering and decision trees”, Pattern Recognition Letters, Vol. 29, No. 7, PP. 918-924, 2008.

[19] X. Tong, Z. Wang and H. Yu, "A research using hybrid RBF/Elman neural networks for intrusion detection system secure model", Computer Physics Communications, Vol.180, No.10, pp. 1795-1801, 2009.

[20] G. Wanga, J. Hao, J. Mab and L. Huanga, “A new approach to intrusion detection using artificial neural networks and fuzzy clustering”, Expert Systems with Applications, Vol. 37, No. 9, pp 6225–6232, 2010.

[21] C. Xiang, Y. M. Chong and L.H. Zhu, Design of multiple-level tree classifiers for intrusion detection system. In: Proc. 2004 IEEE Conf. on C ybernetics and Intelligent Systems, December, Singapore, pp. 872–877, 2004.

[22] The KDD CUP 1999 Data., available at: http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.html (accessed June 2012),1999.

[23] L. Curt, P. Samson, D. Wooten, G. Geniesse, M. Lucas, G. Fancourt, J. Gerstenberger, N. Euliano, G. Lynn, M. Allen and D. Marossero, NeuroSolutions, version 6.02. Copyright. NeuroDimension Inc., www.nd.com 1994–2012, available at: http:// www.nd.com (accessed June 2012), 2012.

[24] I. Witten, E. Frank and M. Hall, “Data Mining: Practical Machine Learning Tools and Techniques”, Elsevier Inc, ISBN978-0-12-374856-0, 2011.

[25] The DARPA Intrusion Detection Data Sets, available at: http://www.ll.mit.edu/mission/communications/ist/corpora/ideval/data/index.html (accessed June 2012),2012.

[26] R. Beghdad, “Critical study of neural networks in detecting intrusions”, Computers & Security, Vol. 27, No. 5–6, pp 168–175,2008.

[27] G. H. John and P. Langley, "Estimating Continuous Distributions in Bayesian Classifiers", In:Eleventh Conference on Uncertainty in Artificial Intelligence, San Mateo, 338-345, 1995.

[28] R. Quinlan, "C4.5: Programs for Machine Learning. Morgan Kaufmann Publishers", San Mateo, CA, 1993.

[29] C. Chang and C. Lin, LIBSVM - A Library for Support Vector Machines. URL: http://www.csie.ntu.edu.tw/~cjlin/libsvm/, 2001.

[30] W. W. Cohen, "Fast Effective Rule Induction", In: Twelfth International Conference on Machine Learning, 115-123, 1995.

[31] C. M. Bishop, Neural Networks for Pattern Recognition, OXFORD university press, 1996.

[32] T. Kohonen, Self-Organizing Maps. Third, extended edition, Springer , 2001.

[33] R. Williams and D. Zipser D, "A learning algorithm for continually running fully recurrent neural networks." Neural Computation 1, 270-280, 1989.

[34] Java SE Development Kit 7, available at: http://www.oracle.com/technetwork/java/javase/documentation/index.html, (accessed June 2012), 2012.

[35] MySQL Dataset , available at: http://dev.mysql.com/doc/, (accessed June 2012), 2012.

81 © IT4OD 2014

Page 88: IT4OD 2014 Proceedings

Topic 3: Pervasive systems and multi-criteria decision

82 © IT4OD 2014

Page 89: IT4OD 2014 Proceedings

Cloud based Decision Support System for urban planning

Imene Benatia Mathematics and computer sciences

department Tebessa University

Tebessa,Algeria [email protected]

Mohamed Ridda Laouar Mathematics and computer sciences

department Tebessa University Tebessa, Algeria

[email protected]

Hakim Bendjenna Mathematics and computer sciences

department Tebessa University Tebessa, Algeria

[email protected]

Abstract— In this paper we propose a Cloud based Decision Support System (DSS) for urban planning in order to solve the problem of evaluation and choice of the best urban project and the problem of the conflict between the decision makers. The suggested decisional system is built on the Cloud Computing architecture with three layers and includes the multiple criteria decision making (MCDM) method Promethee II as well as the procedure of negotiation Hare in order to provide the final choice to the decision makers.

Keywords— Cloud Computing, Decision Support System (DSS), Urban Project.

I. INTRODUCTION

Nowadays Cloud Computing has become the universal reference in IT management. Cloud computing has been defined b y National Institute of Standards and T echnology (NIST) as a m odel for enabling convenient, on-demand network access to a shared poo l of configurable computing resources (e .g., networks, servers, stor age, applications, and services) that can be r apidly provisioned and released with minimal management effort or cloud provider interaction [11]. Currently, Cloud Computing is us ed to solve p roblems in different domains of Informati on Technology (IT) namely Decision Sup port Systems (DSS), Geographical Information Systems (GIS), Web Application Development, Mobile Technology, E-governance Systems, Scientific Research, Enterprise Resource Planning (ER P)... [2].

Each urban city tries to solve the problems in the various fields (Habitat, Transport, Economy…) by proposing urban projects to reach a sustainable development. The Projects represent a s et of approaches to obtain an agr eement between t he different actors (decision makers). The urban projects are often characterized by contradictory criteria [13] which generates a p roblem of conflict between the decision makers where the latter cause a debate which can affect the final decision.

For that, in our study we are interested in proposing a Cloud based Decision Support System (DSS) for urban planning in order to help the decision makers to choose the best urban projects and to avoid the conflict between them. Our contri bution consists in implementing a decision support sy stem deployed on a platfor m Cloud (Clou dify) and managed by the OpenStack infrastructure. This article i s structured as follows: a brief introdu ction is presented in Section 1. Section 2 is devoted to the presentation of the problematic and the description of our contributi on. We will present thereafter, related work in Secti on 3. The suggested approach is described in Section 4 and Section 5 is devoted to the implementation of our Cloud based DSS. Finally the article ends in with a conclusion.

II. PROBLEM AND CONTRIBUTION The urban cities undergo man y problems in various fields such as: transport, habitat, trade… etc. For this purpose each city tries to solve them by proposing various urba n projects. The posed problem consists in the fact that the urban projects are multi-criteria in nature [13] this means that these projects have several criteria that are often conflicting in nature whose i mportance is n ot the sam e; this problematic involves several entities (ecologist, sociologist, economist...etc.) with contradictory interests, thus the project is seen differently by each one of t hese entities, according to t heir knowledge, objectives and concerns what gen erates a problem of conflict between these actors during the evaluation and the choice of the best urban project; ther efore the decision-making process i s distributed between several entities with the conflict interests what affects the final decision. Our contribution consists in proposing an approach which mak es it possible to resolve the prob lems of evaluation of the urban p rojects and that of the conflict between the decision makers. This approach is based on the co mbination of a Decision Support System (DSS) and the new technology Cloud Computing, in order to ben efit from its advantages such as: cost reduction, facilitated the communication and the accessibility without temporal or geographical constraints, reduction in the deployment and processing time. The proposed decision model allows:

83 © IT4OD 2014

Page 90: IT4OD 2014 Proceedings

• to specify the subjective parameters of the urban projec ts for each decision maker. • to perform a multi-criteria analysis for e ach decision maker by using the Promethee II metho d [3] which makes it possible to arrange the actions (urban projects) from the best to the worst one. • execute a negotiation process by employing the Hare procedure [1] which allows to elect between multiple rankings made by the multi-criteria analysis and provide the final decision to the whole o f the decision makers.

III. RELATED WORK In the context of the urban planning, several researchers concentrated on the resolution of the problems of planning in various domains of the city (habitat, transport, ecology, evaluation… etc.): Yang and Chen [23] proposed to integrate a decision support sy stem using a geogr aphical information s ystem(GIS) in th e planning of public transport to decrease urban traffic in China. Jun and Yikui [6] developed a decision support s ystem based on artificial intelligence which will m ake the p lanning of road urban n etwork to he lp the different users to move in the city. The rapid growth of urban areas of the city will generate big open spaces, for thi s purpose Maktav, Jurgens, Siegmund, Sunar, Esbah , Kalkan, U ysa , M ercan, Akar, Thunig and Wolf in [10] adopted a m ulti-criteria spatial decision support system which detects and evaluates open spaces in the city; these open spaces will be used for urban planni ng. Shi and Li [18] describe the development of the framework for an integrated decision support system for urban traffic-related air pollution assessment and control founded on expert system. Fayech, Maouche, Hammadi and Borne [14] presented a multi-agent decision support s ystem for the planning of the urban transport network. This system is responsible for detection and analyzes possible di sturbances in order to palliate them. Miah and Ahamed [12] proposed a decision support s ystem deployed in a public Cloud which makes it possible the author ities of the Australian security to obtain on demand the information about the behavior of the drivers on the Australian roads. Yujing, Flax, Hui and Zhihua [24] constructed a decisi on support sy stem model with gray relational Decision-Making and Fuzzy AHP which helps government decision makers to evaluate the performance of urban projects and to avoid blind decision. Alshawi a nd Dawood [5] developed a decision support system which allows deci sion makers to ev aluate the construction projects of new cities to solve the problem of slums in the Islamic world. These studies showed that DSS can b e an effective tool for the urban planning, using a wide r ange of DSS tools such as artificial intelligence, multi-agent systems, multiple criteria decision making (MCDM) techniques, geographical information systems (GIS), etc. In order to reduce the deployment and processing time, ameliorate the communication and the coop eration between the decision mak ers, facilitate the accessibility and decrease the cost, we propo se a Decision Support S ystem (DSS) built on the Cloud Com puting architecture which can improve effectiveness of urban project evaluation decision.

IV. PROPOSED APPROACH FOR A CLOUD BASED DECISION SUPPORT SYSTEM

The proposed approach model is composed of three phases, the first consists in perform ing a m ulti-criteria analysis to elaborat e the rankings of the urban projects u sing the Promethee II method, the second executes the Hare metho d of negotiation process in order to

determinate the final choi ce (urban projects) to decision makers and the third phase allows to inte grate our Decis ion Support Sy stem (DSS) which is composed of the Promethee II and Hare method in a private Cloud with three layers. Phase 1: Multi-criteria analysis Multi-criteria decision aid is employed in various domains in order to help the decision maker to choose the optimal solution among a set of solutions. Thus according to Vincke [22] the m ulti-criteria decision aid a ims, as its name i ndicates it, to p rovide to a decision maker the tools enabling him to progress in t he resolution of the problem of decision where s everal points of view of, o ften contradictory, must be consid ered. Many real problems can be formulated by defining a set of criteria which e valuate actions performances. When modeling a r eal world decision prob lem using multiple criteria decision aid, different problematic can be considered [16]. This distinction differs in the wa y alternatives are cons idered and in the type of result expected from the analysis. Roy determines four problematic [17]: choice problematic consists in working out a procedure of selection, sorting problematic allows to carr y out a procedure for assigning, ranking problematic consists in arran ging the various actions while going from the best action to the least g ood and description problematic allows describing the actions and their consequences. In our context of study the studied problem can be considered as a ranking problematic wher e there exist several urban pro jects that need to be classified by decision makers from the best to the worst in order to determine the best project to be applied. To solve this kind of problem, there are various methods such as: Promethee I, Promethe II, Electre II, Electre III and Electre IV. For our approach we use the Promethee II as a method for ranking various urban projects from the best to the worst; in this case all the actions are comparable, it is possible to discriminate them. Pr omethee II is a prominent method for multi-criteria decision aid that builds a complete ranking on a set of potential actions by assigning each of th em a s o-called net flow score. However, to calculate these scores, each pair of actions has to be compared [8]. In our cas e, each cr iterion is seen differently by each decision maker thus the decision maker specifies the weight of the criterion according to its p reference, interests, knowledge and objectives. Table 1 shows the va rious urban d evelopment housing projects with their char acteristics where a decis ion maker specifies the weight of each characteristic.

Table 1. Urban development housing projects and their characteristics

Projects Characteristics of projects Social characteristics Economic

characteristics Ecological

characteristics C1 C2 C3 C4 C5 C6

Project1 58 2000 72 27 472142675 1 Project2 13 300 60 10 142421461 3 Project3 72 954 67 24 232227360 2 Project4 28 500 70 18 94813500 1 Project5 16 260 80 12 44713138 2 Weight 5 4 7 4 5 1 While inspiring by the concept of sustain able development, we classified the characteristics of the proje cts into three categories (social, economical and ecological characteristics) in order to help decision-makers to specify the weight of the criteria. • Social characteristics:

84 © IT4OD 2014

Page 91: IT4OD 2014 Proceedings

C1: Block number: is the number of buildings associated to a project. C2: Number of apartments: is the total number of houses to be built by project. C3: Apartments surface (m²): is the area of the houses. • Economical characteristics: C4: Time of work (month): is the time of completion of the project. C5: Amount (Algerian dinar): is the overall cost of the project. • Ecological characteristics: C6: Ecological effect (takes the values 1, 2, 3): - if the project is low ecological, it takes the value 1. -if the project moderately ecological it takes the value 2. -if the project is highly ecological it takes the value 3. We use these characteristics as a de cision criterion because they represent the basic elements of an urb an development housing project. The decision making process by the Pro methee II meth od is composed of four steps that are presented hereafter: [20] Step 1: The first step computes for each pair of projects and for each criterion, the value of the preference degree. Let )( pkg j be th e

value of a crit erion j for a projec t pi . We note ),( pkpid j , the

difference of value of a criterion j for two projects pi and pk .

)()(),( pkgpigpkpid jjj (1)

),( pkpiPj is the value of t he preference degree of a cri terion j for

two projects pi and pk . The preference functions used to compute these preference degrees are defined such as:

0),(:1

0),(:0

pkpidif

pkpidif

j

j (2)

Step 2: The second step consists in aggregating the preference degrees of all criter ia for each pair of pro jects. For each pair of projects, we compute a global preference index. Let C be the set of considered criteria and jw the weight associated to the cr iterion j

(specified by the decision maker). The global preference index fo r a pair of project pi and pk is computed as follows:

Cj

jj pkpiPwpkpi ),(),( (3)

Step 3: The third step, which is the firs t that concerns the ranking of the projects, consists in com puting the outranking flows. For each project pi , we compute the positive outranking flow )( pi and the

negative outranking flow )( pi .Let A be the set of projects and n the number of projects. The positive outranking flow of a project pi is computed by the following formula:

Axj xpiP

npi ),(

11)( (4)

The negative outranking flow of a project pi is c omputed by the following formula:

Axj xpiP

npi ),(

11)( (5)

The computation results of positive and neg ative outranking flow for each project are represented by Fig. 1.

Fig. 1. Outranking flows

Step 4: The last step consists in using the outranking flows to establish a complete ranking between the projects. The ranking is based on the net outranking flows. These are computed for each project from the positive and negative outranking flows. The net outranking flow )( pi of a project pi is computed as follows:

)()()( pipipi (6)

The computation results of net outranking flow for each p roject are represented by Fig. 2. At this stage, we r ank the pro jects in descending order by using Phi scor es. The ranking of the projects is illustrated in Fig.3.

Fig. 2.The net outranking flow

Fig .3. Ranking of projects by Promethee II

85 © IT4OD 2014

Page 92: IT4OD 2014 Proceedings

In our context ther e are s everal decision makers where each decision maker express his personal point of view by specifying the subjective parameters (i.e. fix the weight of the criteria for each urban project), for th at we use Promet hee II for each decision maker ; therefore we will obtain several rankings where each ranking corresponds to a decision maker as shown in Fig. 4; in this case there will be a problem of conflict between the decision makers to choose the best pro ject among a set of rankings. To solve this problem we propose to use a negotiation process.

Fig. 4. Multi-criteria analysis using Promethee II

Phase 2: Negotiation process Negotiation is a process by which several parts lead to a common decision. Some researchers used the negotiation to solve problems of the urban planning: Longfei and Hong [9] proposed an approach for resolving the problem of parking in the city using negotiation process based on calculation of routes utility. Takahashi, kanamori and Ito [19] described a route provid ing method to acq uire efficient traffic flow based on anticipatory stigmergy for estimating vehicle position and negotiation system for changing route assignment. Di Lecce and Amato [7] proposed a solution for the problem of hazardous goods by creating a new planning route based on m ulti agent coop erative negotiation paradigm. The negotiation is grouped int o three f amilies: the first f amily is that of the voting systems which are used to choose a solution among several. The second one the au ction which allows people to sell their goods with the best price an d the th ird family is th at of the negotiation by argumentation which makes it possible the agen ts to convince the others by the choice of good arguments. [21] In order to r esolve the problem of conflict between decis ion makers we use the voting system to elect an urban project among a set of rankings of urban projec ts carried out b y the m ulti-criteria analysis. There are different methods of vote such as: Condorcet method, Borda method and Hare method. For our Decision Support System (DSS) we emplo yed the Hare method; this method determines the social cho ice by eliminating successively the alternatives (urban projects) the least desired in order to elect the best urban project. We choose to u se the Hare m ethod because this one does not present an y disadvantage and we are sure to find the social choice whereas the Borda method makes it possible to give the social choice but has the disadvantage of encouraging the ta ctical or reasoned votes and the Condorcet method has the disadvantage of not finding the social choice. [21]

Figure 5 illustrates the functioning of our proposed DSS which is composed of two steps: t he Multi-criteria analysis and the negotiation process in order To give the final choice (the best urban project) to the decision-makers.

Fig. 5. Proposed DSS for evaluation of urban projects

We suppose that we have five decision makers, th e results of application of multi-criteria analysis for ea ch decision m aker are represented below in Table 2:

Table 2. Ranking of projects according to each decision-maker

Decision maker 1

Decision maker 2

Decision maker 3

Decision maker 4

Decision maker 5

Project1 Project1 Project5 Project3 Project1

Project3 Project3 Project3 Project1 Project3

Project5 Project4 Project1 Project4 Project5

Project4 Project2 Project2 Project2 Project4

Project2 Project5 Project4 Project5 Project2

Hare method u ses this results t o determinate th e best project. The best urban project given by Hare method is project 1. Phase 3: integration of DSS in private Cloud In this section we will present the architecture of the private Cloud that we hav e suggested to in tegrate our proposed Decision Support System (DSS) for ev aluation of urban projects. Suggested architecture is illustrated by Fig. 6. We chose to integrate our DSS in a private cloud because th e proposed DSS is not intended for the general public; it is used b y a group of d ecision makers. B y deploying our DSS in private cloud th e data will be more pro tected and secure.

86 © IT4OD 2014

Page 93: IT4OD 2014 Proceedings

Fig. 6. Integration of DSS in private Cloud

Our architecture Cloud is b ased on thr ee essential layers: an infrastructure layer, a platfor m layer and a user layer. • Infrastructure layer: The infrastructure layer enables to place at the disposal of the virtual resources by using standard equipment namely: units equipped with a great po wer of calcu lation, processing and storage. At this level we use IaaS (Infrastructure as a service) Cloud for providing a virtualized, distr ibuted and automated infrastructure base. The basic function of I aaS Cloud is the creation of vir tual machines. In th e context of our stud y, the city contains several domains such as transport, housing development, commerce; networks…etc. In each dom ain, the city offers many urban projec ts that must be study and evaluate by different decision makers; for this we use the Ia aS Cloud to cre ate a virtual server for each field of the city. • Platform lay er: The d evelopment platform rests on the infrastructure layer. It is the central layer of the architecture; it uses the resources provided by the IaaS layer and it offers all the elements and tools necessary to support the construction, the deployment and the life cycle of the appli cations. At this leve l we deploy a PaaS (Platform as a servic e) Cloud in each vir tual server created by the IaaS Clould .We emplo y this PaaS Cloud to benefit from its offered tools in ord er to create a v irtual machine in which we d eploy our proposed Decision Support System (DSS). • User layer: In this layer the end-users (decision makers) access to our Decision Support System (DSS) through a web browser in order to participate in evaluation and choice process of th e best ur ban project.

V. IMPLEMENTATION OF CLOUD BASED DECISION SUPPORT SYSTEM FOR THE EVALUATION OF URBAN PROJECTS

This section discusse s the implementation of our propo sed

architecture to integrate our s uggested Decision System in private Cloud. The scenario of implementation is illustrated in Fig. 7.

Fig. 7. Cloud based DSS for evaluation of urban projects

A. Layer 1: infrastructure layer In our study we chose the OpenStack Cloud [15] because it showed his proofs beside professionals of the domain, it represents a robust system allowing the creation of private Cloud and offer s a development platform (i .e. it allows to deplo y a PaaS Clou d to develop applications). OpenStack makes it possible to implement a virtual system of waiter and storage. Using its components (Nova, Swift, Glance) we can create virtual machines where e ach one of them corresponds to a domain of the city (transport, habitat, trade…). B. Layer 2: platform layer For our architecture we chose Cloudify [4] because it r epresents a platform which can be deployed on OpenStack and makes it possible to integrate any middleware (Java, PHP, .NET, Ruby or others). This open source solution allows to manufacture a custom PaaS and to carry out a set of tasks relating to the deployment of an application on a Cloud and to the managing of its life cycle. Within each v irtual machine creates by OpenStack we deplo y Cloudify, this last will create a virtual machine in which it deploys our application which contains three s ervices (Tomcat, Decision Support S ystem « DSS » and Database). For each connection of a d ecision maker, Cloudify will allocate to him an instance of each service of the application. - Tomcat service: It represents the interface Web which will make the interaction between the decisio n makers and t he Decision Support System interface. - Database service: The database makes it possible to the chiefs of the projects to store all the proposed urban projects with th eir characteristics to solve a probl em in a dom ain of the c ity. The decision support system communicates with this database in order to collect information on projects. - DSS service: it’s the Decision Support S ystem (DSS) which was presented previously in section (4) which contains Promethee II and Hare method. The DSS interacts w ith the database to collect all information concerning the urb an projects in order to carry out a multi-criteria analysis which makes it possible to arrange the proposed urban projects. Thereafter a n egotiation process will be launched to determine the final choice to the decision makers via the Tomcat interface. C. Layer 3: user layer

87 © IT4OD 2014

Page 94: IT4OD 2014 Proceedings

In order to s olve a problem in a f ield of the city, each decision maker can access the appli cation to part icipate in th e decision-making process via an y device (computer, Smartphone, tablet ...) equipped with a web browser and an internet connection.

VI. CONCLUSION

In this article we presented our suggested approach which makes it possible to help the decision makers of an urban city to choose the best urban project in order to solve a problem in a f ield of the city. Our approach is composed of three steps, in the first step we used the Promethee II method to arrange th e urban projects of diff erent decision makers; in the second phase we employed the Hare method which uses the results provided by the Promethee II method in o rder to elect the best urban project. I n the third step to improve our DSS which composed of Promethee II and Hare method, we have integrated it in a private cloud with three layers. At the end of this article, we realized a case study on urban housing development project in order to validate our proposed Decision Support System.

REFERENCES [1] A.D Taylor and A.M Pacelli . “Mathematics and politics Strategy, Voting, Power and Proof”. 2nd Ed. Ch 1, pp 7-10. 2008. [2] M. Bhat , R .Shah , B. Ahmad and I . Bhat .”Cloud Co mputing: A Solution to I nformation Support Systems (ISS)”. International Journal of Computer Applications 11(5): pp.0975 – 8887. 2010. [3] J.Brans, P.Vincke. “A Pr eference Ranking Organization Method”. Management Science, 31(6): pp.647-656. 1985. [4] Bringing DevOps Automation to the World of PaaS. Availabl e at http://www.cloudifysource.org/ [5] I. Dawood and M .Alshawi. “Decision Support Systems (DSS) Model for the Housing Industry”. Second International Conference on Developments in eSystems Engineering (DESE).2009. IEEE. [6] D. Jun and M.Yikui. “ Intelligent Decision Support Sy stem for Road Network Planning”. 2009 I SECS International Colloquium on Co mputing, Communication, Control, and Management.2009. IEEE. [7] V. Di Lecce and A. A mato. “Route planning and user interf ace for an advanced intelligent transport sy stem”. IET Intelligent Transport Systems.2011.IEEE. [8] S. Eppe, Y. De Smet. “Approximating Promethee II's net flow scor es by piecewise linear value functions”. CoDE-SMG Technical Report Series.2012.Available at http://code.ulb.ac.be/dbfiles/EppDes2012atechreport.pdf. [9] W.Longfei and C. Hong. “Coorporative Parking Negotiation and Guidance Based on Intelligent Agents”. Inte rnational Conference on Co mputational Intelligence and Natural Computing.2009. IEEE. [10] D. Maktav, C. Jurgens, A. Siegmund, F. Sunar, H. Esbah , K. Kalkan, C. Uysa , O.Y. Mercan, I. Ak ar, H. Thunig and N. W olf .”Multi-criteria Spatial Decision Support Sy stem for Valuation o f Open Spaces for Urban Planning”. 5th International Conf erence on Recent Advances in Space Technologies (RAST).2011. IEEE. [11] P. Mell and T. Grance, The NIST definition of Cloud computing (draft). NIST special publication, 800(145): pp. 2. 2011. [12] S.J. Miah and R. Ahamed . A Cloud-Based DSS Model for Driver Safety and Monitoring on Australian Roads. International Journal of Emerging Sciences. 1(4): pp.634-648. 2011.

[13] I.C. Schutte and A. Brits . Prioritising transport infrastructure projects : towards a multi-criterion analysis. Southern African Business Review. 16(3): pp. 97-117 .2012. [14] B. Fayech, S. Maouche, S. Hammad and P. Borne. “ Multi-agent decision-support system for an ur ban transportation network”. Automation Congress, 2002 Proceedings of the 5th Biannual World .2002. IEEE. [15] Open source software for building private and public clouds. Available at http://www.openstack.org/ [16] B. R oy .“Multicriteria Methodology for Decision Aidin g”. Kluwer Academic, Dordrecht (1996). [17] B. Roy . “Méthodologie multicritère d’aide à la décision” . Ed. Economica.1985. [18] Y. Shi and J. Li . “Improving the Decisional Co ntext: New I ntegrated Decision Support System for Urban Traffic-related Environment Assessment and Control”. International Conference on Mechanic Automation and Control Engineering (MACE).2010. IEEE. [19] J. Takahashi, R. kanamori and T. Ito. “Evaluation of Autom ated Negotiation System for Changing Route Assignment to Acquire Ef ficient Traffic Flow”. The IEEE 6th Inte rnational Conference on Service-Oriented Computing and Applications (SOCA).2013. IEEE. [20] P .Taillandier and S .Stinckwich. “Using the PROMETHEE multi-criteria decision making method to define new exploration strategies for rescue robots ”. IEEE International Symposium on Safety, Security, and Rescue Robotics (SSRR), Kyoto : Japan.2011. [21] M.H. Verrons. “GeNCA : un modèle général de négociation de c ontrat entre agents”. Thèse de Doctorat de l’université des sciences et technologie et de Lille.2004 [22] P. Vincke. “L'aide multicritère à la décision”. 1e r Ed, Ed de l'universit é de Bruxelles, Belgique. 1989. [23] X.M. Yan g an d X.W. Chen.“Integrated decision support system designed for Chinese city public transportation planning and operation”. The IEEE 5th Internat ional Conference on intelligent Transportation System s. 2002. IEEE. [24] W. Yujing , L. Lin , Z. Hui a nd L. Zhihua . “Decision Model of Urban Infrastructure Projects Based on Co mprehensive Evaluation”. 2nd I EEE International Conference on E mergency Management and M anagement Sciences (ICEMMS). 2011. IEEE.

88 © IT4OD 2014

Page 95: IT4OD 2014 Proceedings

Steganalysis based on Zipf’s law

Laimeche Lakhdar Tebessa University/Computer Sciences Department,

Tebessa, Algeria Email: [email protected]

Farida Hayet Merouani and Mazouzi Smaine Badji Mokhtar University/Cmputer sciences Department,

LRI Laboratory, Annaba, Algeria Skikda University/Cmputer sciences Department, Skikda,

Algeria Email: Hayet_merouani, [email protected]

Abstract—In this paper, we propose a novel steganalytic method to effectively attack the advanced steganographic methods. Our method presents a double originality. On the one hand, it is based on the application of Zipf’s law using wavelet decomposition. On the other hand the extraction of a new feature vector based on auto similarity between wavelet sub-bands and dependencies between wavelet sub-bands coefficients. Since the hidden message is sometimes independent to cover images, the embedding process in an image often decreases the dependencies exiting in cover images to some extent. Therefore, we have exploited the alteration of Zipf curves of each sub-band to extract a new set of statistics which can differentiate between cover and stego images.

Keywords—Steganalysis; Steganography; Zipf’s law; Zipf Curve; discrete wavelet transform.

I. INTRODUCTION Steganography refers to the science of invisible

communications, unlike cryptography, the goal is to secure communications from an eavesdropper and strive to hide the very presence of the message itself from an observer. Several steganographic techniques for images have been developed and can divided into two types of methods: spatial embedding techniques in which secret messages are embedded into the least significant bits of pseudo-randomly chosen pixels or palette colors (e.g.[1]-[2]) and the transform embedding techniques in which secret messages are embedded by modifying frequency coefficients of the cover image (e.g.[3]-[4] ).

The counterpart of steganography called steganalysis, its aims is the detection of the presence of secret messages and even to extract them. The current steganalytic methods are classifies into two classes [5]: specific steganalysis (e.g., [6]–[7]) and universal steganalysis (e.g., [8]–[9]). Universal steganalysis attempts to detect the presence of an embedded message independently of the embedding algorithm and of the image format. While specific steganalysis approaches take advantage of particular algorithmic details of the embedding algorithm. Many steganalytic methods have been proposed in literature [10-19]. All most all methods are based on that, the steganographic methods leaves statistical artifacts on an image, which could be used to distinguish between stego and cover images. For example, in [12], authors assume that steganography affects the histograms of the images, which they measure via the center of gravity of the characteristic function of the RGB probability density functions (pdf). Farid in [11] assumes that correlation across wavelets bands is

affected, while Avcibas et al. demonstrate that image quality metrics are perturbed [10]. In [14], shows that nth moments of wavelet of characteristic function are related to the nth magnitude of the derivative of the corresponding wavelet histogram and hence is sensitive to data embedding. Fridrich et al. assume that histogram of DCT coefficients are modified [19]. In this paper, in order to capture these statistical artifacts and hence to determine the presence of hidden messages, we propose a s et of statistics extracted from wavelet sub-bands and based on Zipf’ law. The basic idea is that, the general shape of Zipf curve varies in an important way according to the content of wavelet sub-band and any steganographic manipulation it will alter this latter.

The rest of this paper is organized as follows. Section 2 presents an introduction of Zipf’s law and the existing methods which used this later in image. A review of Farid’s steganalytic method is given in section 3. The proposed method is detailed in Section 4. The Experimental results of the proposed method are presented in Section 5. Finally, the paper is concluded in Section 6.

II. ZIPF’S LAW STATEMENT

Zipf’s law is an empirical law described by G.K Zipf in [20], also known as the “principle of least effort”. It is deal with the statistical distribution of appearance frequencies of patterns. The example described by Zipf is the frequency of words in the English language. The idea of Zipf’s law is based on a set of topologically organized symbols; the n-tuples of symbols do n ot follow a random distribution. A power law appears when the frequencies are ordered in a d ecreasing order denoted . This can be described by the following expression:

(1)

Where is the frequency of the symbols numbered r, is the rank of the symbols whose sorted in the decreasing

order and C is a constant. The parameter α characterize the power law. If the frequency over rank graphic plotted in a double-logarithmic scale graph, the result is a straight line. Several methods have been used Zipf’s law as an analysis tool for images. The majority of these methods consists in studying directly spatial domain like Artificial object detection in

89 © IT4OD 2014

Page 96: IT4OD 2014 Proceedings

natural environments [21],Compressed Image Quality and Zipf’s Law[22] and power law models in detecting region of interest[23].

The elements used to verify Zipf’s law are small sub-squares of an image. Each pattern is a 3x3 matrix of adjacent pixels coded using the general rank method [24]. In this method, the grayscale levels of the pattern are ordered in the increasing order and a number is affected to each pixel according to its rank in the local grayscale order as shown in figure 1.

(a) (b) Fig. 1. Original pattern (a), coded by general rank method (b)

To plot the Zipf curve of an image which is based on patterns distribution, the image is scanned with a 3x3 mask and each pattern is stored in a two-dimensional dynamic array containing, for each pattern, the rank of pattern and its number of occurrences in the image. If a new pattern is not in the array, it will be added at the end, else the number of occurrences of the current pattern is increased by 1. When the pattern counting is completed, the array is sorted in the decreasing order. If the frequency over rank is plotted in a double-logarithmic scale diagram, the result is a Zipf curve as shown in figure 2.

Fig. 2. Zipf curve of image Cameraman To date, the only application have been proposed in

frequency domain is for analyzing an acoustic signal based on Zipf’s law [25, 26]. This method consists to extract a set of parameters based on Zipf’s law to characterize and detect signal regions of interest. The audio signals are computed in continuous wavelet transform, using k different values of the scale factor. Each position is associated with a set of k coefficients, called profile and defined as follow:

=

When these profiles are computed, a model coding is proposed, which consists in converting these profiles into word to obtain a text. The text obtained is divided into sub-texts in order to detect and quantify signal regions of interest. These sub-texts are then analyzed by the Zipf’s law. Authors are note that, the Zipf’s curves of two regions of a signal can be split into two parts. The first one corresponding to first

ranks is non-linear, contrary to the second one which is almost linear. In this method, analyzing an acoustic signal consists to study the evolution of curve’s slope of the two parts of Zipf curves.

III. REVIEW OF FARID’S WORK

The wavelet transform is a multi-scale transformation of image data that can be viewed as giving spatial location of frequency content. Many natural-scene image data display strong correlations between the scales in a multi-scale decomposition. Farid in [11] exploited the nature of these statistical regularities when he used three different SVMs (linear, non linear and one-class with six hyperspheres) to detect steganographic content in images using three different embedding Outguess, F5 and Jsteg algorithms. He started to decompose an image with separable quadrature mirror filters. This is accomplished by applying separable low-pass and high-pass filters along the image axes and generating a vertical, horizontal, diagonal and low-pass sub-band. For each subband, higher-order moments, including mean, variance, skewness and kurtosis, were computed at each of the first 3 levels on each subband image. Note that at each level, there are 3 sub-band images, so we obtain 3 ×3 × 4 = 36 feature values. A second set of feature based on the errors in a linear predictor of coefficient magnitude is computed. For example, the coefficient of the vertical subband Vi

(x, y) can be predicted in by:

(2) Where the wi

For each subband type (vertical, diagonal, and horizontal), the expression can be written in matrix form. For example, for the vertical subband, we write

’s are the unknown scalar weighting values, i denotes the scale or level value, and (x, y) denotes the pixel location in the image sub-band.

(3) and then the unknown variables w are solved for, using the least mean square solution

(4)

Finally, the log error in this predictor is given by

(5) Thus, four moments of the log error of three high frequencies Sub-band coefficients at each scale were collected as total 12 features. For 3-level decomposition, we can obtain 36 statistic moments of the log error, yielding a total of 72 statistics. Results of experiment showed that these features have a good performance at discriminating cover and stego images.

255 107 20 40 25 39 25 12 8

7 6 2 5 3 4 3 1 0

90 © IT4OD 2014

Page 97: IT4OD 2014 Proceedings

IV. PROPOSED METHOD

Zipf’s law is used to modeling the distribution of patterns in an image [27]. In this section, we propose an efficient universal steganalytic method to distinguish between stego and cover images using wavelet decomposition and based on Zipf’s law.

A. Model Encoding of Wavelet Sub-Bands In our model encoding we have used the general rank method [24] to coding the wavelet sub-bands coefficients. This method consists, to number the wavelet coefficients inside block N × N according to the children coefficients classified in the order ascending of their value by affecting the same rank when the wavelet coefficients are the same values. We assign the value 0 to the lowest wavelet coefficient, and we increment this value of a unit whatever the relative variation between two consecutive coefficients. We have used the general rank method for two reasons: 1) The wavelet coefficients in scale n are not organized in a random way, where they depend to their parents in scale n-1, 2) The choice of the size and the nature of patterns (square or linear) depends to the parent–children relations across sub-bands [28, 29], 3) and the general rank method interest to the weak variations of wavelets coefficients.

Finally, to plot the Zipf curves of each sub-band, patterns are stored in a two-dimensional dynamic array containing, for each pattern, the code of pattern and its number of occurrence in sub-band. Then, sub-band scanned with an n x n m ask, n depend to parent–children relations across sub-bands, and each pattern is compared with patterns already contained in the array. If a new pattern is not in the array, it will be added at the end, else the number of occurrences of the current pattern is increased by 1. When the pattern counting is completed, the array is sorted in the decreasing order. B. Analyzing Zipf Curves Changes of sub-bands

Analyzing a wavelet sub-band using Zipf’s Law is defined as follows:

a) Coding the patterns using the general rank method and

assigning to each pattern distinct its frequency of appearance in the sub-band.

b) Classified these patterns in the decreasing order of their frequency of appearance.

c) Representation in a log-log plot of frequency vs. rank, this later is called the Zipf curve. The result is a set of points aligned on a line whose slope is equal to – α according to the formula (1).

For a wavelet decomposition with scales S = 1… n, we obtain n-1 Zipf curves.

First of all, we have starting our analysis by studying the Zipf curves changes of wavelet sub-bands of cover image. The image decomposition employed here is Haar wavelet.

Three different examples of images presented in figure 3.The first image contain smooth areas (image plane), second image contain details like edges (image Baboon) and the last

image (image Lena) combine between smooth and edges areas. The Zipf curves of each sub-band in second scale associated to these three images can be seen in figure 4.

Image plane (a) image Baboon (b) image Lena(c) Fig. 3.Tested images

(a)

(b)

(c) Fig.4.Zipf curves of sub-bands (Horizontal, Vertical and Diagonal) in second scale of images: Plane (a), Baboon (b) and Lena (c)

From figure 4, it can be seen that the Zipf curve of wavelet

sub-band is construct of two parts; the first curve (linear part) presents the patterns which have the same frequencies of distinct patterns, these patterns correspondent to the lowest wavelet coefficients in each sub-band. However, patterns which contribute to the second curve (nonlinear part) correspondent to the highest wavelet coefficients in each sub-band (details presents in image).

91 © IT4OD 2014

Page 98: IT4OD 2014 Proceedings

In second step of our analysis of Zipf curves of wavelet sub-bands (H, V, D), we assume that any steganographic manipulation on a wavelet sub-band will be alter the statistical patterns distribution. With an embedding rate 0.1, a s ecret message was embedded into the cover image Lena, using Jsteg [30] (Jsteg is freely available algorithm, it takes as input an image in a bitmapped format and returns a stego image in jpeg format).

Figure 5 show the Zipf curves of each wavelet sub-band of cover and stego image Lena which can be interpreted by different repartition of patterns in sub-bands especially in their nonlinear curve of the Zipf curves which corresponds to the highest wavelet. Also, it can be seen that, the LSB steganography modify various statistical characteristics of Zipf’s law like the most frequency of pattern present in sub-band, the total number of distinct patterns, the rank of each distinct pattern and the slope α of Zipf curve which leads to the modification of Zipf curve as shown in figure 5.

(a)

(b)

Fig.5. Zipf curves of sub-bands (V, H and D) of cover (a) and stego image (b) Lena

C. Feature Extraction Application of Zipf’s law allow us to extract a set of

statistics from Zipf curves like: the total number of patterns present in sub-bands, the distinct number of patterns, the rank of each pattern, the slope of the straight line, the ordinate at origin of Zipf curve, the area under Zipf curve and the entropy.

Our feature vector is composed, firstly, of four features based on Zipf’s law which they are defined as follows:

The Ordinate at origin. The ordinate at origin of Zipf curve design the highest frequency of pattern in sub-band. For example the ordinate at origin of Zipf curves associated to vertical, horizontal and diagonal sub-bands, figure 7, of cover and stego image Lena are shown in table I.

TABLE I. VALUES OF THE ORDINATE AT ORIGIN OF ZIPF CURVE OF EACH SUB-BAND IN BOTH COVER AND STEGO IMAGES

Vertical

sub-band Horizontal sub-band

Diagonal sub-band

Cover image 2.4757 2.3054 2.3096 Stego image 2.95 2.75 2.81

It can be seen in table 1 that the ordinates at origin of Zipf curves associated to sub-bands of stego image have increased compared to those of cover image.

Entropy: The entropy permits us to measure the uniformity of Zipf curve distribution. Let the entropy defined by Caron and Al [23] as follow:

(6) In this formula, I (ƒ) represent the number of distinct patterns having an equal frequency of appearance to ƒ, F present the total number of patterns frequencies in sub-band and R is the distinct patterns presents in sub-band. The values of entropy are between 0 and 1, it be maximal when all patterns have the same frequencies, it be minimal when the relative frequencies of different patterns equal to 1.This definition of entropy gives more important weight to the highest wavelet coefficients (distinct patterns). Table II, shows the values of the entropy after the embedding operation. For stego image the entropy values are decreased which can be interpreted by the existence of a lot of patterns which have a different frequencies in sub-bands.

TABLE II. VALUES OF THE ENTROPY OF EACH SUB-BAND IN BOTH COVER AND STEGO IMAGES

Vertical sub-band

Horizontal sub-band

Diagonal sub-band

Cover image 0.7813 0.7937 0.7937 Stego image 0.6679 0.5478 0.6105

The slope P: The third feature is a measure of the curve

slope; it i s computed by least-square regression method according to the formula (3).

(7)

92 © IT4OD 2014

Page 99: IT4OD 2014 Proceedings

This value depends generally of the quality alignment of the Zipf curve, i.e., adequacy of the Zipf’s law to the sub-band. Table 3, shows the values of the slope P of Zipf curves in each sub-band of cover and stego image.

TABLE III. VALUES OF THE SLOPE P OF ZIPF CURVE OF EACH SUB-BAND IN BOTH COVER AND STEGO IMAGES

Vertical

sub-band Horizontal sub-band

Diagonal sub-band

Cover image -2.4174 -1.9859 -2.2949 Stego image -2.3227 -1.8078 -2.0104

We can notice that, the slope P values obtained from each sub-band of cover and stego image are significantly different. This can be interpreted by the different repartition of pattern distributions of sub-bands.

The area under Zipf curve: Another feature that can be used in the proposed method is the area under Zipf curve (AUZC). It is computed with formula defined in [22] as follow:

(8) Where, is the logarithm of pattern frequency i and r is the logarithm of the rank of each pattern.

TABLE IV VALUES OF THE AREA UNDER ZIPF CURVE OF EACH SUB-BAND IN BOTH COVER AND STEGO IMAGES

From Zipf curves of sub-bands of cover and stego image, we have computed the area under Zipf curve (AUZC), we have

observed that the area under Zipf curve increase when there is a hidden message in an image as shown in table 4. The remaining four features consist of the mean, variance, skewness and kurtosis. Finally, our proposed feature vector is computed at each 3 levels. Note that at each level, there are 3 sub-band images, so we obtain 3 × 3 × 8 = 72 feature values.

V. EXPERIMENTAL RESULTS In order to evaluate the performance of the proposed

steganalytic method, four experiments are performed here for the cases of 2LSB, Outguess and F5 embedding. We have used 1400 i mages, downloaded from UCID database at http://www.vision .com; originally very high resolution color image, we reduced them in size to approximately 600×400 pixels and converted them to grayscale ones. For obtaining stego images, with different rates p 0.01, 0.05, 0.1, 0.15, secret messages have been embedded into images using, separately, 2LSB, Outguess and F5 embedding, resulting three groups of stego images. The 2 LSB technique operates in the spatial domain, but the second set of techniques which include OutGuess [3] and F5 [31] operates in the JPEG domain, therefore we have compressed the image dataset to JPEG format with quality factors ranging from 70 to 90.

In the classification process, we have tested separately

each group of stego images; therefore, we randomly selected half of original images and the corresponding half of stego-images for training and the remaining half pairs of the cover images and stego-images. For comparison reason, we have also implemented the steganalysis scheme proposed by Farid [11]. Then we apply it to the same set of images and the same steganographic methods. The same training and testing procedures are used. All the results are listed in table 5.

TABLE V. PERFORMANCE COMPARISON USING SVM CLASSIFICATION

Vertical sub-band

Horizontal sub-band

Diagonal sub-band

Cover image 15598 15663 15664 Stego image 47115 47279 47285

Farad’s method Proposed method Embedding techniques

Embedding rate p

False positive

False negative Accuracy False

positive False

negative Accuracy

Outguess

0.01 274/700 301/700 58.92% 292/700 313/700 56,78% 0.05 234/700 283/700 63.07% 269/700 288/700 60.21% 0.1 187/700 213/700 71.42% 203/700 241/700 68.28%

F5

0.01 298/700 322/700 55.71% 313/700 356/700 52.21% 0.05 254/700 298/700 60.57% 273/700 311/700 58.28% 0.1 188/700 213/700 71.35% 241/700 267/700 63.71%

2LSB

0.01 318/700 374/700 50.57% 217/700 255/700 66.28% 0.05 283/700 331/700 56.14% 169/700 197/700 73.85% 0.1 257/700 296/700 60.05% 117/700 139/700 81.71%

0.15 229/700 271/700 64.22% 42/700 69/700 92.07%

93 © IT4OD 2014

Page 100: IT4OD 2014 Proceedings

We can learn from table 5 that the proposed method proves superior for 2LSB embedding while Farid’s method proves superior in the case of the F5 and Outguess techniques.

VI. CONCLUSION

We have presented a novel steganalytic method to effectively attack the advanced steganographic methods. A new feature vector based on Zipf’ law has been extracted from sub-bands of discrete wavelet transform to capture the changes between sub-bands in the same spatial orientation (self-similarity). The experimental results have demonstrated that the proposed method is superior for 2LSB embedding while Farid’s method proves superior in the case of the F5 and Outguess techniques.

REFERENCES

[1] J.J. Hansmann, Steganos. Deus Ex Machina Communications. http://www.steganography.com

[2] Brown,”S-Tools for Windows”, Shareware 1994. ftp://idea.sec.dsi.unimi.it/pub/ security/crypt/code/s-tools3.zip (version 3), ftp://idea.sec.dsi.unimi.it/pub/security/crypt/ code/s-tools4.zip (version 4)

[3] N. Provos, “OutGuess – Universal steganography”, http://www.outguess.org/, 2001."

[4] Latham: Steganography: “JPHIDE and JPSEEK”, 1999, http://linux01.gwdg.de/alatham/stego.html

[5] A. Nissar, and A.H. Mir, “Classification of steganalysis techniques : A study”, in Digital signal processing, 2010, 1758-1770

[6] N.F. Johnson, and S. Katzenbeisser, “A survey of steganographic techniques”, in: S. Katzenbeisser, F. Petitcolas (Eds.), Information Hiding, Artech House, Norwood, MA, 2000, pp. 43–78.

[7] J. Fridrich, and M. Goljan, “Practical steganalysis of digital images-state of the art,” in: Proc. SPIE Photonics West, Electronic Imaging (2002), Security and Watermarking of Multimedia Contents, San Jose, CA, vol. 4675, January 2002, pp. 1–13.

[8] T. Al Hawi, M. Al Qutayari, and H. Barada, “Steganalysis attacks on stego images use stego-signatures and statistical image properties”, in: TENCON 2004, Region 10 Conference, vol. 2, 2004, pp. 104–107.

[9] M.U. Celik, G. Sharma, and A.M. Tekalp, “Universal image steganalysis using rate-distortion curves”, in: Proc. IST/SPIE 16th Annu. Symp. Electronic Imaging Science Technology, San Jose, CA, January 2004, pp. 19–22.

[10] Avcibas, N. Memon, and B. Sankur, “Steganalysis using image quality metrics”, in: Security and Watermarking Multimedia Contents, SPIE, San Jose, CA, 2001.

[11] H. Farid, “Detecting hidden messages using higher-order statistical models”, in: Proc. IEEE Int. Conf. Image Process., Rochester, NY, vol. 2, September 2002, pp. 905–908.

[12] J.J. Harmsen, and W.A. Pearlman, “Steganalysis of additive noise modelable information hiding”, in: Proc. SPIE, Electronic Imaging 2003, Security and Watermarking of Multimedia Contents, San Jose, CA, January 2003, pp. 131–142.

[13] W. Lie, and G. Lin, “A feature based classification technique for blind image steganalysis”, IEEE Trans. Multimedia 7 (6) December 2005, 1007–1020.

[14] G. Xuan, et al., “Steganalysis based on multiple features formed by statistical moments of wavelet characteristic functions”, in: Lecture Notes in Computer Science, vol. 3727, Springer-Verlag, Berlin, 2005, pp. 262–277.

[15] A. Madhuri and Joshi, “Digial Image Processing: An Algorithimic Approach”, Prentice Hall of India, New Delhi, 2006.

[16] D. Zou, Q. Yun Shi, W. Su, and G. Xuan, “Steganalysis based on Markov model of thresholded prediction-error image”, IEEE, ICME, 2006.

[17] Q. Yun, and Shi, et al., “Image steganalysis based on moments of characteristic functions using wavelet decomposition”, in: Prediction-Error Image and Neural Network, ICME, 2005, pp. 269–272.

[18] X. ochuan Chen, Y. Wang, T. Tan, and L. Guo, “Blind image steganalysis based on statistical analysis of empirical matrix”, IEEE, ICPR, 2006.

[19] J. Fridrich, M. Goljan, and D. Hogea, “Steganalysis of JPEG images: breaking the F5 algorithm,” in Proc. 5th International Workshop on Information Hiding (IH ’02), pp. 310–323, Noordwijkerhout, the Netherlands, October 2002.T.

[20] Joachims, “Making large-scale SVM learning practical”, in: B. Scholkopf, C. Burges, A. Smola (Eds.), Advances in Kernal Methods – Support Vector Learning, MIT Press, 1999.

[21] G.Z. ZIPF, “Human behavior and the principle of "Least Effort"”, Addison-Wesley, New York. 1949.

[22] Y.Caron, P. Makris and N. Vincent, “A method for detecting artificial objects in natural environments”, RFAI team publication, International Conference on Pattern Recognition ICPR2002, Québec City (Canada), 2002, 600-603

[23] N. Vincent, P. Makris and J. Brodier, “Compressed image quality and Zipf’s law”, International Conference on Signal Processing (ICSP – IFIC-IAPR WCC2000), Beijing (China), 2000, 21-25, 1077-1084.

[24] Y. Caron, P. Makris and N. Vincent, “Use of power law models in detecting region of interest”, Pattern Recognition, Elsevier, (vol. 40), Issue 9, 2521-2529, .2007.

[25] Bi, Asselin and Mraghni: “Spatial gray levels distribution based unsupervised texture segmentation”. In Proceedings of 3rd International Conference of Signal Processing (ICSP96), Pékin (Chine), 1996.

[26] E .Dellandrea, P. Makris, M. Boiron, and N. Vincent, “A Medical acoustic signal analysis method based on Zipf law”, RFAI publication: Accepted at International Conference on Digital Signal Processing, Santorini (Grece), 2002 , vol. 2, p. 615-618

[27] E. Dellandrea, P. Makris, and N. Vincent, “Zipf analysis of audio signals”, Revue Fractals, World Scientific, 2004, Vol. 12, n°1, p. 73-85.

[28] P. Makris and N. Vincent, “Zipf’s law: A tool for image characterization”, IAPR Vision Interface (VI’2000), 262–268.

[29] S. Mallat “A Wavelet tour of signal processing”, ISBN: 0-12-466606- Academic Press, 1999.

[30] A. Said and WA. Pearlman, “A new fast and efficient image codec based on set partitioning in hierarchical trees”. IEEE Transactions on Circuits and Systems for Video Technology, 1996, 243–50.

[31] D Upham. (). Jsteg. Software available at ftp.funet.fi. [32] Westfeld. F5 – “A steganographic algorithm. High capacity despite

better steganalysis”, in: I.S. Moskowitz (Ed.), Information Hiding, Fourth Int.Workshop, in: Lecture Notes in Computer Science, vol (2137), Springer-Verlag, Berlin, Heidelberg, 2001, 289–302.

94 © IT4OD 2014

Page 101: IT4OD 2014 Proceedings

A Cloud Computing model for Algerian universities

Lydia YatagheneUSTHB University

[email protected]

Kahina Ait-IdirUSTHB University

[email protected]

El Abbassia DebaUniversity of Oran

[email protected]

Abdelkader EddoudAUF - Algeria

[email protected]

Abstract—Private cloud is being developed in the universityenvironment. Many institutions are now facing some issues dueto the use of IT infrastructure. The project objective is to builda cloud that is able to meet the needs of Algerian universities.This work is twofold : It first proposes a study of various modelsof cloud computing, and secondly selects and adapts a privatemodel of national inter-universities cloud based on an open sourcesolution. This private cloud essentially offers storage servicesand data sharing based on the use of the OwnCloud product.The extension to this product have been defined : the client-sidesynchronization.

Keywords—Cloud Computing, data sharing, university, opensource, virtualization, synchronization.

I. INTRODUCTION

Undeniably, the internet technology grows exponentiallysince its inception. Fairly recently, a new trend has emerged inthe field of information technology [1], it is cloud computing.Cloud Computing enable users and developers to use serviceswithout knowledge, and without control over IT infrastruc-tures. Because of its increasing popularity, cloud computing isthe most popular term in the business and academic environ-ment. It provides a new solution for the academia environmentto create a unified, open and flexible offering the possibilityof ensuring the confidentiality of data academia.

In order to meet the requirements of students, academicglobalization, the emergence of technologies and energy issues,academic Cloud aims to establish a private or communityCloud which allows us to offer solutions and services thatare both innovative, scalable and suited to today’s practiceand tomorrow [2]. It also helps to support the developmentof digital applications, improve management skills and theservice offered to users while controlling the energy impactof university facilities.

The cloud plays an important role in different areas byproviding infrastructure, platform and services that use theprincipal of virtualization, storage and data synchronization[3].Different services can be set up in universities with theimplementation of Cloud Computing such as:

• The infrastructure to pool the resources of universitiesin order to have a common infrastructure.[4].

• Wear applications in the world of administration andeducation to help manage resources.

• Creating storage and sharing spaces.

• Collaborative spaces for group work.

• Environments dedicated to specialized software (vir-tual machines)

A survey was conducted in Algerian universities, the importantfinding that has been released from this is that Algerianuniversities do not give their students, teachers and researchersaccess to services for collaborative work, and are forced touse servers hosted outside the country which do not provideany information about the safety of the shared information.Therefore, we distinguish a need for Algerian universities inthe establishment of storage and sharing space to enable theacademic community to publish and share information in avery simple manner. This can result in the establishment ofa Cloud Computing solution within universities. To illustratethis, we propose a solution suitable for the Algerian academicenvironment.

Our work focuses on designing a Cloud Computing modelfor Algerian universities. Our approach was to study cloudcomputing, its concepts and technological solutions availableand assess the adoptability of the services offered by the cloudcomputing, by the academia. Our proposal is based on theconduct of an investigation of the uses and needs of academicsto highlight the most requested services. Highlighting theneeds will help to propose a suitable cloud model for Algerianuniversities.

II. CLOUD COMPUTING : DEFINTION, MODELS, TYPES

A. Definition of Cloud Computing

The literature abounds with definitions of Cloud Comput-ing, but the definition of the National Institute of Standards andTechnology (NIST) [5] is considered as the base definition :”The Cloud Computing is the new way of delivering the ITressources, and not a new technology”. The extended definitiongiven by the NIST is: ”It is a model that allows an on-demandnetwork access. The resources are shared and the computingpower is configurable according to the needs. The client canbenefit from high flexibility with minimal management effort”.

More simply, the cloud refers to Internet technologies,it is often represented schematically by a cloud. This isan abstract concept which combines several technologies todeliver services. Its purpose is to encourage companies tooutsource the digital resources they store. These resources offerstorage capacity and computing, software, email management,and other services are provided by third parties and accessiblethrough an identification system via a personal computerand an Internet connection. We are currently witnessing agrowing interest in this new concept of ”Cloud Computing”materialized by increasing research in this area.

B. Service Models of Clouds

Whatever the definition, cloud computing is generallybroken down into three types of services [6]:

95 © IT4OD 2014

Page 102: IT4OD 2014 Proceedings

1) Cloud Software as a Service (SaaS): the client hasthe ability to use applications of the service providervia the network. These applications are accessed viavarious interfaces, thin client, web browser. Sales-force.com et NetSuite are known examples of SaaSproviders.

2) Cloud Platform as a Service (PaaS): The consumermay deploy its own cloud infrastructure applications,as far as the provider supports the programminglanguage. Google App Engine is the main actorproposing this kind of infrastructure.

3) Cloud Infrastructure as a Service (IaaS): Thecustomer can rent processing capabilities, storage,network and other computing resources. AmazonWeb Service Elastic Compute (EC2) and SecureStorage Service (S3) are the main providers of thistype of cloud service.

C. Types of Cloud

Cloud computing is composed of four practices [6] thatembody actually four types of accessibility:

1) Public Cloud: This type of infrastructure is acces-sible to a wide public and belongs to a provider of”cloud services”.

2) Private Cloud: The cloud infrastructure works fora single organization. It can be managed by theorganization itself (internal Private Cloud) or a thirdparty (external Private Cloud). In this case, the in-frastructure is fully dedicated to the company andaccessible via secure VPN-type networks.

3) Community Cloud: The infrastructure is shared byseveral organizations that have common interests. AsPrivate Cloud, it can be managed by the organizationsthemselves or by a third party.

4) The Hybrid Cloud: Infrastructure consists of twoor more clouds (private, community or public) thatremain unique entities but are bound together bystandardized or proprietary technology, enabling theportability of data or applications.

III. PROPOSAL OF OUR SOLUTION

A. To an academic Cloud

The results of the survey conducted as part of this project,led us to consider a proposal for a Cloud Computing adaptedto the needs of the Algerian academic community.One of the main proposed characteristics of the cloud servicesis to offer students access to services anytime, anywhere whileusing any device connected to the Internet via a web interfaceor directly in their explorer, allowing them the use of a devel-opment platform on the university infrastructure, to developtheir applications. Cloud could provide economic benefits andsimplicity of the pool of resources, the performance of storagecapacity, and flexibility of a cloud solution.

The use of Cloud Computing in the University supposes theexistence of some computer elements, such as virtualizationintelligence and system robustness [7], offering efficiency,availability, security, retention activity, scalability, and inter-operability. An important question arises in the choice ofuniversity cloud: what type of cloud should be deployed?

Worldwide, the solutions were chosen according to the speci-ficity of the university, by adopting either the private cloud,hybrid or community. The private cloud model seems mostappropriate for the academic world in general and specificallyfor Algerian universities. At this level, it is desirable that thecloud is managed by the University and can only be accessedby students, teachers / teacher-researchers and academic staff.This brings us to implement a private cloud.

B. Proposed Cloud model for the Algerian Universities

In order to allow Algerian universities to exchange andshare information with each other through Cloud technology,Academic Research Network (ARN) [8] must be exploited toestablish an inter-university Cloud. To this end, we proposethe global model of an inter-university architecture that mustsupport a majority of features of a university Cloud presentedabove . The architecture of the proposed university Cloudincludes a Cloud server at each university; a central server atthe CERIST (Center for Research on Scientific and TechnicalInformation) which ensure synchronization between differentcloud servers and redirects external users to cloud their uni-versity; a redundant server from the central server at AlgeriaTelecom, which provide the same tasks as the CERIST.

The universities’ Cloud servers indirectly communicatewith each other, they pass through the CERIST’s server for anyexchange and sharing of resources. One of the major problemsof cloud computing is the security of the communication anddata; this architecture ensures the security of data stored onlocal and redundant servers on both servers, if a server is notresponding (breakdowns, ...) the other server takes over. Thecommunication between two entities is secure, it is via a virtualprivate network (VPN)

C. The main features of this model

The proposed architecture of academic Cloud aims to makebetter use university resources to ensure a better quality oftraining. As a first goal, we find the storage and sharing of datato provide students with an accessible space directly from theiroperating systems, this therefore requires local synchronizationthat ensures data consistency. In our case, the storage resourcesare directly connected to the ARN network to provide a publicexchange of information space.

The user has the ability to manage its workspace, generat-ing multiple instances of virtual machines from any computersystem. It may therefore:

• attach its storage space to a particular instance,

• save any work even if a particular case is infected bya virus,

• the infection remains in this particular case and doesnot affect other instances,

• find year-end students projects and research work.

As we have already mentioned that the main featuresoffered by a university Cloud are storage and data sharing.That we considered in our proposal of cloud. At this level it isnot to reinvent a new technique or a new tool but to use whatexists and adapt it to the context of use. As the cloud model

96 © IT4OD 2014

Page 103: IT4OD 2014 Proceedings

to implement must support the two main features mentionedabove, and we had to adapt an existing tool, we were led tomake a comparative study of the main tools for storing andsharing data to choose the most appropriate tool for our needs.

D. Comparative study of the main tools (proprietary and opensource currently available)

The adoption of a cloud architecture requires knowledgeof various essential features to educational monitoring. In ourstudy, we noted the importance of storage and data sharing forthe community of higher education. To this end, the choiceof university Cloud solution will depend on basic servicesoffered by suppliers, as well as performance scalability of thesystem. In what follows, we present a comparative study onthe features offered by the tool storage and sharing of datacurrently available and are the most used.

Owners Cloud Computing Products as Windows Azure[9], Amazon EC2 [2] and Dropbox [10] are mature butnot scalable since we can not add their additional featuresand modules. And, as they are commercial products (paymentrequest), the data in most cases are not hosted in private but atsuppliers Cloud. So using these solutions present a safety issuefor individuals who possess confidential data. Also, onlinedata can be used by the organization to provide the user withtargeted advertisements. On the other hand, the organizationproviding the service can take ownership rights over user data,like removing those that prove to be troublesome. Eucalyptus[11] is a mature solution that allows the installation of a cloudinfrastructure such quite easily. However, the goal of cloudcomputing is to facilitate the development, Eucalyptus doesnot allow this. This is why it is now abandoned for othersolutions. OpenNebula is another cloud solution that is flexibleand mature. Its design is very sleek and leaves a lot of freedomto the administrator who would deploy this solution at the priceof an effort to integrate advanced network and other comple-mentary solutions for storage. OpenStack [12] solution is stillyoung but has great potential according to its architecture andcommunity and the support of its partners. It is therefore asolution to monitor because we believe that it can become thereference solutions of open-source source Cloud Computing.OwnCloud [13] is an open-source solution, flexible, scalableand mature. it offers several interesting features using protocolsthat promote its use. For much more private cloud, manycompanies and even individuals adopt it.

E. Presentation of a OwnCloud

OwnCloud is a project of the KDE (K Desk Environment)family under the AGPL license (Affero General Public Li-cense) which started in 2010, it aims to be a free alternative topropriety online storage solutions. It allows the use of onlinestorage services such as Amazon S3 or Google, or to simplydrop the data within a local server with the advantages ofremote storage server (accessible from a computer as well asfrom a PDA, from home or from outside), but with all thecontrol over private life.

OwnCloud is Open Source, this means that individualshave the ability to use OwnCloud without refereeing to thepublisher. Participation in the development of OwnCloud, fixespropositions, improvement are possible. OwnCloud uses a web

interface to view, share and edit data based on the use ofstandards such as: WebDAV, CardDAV, CalDAV, Ampache.

In order to study the source code of OwnCloud closely,using the method of reverse engineering, we have convertedthe XMI file using Argouml tool, we have been able to viewthe necessary diagrams for a proper understanding of thefunctioning of OwnCloud.

F. OwnCloud Extension

1) Synchronizing local client with the server in OwnCloud:The architectural model of academic Cloud proposed in thisproject will allow users to have an offline access to shareddata. Server storage and sharing in this cloud is OwnCloud,which has a lot of features but has some shortcomings, thatthe most important is the synchronization of local machineswith the cloud server. Given a cloud storage server, reachableby machinery, we explain the principle of synchronization asfollows [14]: Through the heterogeneous network, the nodes(clients) are connected indirectly to each other. A master node(cloud server) is used to preserve, apply and transfer modifiedcopies by a client. All client nodes are synchronized with themaster node to implement indirectly directory synchronizationwith other nodes, as shown in Fig.1. The heart of the system isthe directory synchronization between the client and the masternode.

Fig. 1. Principle of synchronization in the cloud

Depending on how the file changes are detected duringsynchronization, there are two main methods of synchronizingdirectories (at this level, [15] a directory is considered as oneof the files). One method is to compare the state of the filesystem with current status of the last synchronization. Theother method is to track all user operations to explore all filechanges. The proposed synchronization solution combines twomethods, and runs in user space. A monitoring program runscontinuously to monitor the operations of the user, then thecomparison method is used to discover changes. As the methodof comparing the file status is adopted in our synchronizationprogram, then a file that keeps the state of the file systemafter the last synchronization is needed, and is called ”Imagefile”. After synchronization, the contents of image for eachnode will be kept compatible with the state of the local filesystem. The directory structure and files will be synchronized.The clock at the nodes is not synchronized, the creation time,

97 © IT4OD 2014

Page 104: IT4OD 2014 Proceedings

last modification date and some other attributes of the filesmust be synchronized, otherwise it is a source of confusionfor the user after synchronization file attributes. Identificationand elimination of conflicts is one of the fundamental questionsfor synchronizing multi-node directories.

2) Synchronization: Principle and working : The proposedsynchronization solution ensures consistency and replication ofdata between the different clients and different server, detectingconflicts caused by simultaneous modification. This solutioncomes in three phases:

1) Preprocessing phase:It is to verify the existence of changed at the clientand server. If the file does not exist, then we copy itdirectly, otherwise it is a modification and conflictdetection necessary. So we appeal to the conflictdetection algorithm.

2) Conflict detection phase (Algorithm):This phase is used to detect changes in conflicts atthe client node and the server node.

3) Conflicts Fixing:A modification to a node that has not been sent toanother node (working offline) creates a conflict. Wepropose the following solution that will correct theconflict :

• Create a ”log” directory in the server,• move the file version (mirror file) that exists

at the client node to the ”log” directory,• copy the file version that exists at the server in

the client directory (so that the modificationsare not definitively lost).

Presentation of the conflict detection algorithm

The process of conflict detection is always launched afterediting a file. Editing a file is detected through the file version(when editing a file, its version is incremented). A file isrepresented by a triplet [ci, cv, lv ] where :ci : identifier of the node that updates,cv: current version of the file,lv : last version in the server.

Two cases may arise for the detection and management ofconflicts due to a change of files:

Change detection on the server side:

The principle of detecting a change in a file at the servercan be explained as follows:

Client Side Modification Detection

The principle of detecting a change of the file at a clientmay be explained as follows:

IV. RELATED WORK:

The advantages of using Cloud Computing in academia aswell as features minimizing costs are ignored by users.In [16], Bharati Ainapure et al. present a study of thedeployment of private Cloud in a technical institute. Thus,the main objective of the prototype presented is: managingthe technology needs of universities such as the deliveryof software, provision of platform development, data storageand computer effectively. The private cloud is built usingeucalyptus technologies. But it does not provide some featuresthat are specific to the environment as university after testingeucalyptus we believe that this is not a fully secure system.In [17], Zhang Tao et al. show that the emergence of cloud

98 © IT4OD 2014

Page 105: IT4OD 2014 Proceedings

computing provides a new teaching networking solution. Tak-ing into account the characteristics of cloud computing, theybuilt a combined educational network using Cloud Computing.So far the system has achieved good results. In Heilongjiang,the use of this system continues, and tests are being carried tocheck the stability and scalability of the system.The E-Learning and Web 2.0 learning have totally changedthe education system. Teachers and students can work togetheronline without necessarily being at the university. Educationhas never been so easy. In [4], Ajith Singh et al. discuss theidea of cloud computing, the problems it tries to address, andits implementation in the university environment.Cloud computing from a computer management perspective,reduces dramatically costs, including management of energyresources, cooling and system management, while driving theuse of servers and software licenses, which in turn reduces thepurchase needs.Few researches are carried to investigate the academic cloud.Many managers in small firms and universities are not awareof the benefits of cloud computing. IT companies are keento encourage the adoption of cloud computing education,for example, Google has developed a cloud-based GoogleApps for its use in education [18], IBM launched the IBMCloud Academy which provides a global forum for educators,researchers and professionals in the education industry topursue cloud computing initiatives, develop skills and sharethe best ways to reduce costs operations while improving thequality and access to education [19].

In the same way, the private cloud based open-source canbe adopted in technical institutes. It does not have to investin new infrastructure. The university can create instances ofthe machine on the fly and create an infrastructure as needed.This allows significant savings in annual costs. ProgressiveInfotech, a leading independent provider of IT infrastructuresolutions and services, has implemented a private cloud at theIndian Institute of Technology (IIT) of Delhi [20]. CarnegieMellon University uses HP Converged Infrastructure approachto build their private cloud network by installing HP Blades, arise of storage and Virtual Connect. The University of WesternAustralia has launched a 18-month project to consolidate about1, 000 disparate servers to a platform in private cloud centersAmcom data [21].

UnivCloud is a concept of community cloud inter-university, selected by the French government, ensuring shar-ing of information systems infrastructure to support the host-ing services and the development of institutions of highereducation and research. 14 member universities of UNPIdFparticipated in the first study phase of 18 months devotedto the analysis of the needs, the architecture and to thekey technology choices. In 2013, a demonstration model willassess the potential of community infrastructure and to beginconstruction.

V. CONCLUSION

The paradigm of cloud computing is a new approach toproduce a solution to old problems. This paradigm offersmany benefits to businesses, industries, and universities. Thedeployment of private cloud for a university campus has manyadvantages such as giving each user has their storage space inthe cloud and can take advantage of the services offered.

By reusing existing IT infrastructure, it is not thereforenecessary to invest in additional hardware. Some foreignprojects cloud computing have emerged or are in progress foreducational use.

The main objective of the presented prototype is to managethe technology needs of universities such as storage andsharing of data efficiently, and ensuring data security. Theprivate cloud is built using technologies of OwnCloud, but itdoes not provide some features that are specific to the needs ofthe university population as synchronizing the local computerwith the cloud server, and server provisionning.Thus, our contribution in this project focused on the proposalof a inter-universities private cloud architecture. It mainlyoffers private cloud storage services and data sharing basedon the use of the product OwnCloud.

An extension product was defined: the client-side syn-chronization (synchronization algorithm). Future work couldinclude: Load balancing at the server level (scheduling algo-rithm).

REFERENCES

[1] Ian Foster, Yong Zhao, Ioan Raicu, and Shiyong Lu. Cloud Computingand Grid Computing 360-Degree Compared. In Grid ComputingEnvironments Workshop, 2008. GCE &#039;08, pages 1–10. IEEE,November 2008.

[2] Tuncay Ercana. Effective use of cloud computing in educationalinstitutions. social and behavioral sciences, pages 939–942, 2010.

[3] Mladen A. Vouk. Cloud Computing - Issues, Research and Implemen-tations. CIT, 16(4):235–246, 2008.

[4] Ajith Singh N and M. Hemalatha. Cloud Computing for Academic En-vironment. In International Journal of Information and CommunicationTechnology Research, pages Vol2, No.2, 97–101, 2012.

[5] Peter Mell and Timothy Grance. The NIST Definition of CloudComputing. Technical Report 800-145, National Institute of Standardsand Technology (NIST), 2011.

[6] T. Sridhar. Cloud Computing. The Internet Protocol Journal (IPJ),12(3):2–19, 2009.

[7] Mehmet Fatih Erko and Serhat Bahadir Kert. Cloud Computing ForDistributed University Campus: A Prototype Suggestion. June 2011.

[8] Portail ARN. http://www.arn.dz/.[9] Windows Azure: Plateforme Cloud de Microsoft.

www.windowsazure.com/.[10] Marinela Mircea and Anca Ioana Andreescu. Cloud Computing Uni-

versities are Migrating to The Cloud for Functionality and Savings.[11] Daniel Nurmi, Rich Wolski, Chris Grzegorczyk, Graziano Obertelli,

Sunil Soman, Lamia Youseff, and Dmitrii Zagorodnov. The eucalyptusopen-source cloud-computing system. In In Proceedings of CloudComputing and Its Applications [Online, page 2008.

[12] OpenStack Open Source Cloud Computing Software.www.openstack.org.

[13] ownCloud. www.owncloud.org/.[14] Sundar Balasubramaniam and Benjamin C Pierce. What is a File

Synchronizer? In Proceedings of the 4th Annual ACM/IEEE Interna-tional Conference on Mobile Computing and Networking, MobiCom’98, pages 98–108. ACM, 1998.

[15] BAO Xianqiang, XIAO Nong, SHI Weisong, LIU Fang, MAO Huajian,and ZHANG Hang. SyncViews: Toward Consistent User Views inCloud-based File Synchronization Services. In Chinagrid Conference(ChinaGrid), 2011 Sixth Annual, pages 89–96, 2011.

[16] Deven N. Shah Bharati Ainapure, Sukhada Bhingarkar. Design ofPrivate Cloud for Educational Sector using Eucalyptus. In nternationalJournal of Advances in Computing and Information Researches, pagesVol 1, Issue 1, 2012.

99 © IT4OD 2014

Page 106: IT4OD 2014 Proceedings

[17] Zhang Tao and Jiao Long. The Research and Application of NetworkTeaching Platform Based on Cloud Computing. In International journalof Information and Education Technology, pages 231–234, 2011.

[18] Tara S. Behrend, Eric N. Wiebe, Jennifer E. London, and Emily C.Johnson. Cloud computing adoption and usage in community colleges.Behaviour Information Technology, 30(2):231–240, 2011.

[19] IBM Press++. (2009, November 4). IBM Press Room.Retrieved March 21, 2012, from IBM: http://www-03.ibm.com/press/us/en/pressrelease/28749.wss.

[20] Press Coverage, Information Week Magazine.www.informationweek.com, April 2012.

[21] itnews for Australian Business. UniWA consolidates to private cloud,March 2012.

100 © IT4OD 2014

Page 107: IT4OD 2014 Proceedings

AFuzzyChoq: A Multi Criteria Decision Method for Classification Problem

Salsabil Goucem University of Tebessa,

Computer science department, Tebessa, Algeria

[email protected]

Saddek Benabied University of Tebessa,

Computer science department, Tebessa, Algeria

[email protected]

Hakim Bendjenna University of Tebessa,

Computer science department, Tebessa, Algeria

[email protected]

Abstract: Multi-criteria analysis of decision aid is a major area of research among its main objectives is to facilitate the missions and tasks ranking and arrangement; to achieve this objective there are many multi-criteria decision aid method where each method has strengths and weaknesses; allows the decision maker to express his preferences and his requirements and at the same time it allows to take into account the interaction among the criteria. In other words the existing methods manipulate the criteria as independent but in reality they interact. To bring this goal, that means helping the decision maker to make decisions based on criteria but considers that these criteria are interacting. We present in this paper, a multi-criteria decision aid method for Classification Problem called AFuzzyChoq. AFuzzyChoq is based on: - AHP method to calculate the weights of the criteria wherein each criterion is taken independently of the other, -the fuzzy measure to consider the interaction of criteria and calculate the weight of each subset criterion and - the Choquet integral as an aggregation operator. In order to support and facilitate the use of AFuzzyChoq we tried to develop an appropriate tool to the proposed method. This research also tested and discussed our proposal using an illustrative example of a real selection problem (prioritize candidates of job contest on the basis of the certificate) in Algeria is presented.

Keywords: multi-criteria decision, analytical methods multi-criteria, interactions of criteria, AHP, Integral Choquet, classification problem.

I. INTRODUCTION

To take the best decision and determination of the optimum is the desire and purpose of any director and responsible in a direction, a company or any position where decision making is important. Operational research is consistent and meets this challenge with its techniques and methods. But, then this discipline finds problems to do this mission correctly. We recall the most important; the thing known to man is that he takes the subjective side in its decisions and this lack of operational research because it takes only the objective side.Operational research mathematically well-posed but does not present well the reality, techniques and methods of operations research work according to one criterion (the rare case of reality) and to optimize an objective function. Another problem the operations research is always seek to one optimal solution or near optimal. Another approach emerges to solve

these problems and achieve the main goal is the multi-criteria analysis for decision aid.

“The multi-criteria decision aid aims, as its name suggests providing tools to make decision him allowing to it to progress in solving a decision problem where multiple views, often contradictory, must be taken into account“[1]

MCA in fact provide the means of performing complex trade-offs on multiple evaluation criteria, while taking the DM’s preferences into account. [2].We use in our process: The AHP method to decompose the problem into a hierarchical structure and calculate the weights of criteria wherein each criterion is taken independently of the other. These weights allows decision makers according to his views to express the importance of each criterion (to express preferences and requirements); Using fuzzy measure to consider the interaction among the criteria and calculate the weight of each subset criterion; Choquet Integral as aggregation operator to aggregate the evaluations of alternatives according to the classification criteria to get an overall evaluation allows the ranking of alternatives.

After the Introduction Section, the paper is organized as follows: the subsequent section contains background for the analysis multi-criteria for decision aid, Analytical Hierarchy Process AHP, The fuzzy measure and the Integral Choquet. Next in section 3, the classification method proposed AFuzzyChoq. Later in section 4, an illustrative example of distribution of the new jobs followed by the conclusions and further research directions in sections 5.

II. BACKGROUND In order to be as far as possible self-contained, we give in

this section necessary introduction and definitions for multi-criteria decision making, introduction and definitions for AHP method, Choquet integral and λ-fuzzy measure.

A. Multi-criteria decision analysis

1) Definitions According to Bernard Roy: “The decision support is the

activity of one who, building on models clearly explained but not necessarily clearly formalized, helps to get some answers to questions that arose involved in a decision process, elements intersecting at inform the decision to prescribe and normally,

101 © IT4OD 2014

Page 108: IT4OD 2014 Proceedings

or simply to promote, conduct likely to increase the coherence between the evolution of a process on the one hand, the objectives and value system in whose service this speaker is placed to On the other hand“ [3]

Also the multi-criteria analysis problem can be defined [4] as (AL,f), where АL is a finite feasible set of alternatives AL = a1, a2,... anand f is a vector-valued (k -dimensional) criterion f = f 1, f2,... fn For an alternative a ∈ AL, fj (a), j∈ 1,..., k, represents the evaluation of the j-th criterion. Each criterion fj is assumed to be either maximized maxa∈AL fj (a) or minimized mina∈AL fj (a). The notation aij = fj( ai) may also be used to denote the j-th criterion value for alternative ai . The matrix A=aij

2) Methods of Multi-criteria Analysis

, i=1,...,n; j = 1,...k is denoted as a decision matrix.

The field of multiple criteria decision analysis offers the Decision Maker (DM) a selection of methods and operational tools that explicitly account for the diversity of the viewpoints considered. The common purpose of these methods is to evaluate and choose among alternatives based on multiple criteria using systematic analysis that overcomes the limitations of unstructured individual or group decision making [5], [6]. Many MCDM methods have been proposed in the literature. Unfortunately, there is no method for choosing among them the most appropriate for a given decision problem, the choice remaining a subjective task. Furthermore, each method may product different rankings [7]. Given these drawbacks, it is suggested the use of more than one MCDM method in order to enhance the selection process. [8]

The following main categories of problems are considered on the basis of MCDA [6]: Sorting alternatives into classes/categories (e.g., ‘‘unacceptable,’’ ‘‘possibly acceptable,’’ ‘‘definitely acceptable,’’ and so on);

• Screening alternatives—a process of eliminating those alternatives that do not appear to warrant further attention, that is, selecting a smaller set of alternatives that (very likely) contains the ‘‘best’’/trade-off alternative;

• Ranking alternatives (from ‘‘best’’ to ‘‘worst’’ according to a chosen algorithm);

• Selecting the ‘‘best alternative’’ from a given set of alternatives; and

• Designing (searching, identifying, creating) a new action/ alternative to meet goals.

The main families of methodologies include:

1. Outranking methods, such as the Elimination and choice Reflecting the Reality (ELECTRE) family [9], [10], the Preference Ranking Organization Method for Enrichment Evaluation (PROMETHEE) I and II methods [11], and Regime Method Analysis [12];

2. Value or utility function-based methods, such as the Multi-Attribute Utility Theory (MAUT) [13]; the Simple Multi-Attribute Rated Technique (SMART) [5]; the Analytic

Hierarchy Process (AHP)[14]; and the most elementary multi-criteria technique, the Simple Additive Weighting (SAW); and

3. Other methods like Novel Approach to Imprecise Assessment and Decision Environment (NAIADE) [15], Flag Model [16], Stochastic Multi-objective Acceptability Analysis (SMAA) [16].

Each method constructs first a m odel of decision makers' preferences and then exploits this model in order to work out a recommendation.

B. The analytical hierarchy process method The Analytical Hierarchy Process (AHP) developed by

Thomas Saaty is probably the best known and most widely used MCA approach. [17][14][18].AHP helps capture both subjective and objective evaluation measures, providing a useful mechanism for checking the consistency of the evaluations thus reducing bias in decision making [19].AHP is a rigorous methodology which is divided into a series of important steps: construction of the hierarchy, priority setting and checking the logical consistency of the analysis. [20]. The AHP method can be described in 5 steps [21]:

• Step 1: Problem definition. In this step we define the problem goal (objective).

• Step 2: Graphical representation of the problem. This step is divided into three sub-steps: state the objective (according to goal encountered in step 1), define the criteria and choose the alternatives.

• Step 3: Establish priorities. Pair wise comparisons are used to estimate the ratio of relative importance of two alternatives in terms of the criteria. To accomplish this, Saaty uses the scale [1..9] to rate the relative importance of one criterion over another, and constructs a matrix of the pair wise comparison ratings. If a criterion is less important than the other, then the inverse preference is rated in the scale 1, 1/2, 1/3, …, 1/9 [14].

• Step 4. Synthesis. In this step we calculate the priority of each alternative solution and criteria being compared. Several mathematical procedures can be used for the synthesis, for example eigenvalues and eigenvectors or a simple averaging [14].

• Step 5. Consistency. The quality of the decisions is guaranteed through a measure of consistency of pair wise comparison judgments by computing a consistency ratio (CR):

CR=CI\RCI. (1)

Where: CI represents the consistency index; RCI gives the random consistency index. RCI is an average random index derived from a sample of size 500 of randomly generated reciprocal matrices [22] and depends on the number of elements being compared (see Table 1). CI is calculated using:

CI=(ƛmax-n)\(n-1). (2)

102 © IT4OD 2014

Page 109: IT4OD 2014 Proceedings

Where: n is the number of items or alternatives being compared; ƛmax

A.W\W=CV. (3)

is calculated using:

Where: A represents the pair wise comparison matrix; W the priority vector of alternatives with respect to a certain criteria. And CV the consistency vector.

CR is designed in such a way that values of the ratio exceeding 10% are indicative of inconsistent judgement; in such cases, the decision maker would probably wants to revise the original values in the pair wise comparison matrix [22].

TABLE I. RCI values per number of compared items [22]

N 1 2 3 4 5 6 7 8 9

RCI 0 0 0.58 0.90 1.12 1.24 1.32 1.41 1.45

C. Interacting criteria, fuzzy measure and Choquet integral A common method to evaluate criteria set is to use an

aggregator operator to reduce the multi-criteria problem into a single global criterion problem by aggregating all the elements [23]. A traditional method uses a weighted sum (or weighted mean) [24]. This is a simple approach; however, despite its simplicity it has a drawback in that it assumes that the criteria are independent. If the criteria can interact with each other, the weighting factor must be replaced by a set function on set of criteria, which not only considers the weighting factor on each criterion but also weighting on each subset of criteria [23]. Reference [25] gives an overview of different types of interaction among criteria that could exist in the decision making problem. Three kinds of interaction defined and described in [25] are as follows: correlation, complementary, and preferential dependency. For example, consider the problem of evaluating a given car based on three criteria fuel efficiency, luxury, and price. A highly luxurious car generally comes with a higher cost. In this case, luxury and price form positive correlating criteria, and the evaluation will be an overestimate [23]. Clearly, when such complex interactions exist among criteria, it is necessary to use a w ell-defined weighting function on a subset of criteria rather than a single criterion during global evaluation. One such methodology for evaluation is the Choquet integral with the use of fuzzy measure as a weighting function. Choquet Integral was introduced by Choquet (1954) based in the theory of Fuzzy measures. The use of the Choquet integral to decision support systems on several industrial applications has been proposed by many authors [26]. In comparison to other multi-criteria analyses techniques, Choquet integral has two characteristics [27]: It extends the weighted approach of other techniques to a fuzzy set of criteria by taking into account interactions between them; It allows expressing the importance degree of a combination of criteria in a unique index. As mentioned in [27] the multi-criteria model is composed of 3 main components:

• The criteria formalization is realized thanks to utility functions and it allows establishing the index measure between the criteria.

• The fuzzy measure is a set function that is build in order to model importance and interaction between criteria.

• Finally the Choquet integral establishes the overall evaluation. It computes a kind of average value of the utilities taking into account the importance and interactions between the criteria.

In the rest of this paper, we will work on Χ a finite universe of n elements (criteria). The λ-fuzzy measure the best example for fuzzy measure is the tool we used to express the importance and the interactions between two or more criteria. It is a set function that defines a weight for each subset P(X) of the set of the criteria.

C1.The fuzzy measure The fuzzy measures are able to model the dependence

between criteria in many situations, whatever the nature of the dependence. Indeed, these measures have been proposed by Sugen. J. Moscarola for generalized additive measures. [28]

A fuzzy measure of the set X is a function g :2X

1) g(φ ) = 0

-> [0,1] such that the following condition are satisfied

2) g(X) =1 (1) and (2) is also called boundary condition 3 If A ⊆Β ∈X then g(A) ≤ g(B) this property is called

monotonicity Where g(A) is indicates the weights of importance for a set

A. A fuzzy measure is called additive if g(A∪ B) = g(A) + g(B) whenever A∩B =φ ,super additive if g(A∪B) ≥ g(A) + g(B) whenever A∩B =φ and sub additive if g(A∪B) ≤ g(A) + g(B)whenever A∩B =φ .

C2.Definition of Sugeno λ -Fuzzy Measure [28] Let X = x1, x2, x3, ….xn be a f inite set and consider

λ ∈(-1,∞), an λ -measure is a function g λ : X2

1) g

->[0,1] such that it satisfied the following condition:

λ

2) If A,B ∈2

(X) = 1 (4)

X then g λ (A U B) = g λ(A)+ g λ(B)+ λ g λ(A)gλ

Moreover, let X be a finite set, X = x

(B) With A ∩B= φ (5)

1, x2, x3, ….xn and P(X) be the class of all subsets of X the fuzzy measure g(X)=gλ

gλ(x1, x2, x3, … . xn) =

𝑔𝑔𝑖𝑖 +𝑛𝑛

𝑖𝑖=1

λ gi1. gi2 + ⋯+ λn−1g1g2

n

i2=i1+1

n−1

i1=1

… … gn

(x1, x2, x3, ….xn) can be formulated as

= 1λ

[∏ (1 + λgi𝑛𝑛𝑖𝑖=1 ) − 1] 𝑤𝑤ℎ𝑒𝑒𝑒𝑒𝑒𝑒 λ∈(−1, ∞) (6)

gλ(x1, x2, x3, … . xn)λ = ∏ (1 + λgi𝑛𝑛𝑖𝑖=1 ) − 1 (7)

103 © IT4OD 2014

Page 110: IT4OD 2014 Proceedings

gλ(x1, x2, x3, … . xn)λ + 1 = ∏ (1 + λgi𝑛𝑛𝑖𝑖=1 ) (8)

𝑏𝑏𝑏𝑏 𝑑𝑑𝑖𝑖𝑑𝑑𝑖𝑖𝑛𝑛𝑖𝑖𝑑𝑑𝑖𝑖𝑑𝑑𝑛𝑛 gλ(x1, x2, x3, … . xn) = 1

λ + 1 = ∏ (λgi𝑛𝑛𝑖𝑖=1 + 1) (9)

Now we evaluate the value of λ.According to the fundamental theorem regarding the λ-fuzzy measure, λ-value has three cases, as follows:

(𝑖𝑖)𝐼𝐼𝑑𝑑 ∑ 𝑔𝑔𝑖𝑖 > 𝑔𝑔(𝑥𝑥) 𝑑𝑑ℎ𝑒𝑒𝑛𝑛 − 1 < λ < 0.𝑛𝑛𝑖𝑖=1 (10)

(𝑖𝑖𝑖𝑖)𝐼𝐼𝑑𝑑 ∑ 𝑔𝑔𝑖𝑖 = 𝑔𝑔(𝑥𝑥) 𝑑𝑑ℎ𝑒𝑒𝑛𝑛 λ = 0.𝑛𝑛𝑖𝑖=1 (11)

(𝑖𝑖𝑖𝑖𝑖𝑖)𝐼𝐼𝑑𝑑 ∑ 𝑔𝑔𝑖𝑖 < 𝑔𝑔(𝑥𝑥) 𝑑𝑑ℎ𝑒𝑒𝑛𝑛 λ > 0.𝑛𝑛𝑖𝑖=1 (12)

C3.Choquet integral [28] Finally the aggregation function establishes the overall

evaluation of alternatives. We use the Choquet integral that computes an average value of the utilities taking account of the interaction and the importance of the criteria. This integral is considered as an aggregation operator.

Let us suppose that g be a f uzzy measure on X , then Choquet integral of a function :f :x->[0,∞] w.r.t fuzzy measure g is defined

(𝑐𝑐)∫ 𝑑𝑑 𝑑𝑑𝑔𝑔 = ∑ 𝑑𝑑(𝑥𝑥𝑖𝑖) − 𝑑𝑑(𝑥𝑥𝑖𝑖−1)𝑔𝑔(𝐴𝐴𝑖𝑖𝑛𝑛𝑖𝑖=1 ) Where Ai

for i=1,2,3,…n.f(X

⊂ X (13)

1),f(X2

f(X

),….. : are the ranges and they are defined as :

1) ≤ f(X2) ≤ f(X3),….≤ f(Xn) et f(X0

III. AFuzzyChoq : A MCDA FOR CLASSIFICATION PROBLEM

)=0. (14)

We address the problem type "classification γ". We consider a problem with a set of alternatives: A = A1,A2,,…An, which are evaluated according to a set of C criteria = C1, C2 , …Cj. We propose a Method Multi-criteria for aid decision AFuzzyChoq for ranking alternatives that can in both : take into account the interactions of criteria ie allows the decision maker to express the importance of each criterion independent of the other as its importance relative to other criteria which represents the interaction among the criteria this the case in reality; and allows the intervention of the decision maker's preference. As depicted in Figure 1 AFuzzyChoq consists of three phases.

• Phase 1: Apply the AHP method to decompose the problem into a hierarchical structure and calculate the weights of criteria wherein each criterion is taken independently of the other. These weights allow decision makers according to his views to express the importance of each criterion (to express preferences and requirements). This choice is motivated by the

simplicity of using the AHP method and the possibility of measuring the consistency of the solution reached by the decision maker and makes a r eassessment if necessary. We emphasize here, that we did use the AHP method to enable decision makers to determine the importance of each criterion relative to others, to get the weight of each criterion. Thus, we perform here only binary comparisons between a limited numbers of criteria and reduced without making binary comparisons between alternatives. At the end of this step there is obtained the importance (weight) of each criterion independently of the other ie that is not obtained the importance of two or more criteria (the subset of criteria) which has the interaction among the criteria.

Figure 1. AFuzzyChoq steps

• Phase 2: Use the λ -fuzzy measure for considering the criteria interaction and calculating the weight of each sub-set of criterion. This technique is most often used to answer this question. At the end of this step there is obtains the importance of two or more criteria (the subset of criteria) which shows the interaction among the criteria.

• Phase 3: Use the Choquet integral as an aggregation operator based on evaluation of alternatives on each criterion and the weight of each subset of criteria to aggregate the evaluations of alternatives according to the classification criteria and its interactions to get an overall evaluation allows the ranking of alternatives. At the end of this step there is obtained a total score that alternatives are classified according to this score.

IV. ILLUSTRATIVE EXAMPLE The previous sections presented our process “AHP-Fuzzy-

Choq“and discussed advantages when using it. This section aims to operationalize it with a real-world system by using an example issued from the distribution of the new jobs in Algeria. The empirical example background, the problem

104 © IT4OD 2014

Page 111: IT4OD 2014 Proceedings

statement and the results of applying this process are discussed below. A. Background and problem statement

The equitable distribution of new jobs to meet the candidates of job contest on the basis of the certificate is difficult and embarrassing for the selection committee. This is evidenced by conciliation between the number of new jobs available and the number of applicants who always are the most and satisfy the greatest possible number of candidates. In evaluating candidates the managers based on rating scale of the public function by the following four criteria: the relevance and suitability of the candidate's qualifications with job requirements requested to enter the contest, the experience acquired by the candidate in the same or an equivalent job, date of graduation and the results of the interview with the selection committee. The objective is to provide an overall rating of ranking to candidates allowing them sorted in descending order. Next we considered only the n first candidates corresponding to the n available new jobs.

B. Candidates prioritization Analytical multi-criteria methods for decision support are

available to facilitate this mission as much possible. We apply AFuzzyChoq to classify the candidates need job according to criteria defined by the public function and to select a number of candidates equals the number of new jobs available. Now, we can formulate the above problem as a multi-criteria decision analysis problem by defining the set of: criteria, alternatives, and the goal as follows:

Criteria: X=Cr1: the relevance of the candidate's qualifications, Cr2: the experience acquired, Cr3: date of graduation, Cr4: the results of the interview set of criteria. Their weights are respectively w1, w2, w3, w4 where wiϵ]0,1[Alternatives: W= c1,c2,…cm – set of candidates on which criteria is to be evaluated. And Goal: Evaluate the set of candidates/alternatives c1, c2, . cm based on set of criteria X. The following table (Table V) shows the list of candidates with its evaluations for each criterion.

TABLE II. Evaluations and scores of candidates

Candidate Cr1 Cr2 Cr3 Cr4

Alli Madi 22 30 40 50 Farid drid 12 15 35 40

Mossa Djaba 36 45 45 50 Yahia Batouri 10 25 50 50 Hichem Mahdi 16 30 30 50

As mentioned earlier, according to our process, there are three steps to prioritize the candidates. The first step allows us to obtaining the hierarchical form of the problem and the weights of each criterion. Thus for obtain the hierarchical form of the problem (Figure 2); we use the AHP method (phase 1); we find that this method allows decomposing the problem of distribution of social housing in the hierarchical form next: In level 0 we have the goal that is the ranking of candidates; Criteria occupy the level 1 finally; Applicants occupy the lowest level of the hierarchy (level 2). The goal then is to rank applicants based on their assessments on criteria established by the public function.

Then, we pass to the step of determining the weight of each criterion where the evaluation each candidate against each criterion it is necessary to know the importance of these criteria which is expressed by its weight. The selection committee (ie policy makers) are most likely to be able to know which are the most important criteria than others, the criteria the same importance, in short, that can compare between the criteria. To clarify these importance in perspective of policymakers, we must allow policymakers express it. To achieve this goal, we chose the AHP method (Phase 1) to calculate the criteria weights. For example we have four candidates that we want to rank for two jobs.

The selection committee performs a b inary comparison between criteria, to get the weight of each criterion. The selection committee may make this comparison between the criteria according to his point of view for express the criteria that are most important and quite important, equal criteria and so on. And we finish the calculation of the matrix of importance according to the AHP method. The following figure (figure3) shows steps of calculating the weight of criteria.

Figure 2. Hierarchy form of the problem

105 © IT4OD 2014

Page 112: IT4OD 2014 Proceedings

Figure 3. steps of calculating the weight of criteria

Also in Phase 1 after calculating criteria weights the degree of coherence is verified by calculating a ratio of coherence (RC <0.10 or not). According to the formulas (1), (2), (3) there is the previously mentioned RC = -0.64 <0.10 this demonstrating that preferences are chosen correctly.

0,44 ∗

0,4620,2310,1520,152

+ 0,28 ∗

0,5220,6210,1300,086

+ 0,16 ∗

0,4610,3070,1530,076

+ 0,10

0,3330,3330,2220,111

=

0,4570,2560,95

0,113

𝐶𝐶𝑒𝑒1 =0,4570,44

= 1,038

𝐶𝐶𝑒𝑒2 =0,2560,28

= 0,914

𝐶𝐶𝑒𝑒3 =0,950,16

= 5,937

𝐶𝐶𝑒𝑒4 =0,1130,10

= 1,13

λ𝑚𝑚𝑚𝑚𝑥𝑥 =1,038 + 0,941 + 5,937 + 1,13

4= 2,25

𝐼𝐼𝐶𝐶 =λ𝑚𝑚𝑚𝑚𝑥𝑥 − 4

4 − 1= −0,58

𝑅𝑅𝐶𝐶 =−0,580,90

= −0,64 < 0,10

Now we move to the next step, we calculate the importance of each subset of criteria to take into consideration the interaction among the criteria), using λ-fuzzy measure (Phase

2). According to the aforementioned definition we begin by calculating the value of λ according to the equation (9)

λ + 1 = ∏ (λWi4i=1 + 1)

λ+1=(0,44 λ+1) (0,28 λ+1) (0,16 λ+1) (0,10 λ+1)

λ+1=0,001 λ4 +0,04 λ3 +0,31 λ2 -0,02 λ

We solved this equation and we selected λ∈[-1, ∞ [

=0

λ =-29,45 ;-10,61 ;0 ;0,063=> λ =0,063.

Now according to the equations (4),(5); the values of fuzzy measures are as follows:

µ1Cr1= W1=0,44.

µ2Cr2=W2=0,28.

µ3Cr3=W3=0,16.

µ4Cr4=W4=0,10.

µ12Cr1,Cr2=µ1+µ2+λµ1µ2=0,44+0,28+0,063*0,44*0,28=0,687.

µ13Cr1,Cr3= µ1+µ3+λµ1µ3=0,60

µ14Cr1,Cr4= µ1+µ4+λµ1µ4=0,54

µ23Cr2,Cr3= µ2+µ3+λµ2µ3=0,44

µ24Cr2,Cr4= µ2+µ4+λµ2µ4=0,38

µ34Cr3,Cr4= µ3+µ4+λµ3µ4=0,26

µ123Cr1,Cr2,Cr3= µ1+µ2+µ3 +λµ1µ2µ3=0,88

µ124Cr1,Cr2,Cr4= µ1+µ2+µ4 +λµ1µ2µ4=0,82

µ134Cr1,Cr3,Cr4= µ1+µ3+µ4 +λµ1µ3µ4=0,70

µ234Cr2,Cr3,Cr4= µ2+µ3+µ4 +λµ2µ3µ4=0,54

µ1234Cr1,Cr2 Cr3,Cr4 =1(By definition)

So we must aggregate the evaluations of each applicant in order to give each an overall score that allows ranking. To this aggregation of assessments of applicants according to specific criteria, we apply Choquet integral (Phase 3). We get the list of candidates, everyone with its overall score which allows ranking them.

According to the equations (13),(14); the values of Choquet integral which presents the overall evaluation of each candidate according to the importance of each criterion and at the same time takes into account the interactions among the criteria (the importance of subsets of criteria) are as follows:

SC1=E1(C1)µ1234Cr1,Cr2Cr3,Cr4+(E2(C1)-E1(C1))µ234Cr2,Cr3,Cr4+(E3(C1)-E2(C1))µ34Cr3,Cr4+(E4(C1)-E3(C1))µ4Cr4

SC1=22+(30-20)(0,54)+(40-30)(0,26)+(50-40)(0,10)

SC1=31(SC1: the overall score of the first candidate,E1(C1): the evaluating candidate 1 according to criterion 1)

So on:

SC2= 19,32.

106 © IT4OD 2014

Page 113: IT4OD 2014 Proceedings

SC3=41,36.

SC4=24,6.

SC5=25,56.

Now according to these overall scores the candidates are ranked. The following table (Table III) shows the list of candidates with its evaluations for each criterion and its overall score.

TABLE III. The ranking and scores of candidates

The ranking Candidates Score

1 Mossa Djaba 41,36

2 Alli Madi 31

3 Hichem Mahdi 25,6

4 Yahia Batouri 24,6

5 Farid drid 19,32

Therefore the two candidates that won the two new jobs are: Mossa Djaba and Alli Madi

V. CONCLUSION AND PERSPECTIVES Multi-criteria analysis of decision aid is a very important

area of research. In fact many decision problems are multi-criteria. The arrangement problem (or classification) is among the most frequently encountered problems in our lives. For this the purpose of this article is to propose a method AFuzzyChoq based on the principles and methods of multi-criteria analysis to solve this type of problem and discuss our proposal using an illustrative example of a real selection problem (prioritize candidates of job contest on the basis of the certificate) in Algeria is presented. AFuzzyChoq uses: AHP method to give weights to the criteria; the fuzzy measure to consider interactions and dependencies between criteria and Choquet integral as an aggregation operator to compute global priorities In order to support and facilitate the use of AFuzzyChoq we plan to develop an appropriate tool to support the proposed method and also apply and test it with a case study of a real selection problem (prioritize demanders of social housing) in the Wilaya of Tebessa in Algeria.

REFERENCES [1] P. Vincke.( 1989). L'aide multicritère à la décision. Editions de

l'université de Bruxelles, Bruxelles. [2] Rossi F, Tsoukias A (eds). (2009). Algorithmic decision theory.

Proceedings of the First International Conference, ADT 2009, Venice, Springer Verlag: Berlin.20–23.

[3] B. Roy. (1985). Méthodologie multicritère d'aide à la décision. Economica X, Paris.

[4] Hanne, T., H. L. Trinkaus. (2003). knowCube for MCDM –Visual and Interactive Support for Multicriteria Decision Making, Published reports of the Fraunhofer ITWM, 50, www.itwm.fraunhofer.de/rd/presse/beriche

[5] von Winterfeldt D and Edwards W. (1986) "Decision analysis and behavioral research". Cambridge (UK): Cambridge University Press, pp.604-615.

[6] Belton V, Steward T (2002) "Multiple criteria decision analysis: An integrated approach". Dordrecht (NL), Kluwer Academic. P.372.

[7] Mahmoud, M.R. and Garcia, L.A. (2000), Comparison of different multicriteria evaluation methods for the Red Bluff diversion dam.,Environmental Modelling & Software 15, 471-478

[8] Duckstein, L., Treichel, W. and Magnouni, S.E. (1994), .Ranking ground-water management alternatives by multicriterion analysis., Journal of Water Resources Planning Management, ASCE 120, 546-565;

[9] Roy, B. and Vincke Ph. (1981) "Multicriteria analysis: Survey and new directions". European Journal of Operational Research 8:207–218.

[10] Vincke P. (1992) "Multicriteria decision aid". New York: Wiley [11] Brans J. P. and Vincke Ph. (1985) "A preference ranging organization

method. The PROMETHEE method for MCDM". Management Science 31:647–656.

[12] Nijkamp, P., Rietvelt, P., and Voogd, H.(1990) "Multi-criteria evaluation in physical planning". Amsterdam: North-Holland,.

[13] Keeney R. and Raiffa H. (1976) "Decision with multiple objectives: Preferences and value tradeoffs". New York: John Wiley & Sons.

[14] Saaty T.L. (1980) "The Analytic Hierarchy Process", Network: McGraw-Hill.

[15] Munda, G. (1995) "Multicriteria evaluation in a fuzzy environment. Theory and applications". In Ecol. Econ. Physica. Heidelberg: Verlag.

[16] Nijkamp, P., and Vreeker R. (2000) "Sustainability assessment of development scenarios: Methodology and application to Thailand". Ecological Economics 33:7–27.

[17] Saaty,T.L.(1982). Decision Making for Leaders,Lifetime Learning Publications. Wadsworth,Belmon t.

[18] Saaty,T.L.(1995). Decision Making for Leaders, The Analytic Hierarchy Process for Decisions in a Complex World. RWS Publications,Pittsburgh.

[19] Ishizaka Alessio and Lusti Markus. (2003). An Intelligent Tutoring System for AHP, Proceedings of the 9th International Conference on Operational Research KOI 2002, Trogir, 215-223.

[20] Saaty, T. L. (1984). Décider face à la complexité : une approche analytique multicritère d’aide à la décision. Entreprise moderne d’édition, Paris.

[21] F. Vieira, I. S. Brito and A. Moreira: "Using multi-criteria analysis to handle conflicts during composition".

[22] Triantaphyllou, E.: "Multi-Criteria Decision Making Methods: A Comparative Study". Kluwer Academic Publishers, 2000.

[23] Sridhar P., M. Madni A., and Jamshidi M., "Multi-criteria decision making in sensor network", IEEE Instrumentation & Measurement Magazine, PP-24-29.

[24] Grabisch, M. :"The application of fuzzy integrals in multicriteria decision making", European Journal of Operational Research 89 (3) (1996) 445–456.

[25] Marichal, J.-L.: “An axiomatic approach of the discrete choquet integral as a tool to aggregate interacting criteria” IEEE Trans.Fuzzy Systems, vol. 8, pp. 800–807, Dec. 2000.

[26] Grabisch M. and Roubens M.: "Application of the Choquet integral in multicriteria decision making". In M. Grabisch, T. Murofushi, and M. Sugeno, editors,: "Fuzzy Measures and Integrals - Theory and Applications", pages 348-374. Physica Verlag, 2000.

[27] Grabisch M., Kojadinovic I., and Meyer, P.:"A review of capacity identification methods for Choquet integral based multi-attribute utility theory: Applications of the Kappalab R package". European Journal of Operational Research, 2008.

[28] Muhammad Ayub. Choquet and Sugeno Integrals. Blekinge Institute of Technology.(2009).

107 © IT4OD 2014

Page 114: IT4OD 2014 Proceedings

Topic 4: Networks and Embedded Systems

108 © IT4OD 2014

Page 115: IT4OD 2014 Proceedings

Personnalisation d’accès aux sources de données hétérogènes pour l’organisation des grands systèmes

d’information d’entreprise

Aïcha AGGOUNE Département d’informatique

Laboratoire LabSTIC, Université 8 mai 45 Guelma, Algérie

[email protected],

Abdelkrim BOURAMOUL Département De L’informatique

Fondamentale Et Ses Applications Laboratoire MISC, Université Constantine

2, Algérie abdelkrim.bouramoul@univ-constantine2

Mohamed khiereddine KHOLLADI Recteur de l’université d’El-Oued

Laboratoire MISC, Université Constantine 2 Algérie

[email protected]

Résumé- L’évolution des systèmes d’information d’entreprise

SIE, engendre une explosion du nombre de sources de données hétérogènes qui à son tour rend l’accès à l’information pertinente un problème fastidieux. Notre travail cherche à déterminer quelles sources sont pertinentes aux usages et aux clients d’entreprise, connaissant le contexte dans lequel ils sont immergés. Nous présentons dans cet article une architecture de médiation personnalisée pour l’adaptation d’un nombre réduit de sources d’information à la structure du profil utilisateur. A cet effet, les modélisations à base d’ontologie de profil utilisateur et des sources d’informations ont été réalisées. A partir de ces deux modèles sémantiques, une opération de filtrage automatique des sources pertinentes est faite par l’appariement entre les concepts de modèle du profil utilisateur et celui des sources d’information. Les sources pertinentes sont par la suite utilisées dans le système de médiation comme des sources locales personnalisables qui facilite la recherche d’information.

Mots clés : Personnalisation, sources de données hétérogènes, organisation des SIE, système de médiation, ontologie

I. INTRODUCTION Retourner à l’utilisateur des informations pertinentes issues

des sources hétérogènes constitue un enjeu majeur pour l’industrie informatique. Que ce soit dans le contexte des systèmes d’information d’entreprise, du commerce électronique, de l’accès au savoir et aux connaissances, la pertinence de l’information délivrée, son intelligibilité et son adaptation aux usages et préférences des clients constituent des facteurs clés du succès ou du rejet de ces systèmes. La personnalisation de recherche d’information s’avère nécessaire, elle consiste à modéliser l’utilisateur et l’intégration du profil résultant dans le processus d’accès à l’information. Ainsi la pertinence de l'information dépend de l'adéquation entre la requête et l’ensemble des éléments constituant le profil qui sont perceptibles lors de la recherche.

L’objectif de cet article est multiple d’une part, d’utiliser un système de médiation dans un grand système d’entreprise pour construire une vue uniforme de données hétérogènes permettant de donner l’impression à l’utilisateur qu’il recherche dans un système homogène et centralisé. Et d’autre

part, d’intégrer les différentes connaissances constituant un profil dans le processus du système de médiation et d’établir un élément de référence pour filtrer la masse importante des sources d’information d’une entreprise. Cet élément de référence se représente sous forme d’un modèle générique à base d’ontologie décrivant la typologie des informations nécessaires à la définition d’un profil. Une plateforme de gestion du profil utilisateur à été développé pour l’utiliser par la suite dans le système de médiation. De plus, une architecture du système de médiation personnalisé a été réalisée dont le but de faciliter la recherche d’information dans les grands systèmes d’entreprise tel que SONATRACH. Ainsi qu’une méthode de filtrage automatique des sources d’informations à intégrées dans le système de médiation a été présenté.

L’article est composé de 5 sections, dans la première nous présentons l’introduction générale, ensuite dans la deuxième et la troisième section nous donnons quelques travaux similaires liés d’une part au traitement de l’hétérogénéité sémantique et à la construction de profil utilisateur d’autre part. En section quatre, nous décrivons notre architecture de médiation dont le but d’adapter les sources pertinentes au profil utilisateur des grands systèmes d’information d’entreprise. Enfin, en section cinq nous terminons par une conclusion générale et des perspectives pour les prochains travaux.

II. TRAVAUX SIMILAIRES Afin d’exploiter plusieurs sources d’informations

hétérogènes en recherche d’information RI, de nombreux travaux s’intéressent à l’intégration de ces sources. Deux catégories d’approches ont été dégagées ; la première appelée les approches virtuelles, cette catégorie est basée sur l’utilisation des systèmes de médiation et la seconde catégorie appelée les approches matérialisées, elle est fondée sur la construction d’entrepôt de données [2].

Le principe de la première catégorie d’approches consiste à construire un système de médiation définissant une interface entre l’utilisateur et l’ensemble des sources accessibles via le Web [3]. Au début, ce type de système provient du monde des

109 © IT4OD 2014

Page 116: IT4OD 2014 Proceedings

bases de données fédérées, il consiste à définir le schéma global en fonction des schémas des sources de données à intégrer [4]. Le médiateur comprend un schéma global, ou ontologie globale qui fournit un vocabulaire structuré servant de support à l’expression des requêtes. Les sources d’information pertinentes, pour répondre à une requête, sont calculées par réécriture de la requête en termes de vues. Ces requêtes sont généralement traduites par des adaptateurs ou wrappers en requêtes écrites dans le langage spécifique pour chaque source [5], [1].

La personnalisation dans un système de médiation doit tenir compte non seulement du profil des utilisateurs mais aussi de la description sémantique des sources de données, définie par des requêtes de médiation [23]. [24] proposent une approche de médiation personnalisée au niveau de la reformulation de requêtes qui consiste à réinterpréter l'intention de l'utilisateur, exprimée dans sa requête, en une requête plus complète, tenant compte à la fois du profil utilisateur et de la description des sources de données.

La seconde catégorie d’approches fondée sur la construction d’un entrepôt de données (ou Data Warehouse en anglais). Elle consiste à voir l’intégration comme la construction de bases de données provenant des sources d’information hétérogènes et distribués [6]. Ces données doivent être organisées, coordonnées, intégrées et stockées pour donner à l’utilisateur une vue globale des informations contrairement à la première catégorie d’approches où les données sont stockées dans leur source d’origine [7] [8]. Enfin, ce type de système permet aux utilisateurs de poser directement leurs requêtes sur cet entrepôt de données [9].

La personnalisation dans les entrepôts de données permet de modifier les structures multidimensionnelles et les mécanismes de présentation des données par une meilleure connaissance des utilisateurs [25]. Néanmoins, la prise en compte du profil utilisateur d’une manière implicite est une problématique.

[10] proposent une approche hybride combinant l’approche de médiateur pour l’intégration des sources externes et l’approche d’entrepôt de données pour l’intégration de leurs données. Cette approche hybride porte d’une part sur la génération automatisée de mises en correspondance, ou mappings, entre l’ontologie et une nouvelle source à intégrer, d’autre part sur la construction automatique d’adaptateurs allant de la description du contenu abstrait de cette nouvelle source jusqu’à l’extraction des données.

De telles approches nécessitent des opérations fondamentales pour traiter le problème d’hétérogénéité où nous trouvons dans les approches virtuelles, l’opération d’adaptation de requêtes du schéma global aux schémas locaux et dans les approches matérialisées, l’opération de construction d’entrepôt via des sources hétérogènes, qui est un travail fastidieux ainsi que leur données ne sont pas toujours fraîches. Tous ces opérations sont caractérisées par la difficulté de mise en œuvre qui conduit à l’allongement du leur temps et l’augmentation du leur coût. Ainsi que la pauvreté de générer des liens sémantiques et l'adaptation de l'accès aux besoins des utilisateurs. Une étude comparative

entre ces deux approches d’intégration nous a permis de construire le tableau suivant.

TABLE I. COMPARAISON ENTRE LES APPROCHES D’INTEGRATION

Approches virtuelles

Approches matérialisées

Principe Interface unifiée Copie des sources Actualisation temps

réal Données fraîches

Données historisées et non volatiles

Performance Défis principal Bonne

Opérations sur les données

Rien Extraction,

transformation, Nettoyage, filtrage

Opérations sur les sources

Accès aux sources Alimentation des

entrepôts et accès direct à l’entrepôt

Opérations sur les requêtes

Adaptation aux schémas locaux, fragmentation

Rien

Opérations sur les résultats

Adaptation au schéma global

Rien

Evolution Rien Souvent et largement

Type de requêtes Simple mais

coûteuses Complexes et

transactions longues

Personnalisation Reformulation de

requête Données

multidimensionnelles Complexité Maximale Minimale

Dans ce sens, nous avons situé dans la problématique de

personnalisation implicite des systèmes de médiations, dans le cadre de traitement d’hétérogénéité des sources d’informations dans des grands systèmes d’entreprise. De ce fait, le deuxième point à explorer est de présenter une synthèse obtenue après une étude approfondie sur les différentes techniques de construction et de gestion de profil utilisateur.

III. APPROCHES DE MODELISATION DE PROFIL UTILISATEUR Des études montrent que la faille des systèmes de

recherche d’information SRI classique réside en partie dans le fait qu’ils considèrent que le besoin en information de l’utilisateur est complètement représenté par sa requête et ne tiennent pas en compte l’utilisateur dans la chaîne d’accès à l’information. Pour cela, les travaux sont orientés vers la conception d’une nouvelle génération de moteurs de recherche basée sur la RI contextuelle dont l’objectif est de délivrer de l’information pertinente et appropriée au contexte de l’utilisateur qui a émis la requête [11] [12]. La RI personnalisée est un type de RI contextuelle où l’accent est mis sur l’utilisation d’un modèle utilisateur préalablement construit appelé profil [13]. La modélisation du profil utilisateur est une tâche centrale dans le processus de RI, elle nécessite, d’une part, de représenter les centres d’intérêts de l’utilisateur dans le système et, d’autre part, d’adapter cette représentation aux changements des centres d’intérêts de l’utilisateur au cours du temps.

110 © IT4OD 2014

Page 117: IT4OD 2014 Proceedings

De nombreuses approches de modélisation du profil de l’utilisateur ont été proposées dans la littérature. Il existe quatre grandes classes d’approches :

Les approches basées sur l’historique de recherche : dans cette classe d’approches, le profil est représenté par requêtes et l’ensemble des pages Web visités par l’utilisateur. Raghavan et Sever [14] représente un profil de l’historique de recherche servant comme une base de données des requêtes précédemment exécutées ainsi que leurs résultats associés. Cette base de données est utilisée pour sélectionner les requêtes les plus similaires à une requête en cours d’évaluation.

Les approches ensemblistes : sont basées sur une représentation vectorielle par mots clés pondérés des centres d’intérêts de l’utilisateur. La construction d’un profil ensembliste repose sur des techniques d’extraction des termes à partir des documents pertinents, jugés implicitement ou explicitement par l’utilisateur. Plusieurs systèmes d’accès personnalisé à l’information adoptent ce type de représentation, à savoir : MyYahoo, InfoQuest, Letizia [15].

Les approches connexionnistes : cette classe d’approches permet de résoudre les problématiques liées aux approches ensemblistes en enrichissant le profil par des relations sémantiques entre les centres d’intérêts le constituant. Cette représentation sémantique est effectuée par la construction d’un réseau de concepts pondérés traduisant un centre d’intérêts de l’utilisateur [16]. Les approches connexionnistes déterminent les relations de

corrélation sémantiques entre les centres d’intérêts du profil, ce qui n’est pas le cas dans les approches précédentes.

Les approches sémantiques: La construction d’un profil utilisateur sémantique repose principalement sur l’utilisation de deux sources d’évidence, les données utilisateurs collectées au cours de ses sessions de recherche et des ressources sémantiques prédéfinies telles que les ontologies de domaines ou des hiérarchies de concepts [19]. Les centres d’intérêts de l’utilisateur sont représentés par un réseau de nœuds conceptuels et reliés entre eux en respectant la topologie des liens définis dans les ressources sémantiques. Dans [20], la définition d’un profil utilisateur sémantique basée sur l’exploitation d’une ontologie de domaines ODP (Open Directory Project) pour répertorier le contenu des pages web pour une navigation facile par les utilisateurs et l’application d’une méthode de propagation des termes et de leurs scores à partir des sous-concepts vers le concept parent.

Le tableau suivant décrit une comparaison entre ces différentes approches selon plusieurs critères.

TABLE II. COMPARAISON ENTRE LES APPROCHES DE MODELISATION DU PROFIL UTILISATEUR

Approches Collecte information

Exploitation information

Modèle de représentation Limites

A base de l’historique de

recherche Implicite Historique de

recherche Base de données

n’est pas efficace lors de la première connexion d’utilisateur au système

Ensemblistes Implicite ou explicite

Termes des documents jugés

pertinents

Représentation vectorielle

Manque de structuration, de cohérence et de la sémantique

Connexionnistes Explicite

Relations de corrélation sémantiques entre les centres d’intérêts

Représentation hiérarchique

la détection d’un nouveau besoin en information pour une nouvelle requête utilisateur, une tâche difficile à accomplir.

Sémantiques Explicite Ontologie de domaine

Ressources sémantiques

Connaissance préalable des ressources sémantique (ontologie)

En générale l’approche sémantique représente une meilleure solution pour la modélisation du profil utilisateur, néanmoins, elle porte un inconvénient dans le contexte de recherche sur web où le profil utilisateur est associé avec une masse importante des concepts de l’ontologie. Ceci peut augmenter considérablement le temps d’exécution des requêtes d’une part et la gestion d’évolution du profil utilisateur d’autre part.

Dans le cadre de notre travail, nous proposons un modèle sémantique à base d’ontologie pour la construction d'un profil

utilisateur et son application dans un système d’information d’entreprise.

IV. MODELISATION ONTOLOGIQUE DES RESSOURCES D’UN SIE Nous présentons dans cette section la modélisation à base

d’ontologie des ressources d’un système d’information d’entreprise. Nous avons distingué deux principales ressources : l’utilisateur (Directeur, client, agent, employeur) et les sources d’informations (bases de données, fichiers

111 © IT4OD 2014

Page 118: IT4OD 2014 Proceedings

Word, fichier Excel,…). Dans ce cadre, nous commençons de modéliser l’utilisateur à travers la définition de son profil.

A. Modélisation de profil utilisateur Dans les systèmes d’information d’entreprise,

l’hétérogénéité entre les différentes sources d’information pose des problèmes cruciaux, tels que: la désorientation de l’utilisateur, la surcharge informationnelle, l’allongement des temps de réponses, l’augmentation des coûts d’indexation, la diminution de la précision de la recherche, l’incompréhensibilité et ambiguïté des informations retournées. La personnalisation vise à intégrer le profil utilisateur dans le processus de recherche. En effet, nous proposons un modèle générique du profil permettant à n’importe quel type d’utilisateur d’entreprise d’utiliser ses données d’une façon homogène. Nous donnons à l’utilisateur de construire son profil selon deux modes différentes : construction manuelle par le remplissage d’un formulaire et une construction automatique basée sur l’interprétation des activités du client sur les données du résultat.

La structure du profil utilisateur est composée de deux catégories d’informations: les informations orientées utilisateur et les informations orientées recherche. La première catégorie d’information sert à identifier un utilisateur à travers une série d’informations qui sont :

1) Identification : contient des attributs qui aident à identifier une personne (nom, genre, données démographique, nationalité, contacts…)

2) Affiliation : inclut la description de l’organisation associée à l’utilisateur ;

3) Niveau d’étude : décrit la liste des diplômes obtenus, la spécialité d’étude, le titre de diplôme, mention et l’année d’obtention ;

4) Activités : contient les activités liées au travail, domaine de travail, poste occupé, grade et lieu de travail ;

5) Compétences : décrit les compétences associées avec la formation de l’utilisateur et son expérience de travail.

Ces différentes classes de concepts sont liées avec la classe principale « information orientée utilisateur » par des relations d’appartenance telles que : has_activity, has_identification,…etc.

La seconde catégorie d’informations orientées recherche qui facilite l'association de la recherche faite par un utilisateur à son profil. Elle décrit les besoins de l’utilisateur en information selon les classes suivantes :

1) Centres d’intérêts : qui peuvent être fait par des mots clés ou par des requêtes. Les mots clés représentent des mots ou des phrases qui décrivent les informations recherchées. Ils définissent de façon simple le contenu ou le domaine des éléments ciblés. L’utilisation de requêtes qui ont pour but de restreindre l’espace de recherche et de faire une première sélection d’éléments potentiellement intéressants. Cette classe représente le noyau du profil.

2) Contexte : l’utilisateur doit décrire le contexte dans lequel il est immergé afin de réduire l’espace de recherche et donner le sens correct des termes du centre d’intérêt sinon les résultats renvoyés à l’utilisateur en présence de son profil risquent d’être tous inintéressants.

3) Historique de recherche : est faite d’une manière implicite, il représente la trace de l’utilisateur par l’ensemble des pages web visitées, les liens, les requêtes exécutées.

4) Format de documents retournés : l’utilisateur peut préciser le format de document et leur type (texte, son, multimédia,…) ainsi qu’on les déduit automatiquement.

5) Sécurité : L’utilisateur peut spécifier ses exigences du niveau de sécurité des données personnelles, des ses activités lors d’un échange avec l’extérieur.

La figure suivante représente une partie de l’ontologie du profil utilisateur dédié au traitement d’hétérogénéité des sources d’informations dans des systèmes d’information d’entreprise SIE.

Fig. 1. Ontologie de profil utilisateur (concepts abstraits) sous Protégé 2000.

112 © IT4OD 2014

Page 119: IT4OD 2014 Proceedings

Le modèle générique du profil est décrit par trois classes (ou concepts) principales : la classe Profil_utilisateur est caractérisée par le nom utilisateur et un mot de passe, la classe Orienté_Utilisateur qui engendre d’autre sous classes définissant un utilisateur d’entreprise. Orienté_Recherche contenant les informations permettant de manipuler le SIE d’une manière personnalisable.

A partir de ce modèle générique du profil utilisateur, nous avons développé une plateforme appelée HomeDoc pour la gestion efficace des profils (voire la figure 2). Deux modes de gestion du profil ont été réalisés : gestion manuelle où l'utilisateur doit effectuer des interactions directes avec le système et gestion automatique ; le système s'adapte automatiquement à l'utilisateur et mis à jour son profil par des informations essentiels telles que l’historique, les sources préférées et format de documents.

Fig. 2. Plateforme de création d’un profil utilisateur

B. Modélisation des sources d’informations hétérogènes La partie cruciale de modélisation des sources

d’information est la description de contenu des sources d’information. Il s’agit de décrire les concepts contenant une source d’information ainsi que les relations entre ces concepts et les concepts d’un profil utilisateur.

Nous décrivons une source d’information par les concepts suivants:

1) Localisation : définit par l’adresse web d’une source connue par le sigle URL (Uniform Resource Locator) ou par l’emplacement dans la mémoire. On peut trouver aussi le titre d’une source comme élément clé pour localiser une telle source.

2) Logiciels : une source d’information se manipule à travers un programme informatique tel que SGBD, Navigateur et lie par des protocoles de connexion : JDBC, ODBC, API.

3) Mode d’interrogation : chaque source d’information possède un mode d’interrogation pour accéder à ses données via un langage d’interrogation des bases de données : SQL, OQL ou par l’usage des moteurs de recherche : Yahoo, Google.

4) La nature : une source d’information peut être des réseaux sociaux, fil RSS, site professionnels, encyclopédie.

5) Langue : dans une source d’information on peut y avoir plusieurs langues pour utiliser ses données.

6) Mots clés : une liste des mots clés qui reflètent le contenu d’une source La modélisation générique d’une source d’information dans un SIE est représentée graphiquement dans la figure suivante.

Fig.3. Représentation des concepts du modèle de source d’information

Un exemple d’une source d’information d’une entreprise SONATRACH pour la protection des ressources humaines est défini dans le tableau suivant:

TABLE III. EXEMPLE D’UNE SOURCE D’INFORMATION

Entreprise

Société Nationale pour la Recherche, la Production, le Transport, la Transformation et la Commercialisation des Hydrocarbures

Localisation http://www.sonatrach.com/PDF/Politique_Sante_Med_HygTravail.pdf

Logiciel Navigateur, Lecteur PDF Mode

d’interrogation

Moteur de recherche Google

Nature Document PDF Langue Français, Anglais et Arabe

Mots clés Santé, travailleur, accident, surveillance médicale

Afin de montrer comment relier le modèle du profil utilisateur avec celui de source d’information, nous présentons dans le reste de ce papier l’architecture générale du système de médiation personnalisé dédié au traitement d’hétérogénéité des sources d’information dans un SIE.

IV. ARCHITECTURE GENERALE Nous proposons une architecture de médiation

personnalisée à base de profil utilisateur afin de traiter le problème d’hétérogénéité des sources d’information dans des grands systèmes d’information d’entreprise. Le schéma ci-dessous illustre l’architecture générale de SIE.

113 © IT4OD 2014

Page 120: IT4OD 2014 Proceedings

Fig. 4. Architecture générale de notre système

L’architecture générale de notre travail repose sur un système de médiation qui constitue la solution la plus courante pour relier différentes sources de données hétérogènes [22]. L’architecture proposée consiste à adapter les sources de données hétérogènes au profil utilisateur avant d’intégrer dans le système de médiation. Cette adaptation se déroule en deux phases. La première (1), est une phase de découverte des sources d’informations les plus préférées par l’utilisateur. Dans cette phase, une communication entre le modèle du profil et le modèle des sources d’information est faite par l’appariement entre les termes de ces deux ressources. La figure suivante illustre le processus de personnalisation des sources d’information au profil utilisateur.

Fig. 5. Processus de découverte des sources personnalisable

Ce processus vise à extraire les instances de chaque concept du modèle du profil et de projeter sur les instances du modèle des sources afin de filtrer les sources qui correspondent aux préférences d’utilisateur. Le résultat de ce processus est un ensemble des sources préférable à l’utilisateur.

La seconde phase, consiste à utiliser les sources de préférences pour exécuter la requête utilisateur Q sur ces différentes sources en utilisant les adaptateurs de chaque source du système de médiation.

L’étape 3 mentionnée dans la figure 4 où l’adaptation est faite au niveau des résultats de recherche qui doivent être homogènes selon les informations relatives au profil utilisateur. Dans ce cas là, après l’exécution d’une requête, les formats de réponses serons transformé selon les informations qui se trouvent dans la classe Format de données de la super classe Orienté_recherche du modèle de profil utilisateur.

Afin de bien comprendre l’intérêt de notre architecture du système de médiation personnalisé, nous donnons un exemple d’un SIE pour représenter le déroulement de différents processus utilisant les deux modèles générique de profil utilisateur et de description des sources d’information. Un exemple de requête d’un chef de service veut récupérer le CV de que chaque employé lient à son service. Dans ce cas il va consulter tous les sources existantes dans l’entreprise. Selon notre architecture, chaque usages d’entreprise possède un profil et une fois le chef de service se connecte avec le SIE, une liste des sources de préférences serons classées en tête de liste et elles sont intégrées automatiquement dans le système de médiation. Dans ce cas il aura bien sur besoin de récupérer les CV selon la description des sources par le modèle ontologique et la requête du chef de service. Bien sûre certaines informations sont cachées pour les employés et découvertes par d’autres selon le niveau de sécurité du profil.

L'objectif de la personnalisation du système de médiation sera donc de réduire le nombre de sources en ciblant de façon plus précise, à l’aide des modèles du profil et de sources d’information. Le problème d’hétérogénéité des sources est remédie à travers la personnalisation d’accès aux sources d’un SIE qui implique l’amélioration du temps de réponse. Par conséquent, il est nécessaire de validé notre architecture sur un exemple réel afin d’analyser la complexité du calcul et mesurer la pertinence de résultats aux jugements d’utilisateur.

V. CONCLUSION Ce papier décrit l’une architecture d’un système de

médiation personnalisé, qui permet de sélectionner les sources d’information pertinentes au profil utilisateur au ceint d’un système d’information d’entreprise. Ces sources sont localisées selon leur importance par rapport la communication entre les deux modèles générique du profil utilisateur et celui de source d’information. Par la suite l’adaptation des sources hétérogènes est effectuée à travers un système de médiation.

Nous avons présenté une structure étendue du profil utilisateur selon deux catégories d’informations : d’un côté les informations orientées utilisateurs qui permettent d’identifier l’utilisateur à travers un ensemble des casses et de l’autre côté

114 © IT4OD 2014

Page 121: IT4OD 2014 Proceedings

les informations orientées recherche représentées le noyau du profil qui décrit ses centres d’intérêt et les caractéristiques de documents retournés. Par conséquent, une expérimentation sur un système de médiation d’une entreprise donnée est nécessaire dans les prochains travaux.

REFERENCES [1] Tamine-Lechani, L., Boughanem, M., Daoud, M. : Evaluation of

contextual information retrieval effectiveness: overview of issues and research. Knowledge and Information Systems, 2010, Vol.24, Issue 1, pp 1-34

[2] Calvier, F.E., Reynaud, C.: Une aide à la découverte de mappings dans SomeRDFS, EGC’2008, Sophia-Antipolis, Revue RNTI-E-11, Cepadues Edition, 2008, pp. 703--708

[3] Amir, S.: Un système d’intégration de métadonnées dédiées au multimédia, Actes du XXVII° congrès INFORSID, Toulouse, 2009

[4] Teodoro, D., Pasche, E., Wipfli, R., Gobeill, J., Choquet, R., Daniel, C., Ruch, P., Lovis, C.: a Integration of biomedical data using federated databases, proceedings annual meeting, 2009

[5] Tranier, J., Baraër, R., Bellahsène, Z., Teisseire, M. Where's Charlie: Family-Based Heuristics for Peer-to-Peer Schema Integration. IDEAS, 2004, pp. 227-235

[6] Reynaud, C., Safar, B.: Construction automatique d'adaptateurs guidée par une ontologie, Revue TSI, N° spécial Web Sémantique, 2011, Vol. 28, pp. 199--228

[7] Wehrle, P., Tchounikine, A., Miquel, M. :Grid Services for Efficient Decentralized Indexation and Query Execution on Distributed Data Warehouses. 19th International Conference on Advanced Information Systems Engineering (CAi-SE’07), 2007, pp. 13-–16

[8] Ravat, F. et O. Teste . Personalization and OLAP Databases. New Trends in Data Warehousing and Data Analysis, 2008, vol. 3, pp.71–92.

[9] Mansmann, S. et M. H. Schol. Exploring OLAP Aggregates with Hierarchical Visu-alization Techniques. In SAC 07, 2007, pp. 1067–1073.

[10] Reynaud, C., Pernelle, N., Rousset, M.C., Safar, B., Saïs, F.: Data Extraction, Transformation and Integration guided by an Ontology, Chapter 2 of the Book Data Warehousing Design and Advanced Engineering Applications: Methods for Complex Construction, Advances in Data Warehousing and Mining Book Series, Ladjel Bellatreche (Ed.), 2009

[11] A.Bouramoul, M-K. Kholladi et B-L. Doan. Using Context to Improve the Evaluation of Information Retrieval Systems. In International Journal of Database Management Systems (IJDMS), 2011, Vol.3, No.2, pp. 22-39.

[12] Tamine-Lechani, L., Boughanem, M., Daoud, M. Evaluation of contextual information retrieval effectiveness: overview of issues and research. Knowledge and Information Systems, 2010, Vol. 24, Issue 1, pp 1-34

[13] Varshavsky, R., Karmon, K., Sitton, D., Lihaiani, L., Heackrman, D.,Davidson, R. content personalization based on user information. Patent application publication, Microsoft corporation, USA, 2010, pp 1—16, 2010

[14] Marie, L., Julien, B., Valentin, B., Philippe, D., Lucie, D., Françoise, G. Personnalisation de l’apprentissage : comparaison des besoins et approches à travers l’étude de quelques dispositifs. STICEF, 2012, vol 19, ISSN 1764-7223.

[15] Zemirli, W. N. Modèle d’accès personnalisé à l’information basé sur les diagrammes d’influence intégrant un profil multidimensionnel. Thèse de doctorat, Université Paul Sabatier, Toulouse, France, juin 2008.

[16] Loeb, Shoshana, Panagos, Euthimios. Information filtering and personalization: Context, serendipity and group profile effects. Consumer Communications and Networking Conference (CCNC), IEEE, 2011, pp 393—398.

[17] Koutrika, G., Ioannidis, Y. A unified user profile framework for query disambiguation and personalization. In Proceedings of Workshop on New Technologies for Personalized Information Access, July 2005.

[18] Laborie S., Euzenat J., Layaïda N., "Semantic Adaptation of Multimedia Documents," Multimedia Tools and Applications, 2011, vol. 55, no. 3, pp. 379-398.

[19] Daoud, M., Tamine, L., Dinh, B.D., Boughanem, M. Contextual Query Classification For Personalizing Informational Search. In Web Information Systems Engineering, kerkennah Island, Sfax, Tunisia, 2009.

[20] Dromzée,. C., Laborie,. S., Roose,. P. Profil générique sémantique pour d’adaptation de documents multimédias. 30ème édition Montpellier de l’INFormatique des ORganisations et Systèmes d’Information et de Décision, INFORSID, pp.1--16, France, 2012.

[21] Kostadinov, D., Peralta, V., Soukane, A., Xue, X. Intégration de données hétérogènes basée sur la qualité. Management Science, 2012, Vol. 31, no.2, pp.150–162.

[22] KOSTADINOV, Dimitre, BOUZEGHOUB, Mokrane, et LOPES, Stéphane. Accès personnalisé à des sources de données multiples. Rapport interne, Laboratoire PRiSM, Université de Versailles, France, 2006.

[23] I.ZAOUI, F.WADJINNY, D.CHIADMI et al. A Personalization Layer for Mediation Systems. Journal of Digital Information Management, 2012, vol. 10, no 1.

[24] BENTAYEB, Fadila, BOUSSAID, Omar, FAVRE, Cécile, et al. Personnalisation dans les entrepôts de données: bilan et perspectives. In : EDA. 2009. pp. 7-22.

115 © IT4OD 2014

Page 122: IT4OD 2014 Proceedings

Segment-based Local Density Estimation for VANETs

Noureddine Haouari, Samira Moussaoui Faculty of Electronics and Computer Science

University of Science and Technology Houari Boumediene BP 32 EL ALIA 16111

BAB EZZOUAR Algiers ALGERIA [email protected], [email protected]

Abstract—Local vehicle density estimation is an essential part of many applications in Vehicular Ad-hoc NETworks (VANETs) such as congestion control and traffic state estimation. This estimation is used to get an estimated number of neighbours within the transmission range. Many applications use beacons to estimate this density. However, many studies show that the reception rate could significantly drops at relatively short distances comparing with the transmission range. This is due to the special characteristics of VANETs such as high mobility and high density variation. To enhance the performance of these applications, an accurate estimation of the local density with minimum of overhead is needed. Most of the proposed strategies in literature address the global traffic density estimation without a special attention to the local density estimation. This paper proposes a segment-based approach for local density estimation in VANETs. The simulation results show that our strategy allows interesting estimation accuracy with lower overhead. Index Terms— local density estimation, VANETs, ITS

I. INTRODUCTION Knowing the number of neighbors in the transmission

range is a key parameter of many applications in VANETs such as: congestion control and traffic density estimation. In fact, the information of local density is used to adapt the functioning of these applications to different densities as the vehicular environments characterized by the high density variation. Therefore, the density information helps these applications to react according to the density.

The local density estimation in many VANETs applications is based on beacons. However, according to [11]

Various strategies dealing with density estimation were proposed in literature. Most of them are interested in the global density such as

, in situations where there is a high message load, the reliable transmission range is reduced by up to 90%. Thus, this degradation causes a very limited awareness on the neighborhood which might trouble the functioning of this kind of applications. For instance, in congestion control protocols, the local density can be used to detect the network congestion by the estimation of the generated load on the control channel by knowing the total number of neighbors and the generated load per vehicle. The estimation error has a co nsiderable impact on the well functioning of such applications. So, these applications need an accurate local density estimation strategy to well perform.

[2][10][5][1]. These methods give less

accurate results for small distances. The most closely related approach to our strategy is [8]

In

. A detailed description of this approach as well as a comparison with our approach is provided in Section 3.

[12]

In

, the authors propose D-FPAV as a co ngestion control protocol for VANETs. In D-FPAV, they need to find out the total number of all neighbors in the transmission range. For that, every vehicle periodically sends a piggybacked beacon containing its neighbors. When a v ehicle receives these messages, it will be aware of all the vehicles in its transmission range. This information is used later to estimate the load on the channel. But, this approach requires a high overhead to work appropriately.

[8], the authors address the high overhead problem of D-FPAV. They propose DVDE strategy to overcome the overhead generated by the extended beacons. Their approach is based on the segmentation of the transmission range and then instead of sending neighbors in the extended beacons, the vehicles periodically send the density of each segment. To estimate the local density, the vehicle chooses the information of the nearest vehicle to the center of each segment based on the received information. If the segments are not the same, it uses linear interpolation to estimate the density. By gathering this information from different vehicles, the vehicle enhances the accuracy of its estimation. This approach reduces the overhead comparing to the D-FPAV method and it has better accuracy. However, it suffers from some shortcomings. In fact, in DVDE strategy, each vehicle has its own segments (Fig. 1).Because the segments are different in most cases, the authors propose to use linear interpolation to estimate the density of a target segment in this case. This could give less accurate results if the vehicles are not uniformly distributed. Furthermore, the shared information of periodic extended beacons could be useless if many vehicles are in the same area sharing the same information. This periodic redundancy creates an extra overhead that could be avoided if only some selected vehicles share their information.

116 © IT4OD 2014

Page 123: IT4OD 2014 Proceedings

Fig. 1 DVDE segmentation strategy

Our goal is to provide an accurate local density estimation strategy with the minimum of overhead. We consider the local density as the number of vehicles within the transmission range. The transmission range is the range where the vehicles could receive packets even if they are not able to decode them.

In this paper, we present Segment-based Local Density Estimation (SLDE), a local density estimation strategy. The simulation results show that our approach has higher accuracy with lower overhead comparing with DVDE strategy [8].

The paper is organized into four sections as follows. Section 2 introduces SLDE strategy. The simulation and the evaluation of SLDE are presented in Section 3. Section 4 concludes the paper with outlooks on the future work.

II. METHODOLOGY In this section, we present SLDE (Segment-based Local

Density Estimation). SLDE is designed with the goal of providing an accurate estimated number of neighbors within the transmission range with a minimum amount of overhead. SLDE is designed under the following assumptions:

• Vehicles are equipped with omnidirectional antennas with the same receiving sensitivity and transmission range.

• Each vehicle is aware of its velocity and its geographical location through a Global Positioning System (GPS).

• All vehicles could identify the segment where they are based on preloaded digital maps.

The general SLDE algorithm is shown in Algorithm 1. The propagation of the density could be started when a v ehicle passes by the center of a segment or when it receives density information from a vehicle in another segment. In the first case, the propagation of density information started if the last received information about this segment is outdated. This information is provided by the extended beacons that contain the density histogram of the different segments in transmission range of the sender. In the second case, the vehicle before propagating the density information it will wait for a time based on its distance to the center of its segment. So, the nearest vehicle to the center will propagate first the density information. When the other vehicles in that segment receive this information they will stop waiting and cancel their propagation. Before the propagation of density information, the vehicle merges the different received density information. In the following subsections, we will discuss in more detail three main features of SLDE: using fixed segments, data merging and density propagation.

A. Using fixed segments The roads are supposed to be s egmented (Fig. 2).

Vehicles use preloaded digital maps to determine the identity of each segment. The identification process of segments is out of the scope of this paper. The use of fixed segments allows unifying the segments for all vehicles which makes the using of the density information easier. Moreover, it makes the estimation more accurate because it avoids using linear interpolation.

Fig. 2 SLDE segments

B. Density merging The density merging is done in extended beacons

construction. The merging of the received data is based on choosing the most reliable information of each segment. This is done by using the nearest vehicle with valid data to each segment. This is because the nearer vehicle to the center, the higher probability to detect the vehicles in that segment. In the case of non reception of extended beacons from vehicles nearer than the vehicle itself for a s pecific segment, the vehicle will use the valid received beacons. By the end, the vehicle will have a density histogram that contains the density of different segments.

C. Density propagation The density propagation is an important element to have

higher accuracy especially for the far segments where the probability of reception is relatively low. For that, in each segment we will have a vehicle that will take the responsibility of merging the received data and its propagation. The most important things in this process is: timely and reliable transmission of density information.

In SLDE, there are two ways to start the propagation of density information. The first strategy is when a vehicle passes of the center of a segment, the density information will be propagated if the last received density of this segment is outdated. The information is outdated when it is received before DetlaT period. The other possibility is when a vehicle receives density information. Here, every vehicle receives the density information will wait a period of time before the propagation of the density information where the nearer the vehicle to the center, the lower time to wait. Then, when the vehicles receive the density information from a vehicle of its segment, it stops waiting because there is a v ehicle of their segment takes on the task of propagation. The vehicle will take on the task of the propagation when TimeToWait is consumed without the reception of density information from its segment for at least T period. To make the different propagations more synchronous, the formula 1 is used to

117 © IT4OD 2014

Page 124: IT4OD 2014 Proceedings

choose the nearest vehicle to the center by the calculation of time to wait before the propagation of the density information.

𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇 = 𝐷𝐷𝐷𝐷,  𝑠𝑠𝑇𝑇𝑠𝑠𝑇𝑇𝑇𝑇𝑠𝑠𝑇𝑇

𝑆𝑆𝑆𝑆/2∗ 𝑆𝑆𝑇𝑇𝐿𝐿𝐿𝐿 (1)

Where Dx, segment: the distance between the vehicle and the

center of its segment (m) SL: segment length (m) LTEB: Life Time of an extended beacon(s)

III. EVALUATION AND SIMULATION In this section, we evaluate the performance of our strategy

SLDE comparing with DVDE.

A. Simulation Environment The simulation results presented in this paper were

obtained using the NS-2 simulator [4]. We choose NS-2 for its credibility among network research community. And for more realistic results we have used an overhauled MAC/PHY-model [3] adapted to the characteristics of IEEE 802.11P (the standard of the inter-vehicle communications). The used simulation parameters are illustrated in Table 1. Due to the limitations of deterministic radio models simulations, we have used the probabilistic Nakagami propagation model [9]

Our simulation mobility scenario consists of a bidirectional highway of 2 km of length with 3 lanes per driving direction. The highway is straight and without entrances or exits. SUMO

.

[6] was used to generate the movement pattern of vehicles. We use this tool because it is open source, highly portable and can be used to simulate both the microscopic and macroscopic environments. The used mobility scenarios reflect different levels of service on highways. For each level of service we have used the highest possible density in it based on the highway capacity manual [7]

We have analyzed different values of the segment size and

. The used densities are 7, 11, 16, 22 and 25 v/km/l (vehicles per kilometer in each lane).

T to determine the most appropriate ones to have a high precision with minimum of overhead. The results are illustrated on Table 2. The best value for the mean error of the three scenarios is 5% with overhead of 67565.48 bytes/second by using 20m as segment size and 0.9 for T. And if we accept an error of 12% we will have just 17568 bytes/second by choosing 100m as a segment size and 0.5 for T. Therefore, these two cases were chosen for further simulations.

We have analyzed also the different values of the segment size for DVDE strategy. We have found the lowest error ration in DVDE is 0.2 with a mean overhead of 151072.65 bytes/second by using 20m as segment size. Also, by using 250m as segment size, we have found about 0.21 as error ration with less overhead 111390.64 bytes/second. These two cases are chosen for further simulations to compare with our strategy SLDE.

TABLE I SIMULATION CONFIGURATION

Parameter Value

Frequency 5.9 GHz

Data rate 6 Mbps

Carrier Sense Threshold -96 dBm

Noise floor -99 dBm

SINR for preamble capture 4 dB

SINR for frame body capture 10 dB

Slot time 16 us

SIFS time 32 us

Preamble length 40 us

PLCP header length 8 us

(a) Medium access and physical layer configuration parameters for IEEE 802.11p.

Parameter Value

MAC 802.11P

Beacon generation 10 beacons/s

Beacon lifetime 0.1 second

Extended beacons lifetime

0.5 second

Packet size 400 byte

Maximum vehicle velocity

30 m/s

Transmission Range 500 m

Road length 2 km

Radio propagation Nakagami

Number of vehicles 84, 132, 192, 256, 300

(b) Simulation setup.

118 © IT4OD 2014

Page 125: IT4OD 2014 Proceedings

TABLE 2 ANALYZING CONFIGURATION PARAMETERS FOR SLDE.

Segment size(m) T(s) Error(%) Overhead (Bytes/second)

250 0.1 0.19 31711.86

250 0.2 0.20 16801.98

250 0.5 0.27 7403.88

250 0.7 0.32 5636.59

250 0.9 0.34 4720.33

100 0.1 0.11 80874.00

100 0.2 0.11 41220.00

100 0.5 0.12 17568.00

100 0.7 0.17 13026.00

100 0.9 0.22 10575.00

50 0.1 0.11 172233.99

50 0.2 0.10 87869.21

50 0.5 0.10 37269.32

50 0.7 0.11 27675.50

50 0.9 0.14 21982.03

20 0.1 0.09 431710.16

20 0.2 0.09 241728.74

20 0.5 0.06 109786.76

20 0.7 0.05 82210.26

20 0.9 0.05 67565.48

B. Performance Metrics Two performance metrics were used for the evaluation of

the performance of SLDE: Overhead: it measures the generated overhead per second

by all vehicles (Bytes/second). Error ratio: It is calculated using the formula

C. Overhead evaluation

2.

𝐿𝐿𝐸𝐸𝐸𝐸𝑇𝑇𝐸𝐸𝐸𝐸𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇 = |𝐿𝐿𝐸𝐸 − 𝑅𝑅𝐸𝐸|

𝑅𝑅𝐸𝐸∗ 100% (2)

Where EN: the estimated number of the neighbors in the

transmission range. RN: the real number of neighbors in the transmission

range.

The overhead is computed as mean number of sent extended beacons per second multiplied by the size of each packet which is dependent of the number of segments. The results found are shown in Fig. 3.

Fig. 3 Overhead evaluation.

We observe in Fig. 3

D. Accuracy evaluation

that the overhead increases with the density of vehicles. This is expected because increasing the number of vehicles increases the number of sent extended beacons in both strategies. However, the overhead generated by SLDE is far less than the overhead generated by DVDE. This difference is the direct impact of the adequate using of density information and the used propagation strategy. Indeed, the difference among both curves is already significant at low densities especially for SLDE(100m, 0.5s). Moreover, in this case, the overhead generated by DVDE could reach about eight times of the overhead generated by SLDE in the case of 25 v/km/l. Furthermore, with the same density, the overhead generated by DVDE is about twice the overhead generated by SLDE(20m, 0.9s). Indeed, DVDE has more overhead because that each vehicle is supposed to sent periodically the density information, so as the number of vehicles increases the overhead increases. In the case of SLDE, the overhead is not increasing as speed as DVDE which makes our strategy more scalable than DVDE strategy especially in the case of SLDE(100m, 0.5s).

Fig. 4 depicts the error ratio by each strategy as a function of the vehicular density. As it can be observed, SLDE has less error ration with the two versions comparing with DVDE strategy. The reduced error ration for SLDE is due to the using of fresh density histograms using our propagation strategy.

119 © IT4OD 2014

Page 126: IT4OD 2014 Proceedings

Fig. 4 Error ration evaluation.

IV. CONCLUSION Several applications in VANETs use the local density

estimation to be adaptable to the different density scenarios. Their performance is directly related to the accuracy of this estimation.

In this paper, we have proposed a s egmented-based local density estimation strategy (SLDE). The simulation results show that the proposed strategy (SLDE) has many advantages. It has less overhead comparing with DVDE strategy. Moreover, it has higher accuracy. Therefore, by using SLDE, the performance of many VANETs applications could be improved.

As a future study we intend to address the unified segments and situations where not all the vehicles have the digital maps. Also, we will address using SLDE as density estimation strategy for a congestion control protocol.

REFERENCES [1] Nabeel Akhtar , Sinem Coleri Ergen , O znur Ozkasap. Analysis of

distributed algorithms for density estimation in VANETs (Poster). VNC:157—164, 2012

[2] .

Maen Artimy. Local density estimation and dynamic transmission-range assignment in vehicular ad hoc networks. IEEE Transactions on Intelligent Transportation Systems, 8(3):400—412, 2007

[3] .

Qi Chen, Felix Schmidt-Eisenlohr, Daniel Jiang, Marc Torrent-Moreno, Luca Delgrossi, Hannes Hartenstein. Overhaul of ieee 802.11 modeling and simulation in ns-2. Proceedings of the 10th ACM Symposium on Modeling, analysis, and simulation of wireless and mobile systems:159—168, 2007

[4] .

Kevin Fall, Kannan Varadhan. The network simulator (ns-2). URL: http://www. isi. edu/nsnam/ns, 2007

[5] .

Laura Garelli, Claudio Casetti, C Chiasserini, Marco Fiore. Mobsampling: V2V communications for traffic density estimation. Vehicular Technology Conference (VTC Spring), 2011 IEEE 73rd:1—5, 2011

[6] .

Daniel Krajzewicz , Georg Hertkorn , C Ro ssel , P Wagner. Sumo (simulation of urban mobility). Proc. of the 4th Middle East Symposium on Simulation and Modelling:183—187, 2002

[7] .

Highway Capacity Manual. Highway capacity manual. Washington, DC, 2000

[8] .

Jens Mittag , Felix Schmidt -Eisenlohr, Moritz Killat , Jéro me Harri, Hannes Hartenstein. Analysis and design of effective and low-overhead transmission power control for VANETs.Proceedings of the fifth ACM international workshop on VehiculAr Inter-NETworking:39—48, 2008

[9] .

Minoru Nakagami. The m-distribution-A general formula of intensity distribution of rapid fading. Statistical Method of Radio Propagation, 1960

[10] .

Sooksan Panichpapiboon, Wasan Pattara-atikom. Evaluation of a neighbor-based vehicle density estimation scheme. 2008. ITST 2008. 8th International Conference on ITS Telecommunications:294—298, 2008

[11] .

Robert Karl Schmidt , Thomas Ko llmer , Tim Leinmu ller , Bert Bo ddeker, Gu nter Schafer . Degradation of Transmission Range in VANETS caused by Interference. PIK-Praxis der Informationsverarbeitung und Kommunikation, 32(4):224—234, 2009

[12] .

Marc Torrent-Moreno, Jens Mittag, Paolo Santi, Hannes Hartenstein. Vehicle-to-vehicle communication: fair transmit power control for safety-critical information. IEEE Transactions on Vehicular Technology, 58(7):3684—3703, 2009

.

120 © IT4OD 2014

Page 127: IT4OD 2014 Proceedings

CCBRP: A protocol based QoS for mobile multimedia sensor

Merzoug S.

networks

1 , Derdour M.1 , Gharzouli M.2 1

Mathematics and computer sciences department E-mail: [email protected], [email protected]

LRS, Université of Tebessa

2

[email protected] Faculty of NTIC, University of Constantine 2

Abstract Abstract. The various recent applications for wireless multimedia sensor networks (WMSNs) evolve technological advances in micro electromechanical systems. They promote the development of a powerful class of sensor-based distributed intelligent systems, that capable of ubiquitously retrieving multimedia information. In this context, there are a large number of audio and video floods, that are treated and transmitted to the sink (sink) for more precise reactions and decisions, which are founded on the results collected by the sensors. These last justify an important need in terms of bandwidth and transmission delay and energy management. In this area, it exists a very large number of QoS-based protocols for WMSNs, but they do not take into account the generation of large-scale multimedia data. In this paper, we analyze the most representative QoS-based protocols in order to understand the basic principle of the design, which is to maximize the QoS. Also, we present a protocol for WMSNs based on QoS and their hybrid architecture based on two approaches: Cluster -

Index Terms:

based approach and Chain-based approach.

WMSN; QoS; QoS

1. NTRODUCTION

-based routing; routing multi-path; TDMA; Cluster; Chain .

The availability of equipments with low costs, such as cameras CMOS and microphones, supported the development of Wireless Multimedia Sensor Networks (WMSNs) of wirelessly interconnected devices that are able to ubiquitously retrieve multimedia content (video and audio streams, still images, and scalar sensor data from the environment). Then, WMSNs are needed to reinforce the capacities of the current wireless sensor networks, and to improve and develop of new applications, like the multimedia surveillance sensor networks. WMSN introduce several new research challenges, mainly related to the mechanisms that provide a quality of service at the application level (like the latency reduction). In this paper, we present a new approach with a hybrid protocol, architecture of operation and some basic new concepts. Also, we explain the manner to combine the approach of communication with chain and the approach of

communication to cluster. More precisely, this paper presents a hierarchical routing protocol which is effective for the management of bandwidth, transmission delay and energy related to the WMSNs. This protocol adopts an architecture model based on two routing approach: cluster and Chain to estimate the available bandwidth and produce routing paths.

2. RELATED WORKS Availability of multimedia devices, with miniature size

and low cost, has led to considerable growth in the development and deployment of WMSNs. It is desirable to extract more realistic and accurate information from the rapidly changing events in several areas such as military, emergency and rescue, surveillance and security, health, traffic, industry, environment and monitoring equipment [1]. Because of this growth potential use of WMSNs, much research is focused on providing quality of services

SPEED [2] is a spatiotemporal, priority-based, QoS-aware routing protocol for WSNs that supports real time traffic with delay requirements and maintains a desired delivery speed across of the network.

.

Multipath Multi-Speed (MMSPEED) [3] protocol is an integration of reinforcement learning based probabilistic multipath forwarding with soft real-time guarantee of SPEED. This last supports timeliness by ensuring bandwidth and real-time transmission constraints using SPEED and enhances data transmission reliability by probabilistic multipath forwarding.

Hamid et al. [4] propose a multi-path and multi-channel based QoS-aware protocol. The routing decision is made according to the dynamic adjustment of the required bandwidth and path-length-based proportional delay differentiation for real-time data.

121 © IT4OD 2014

Page 128: IT4OD 2014 Proceedings

Power Efficient Multimedia Routing (PEMuR) [5] is an efficient protocol for video communication over WMSNs. It ensures low power consumption over all sensor nodes and high perceived video QoS by making a combined use of hierarchical routing and video packet scheduling models.

Energy-Efficient and QoS-based Multipath Routing Protocol (EQSR) [6] applies a service differentiation technique. It is designed to satisfy the reliability and delay requirements of real-time applications. Keeping in view the limitations of table-based real-time routing techniques in WMSNs. Xue et al. propose a service differentiated real-time communication scheme (SDRCS) [7] to provide soft real-time guarantees for event-based traffic in WSNs. SDRCS uses grouping approach to estimate end-to-end hop distance and to meet various application requirements.

W. Sun et al. propose a new routing metric called Load Balanced Airtime with Energy Awareness (LBA-EA) [8]. It addresses load balance and energy awareness in WMSNs. The metric selects the less congested route and balances traffic loads among nodes by taking in to account the traffic load of forwarding nodes as well as the inter-flow interference caused by contending neighbors.

A comparative analysis of these protocols is given in Table 1.

Table 1: Comparative study of WMSN routing protocols Based on above survey is observed that the routing protocols that are adaptive in nature are desirable for WMSNs because of their properties and key constraints. In case of multimedia sensor networks, the protocol should provide QoS support along with energy efficiency.

Moreover, if the network consists of heterogeneous nodes with varied applications then the protocol should be intelligent enough to identify various traffic types and their respective QoS requirements. Therefore, to meet these diverse requirements along with simplicity, it is desirable to have a multi-hop communication based protocol with a QoS support to select the best routes.

3. Modern approaches to definition infrastructure of sensor networks

After studying the types of approach to routing in WMSNs, we can inferred that the cluster approach and the chain approach are most appropriate to WMSNs in terms of prolongation of time and lifetime of the network as well as the effective management of energy consumption.

3.1. Cluster approach

The sensor nodes are grouped into clusters controlled by a BS. Each cluster has a cluster-head (CH) node that aggregates all data sent to it by all its members and transmits data to the remote BS. Therefore, the CH node must have much more energy than the non-CH node (sensor node, relaying node). BS performs cluster formation in the network, and informs all sensor nodes of clustering information afterwards [9].

3.2. Chain approach Nodes will be organized to form a chain can be either calculated by BS, so that they need to communicate only with their closest neighbors. All nodes way or completed by the sensor nodes themselves using a greedy algorithm. The aggregated form of the data will be sent to the base station by any node in the chain and the nodes in the chain will take turns in sending to the base-station [10]. The cluster approach (clustering) proposed for the first time in the LEACH algorithm [11], which showed its effectiveness by comparing with other approaches (centered data, geographical) in terms of consumption and uniform dissipation of energy thus extending the life of the network, a number of more or less apparent disadvantages. We mention among them:

The most distant nodes to CH nodes die quickly compared to those that are closer.

The number of messages received by the CHs amounts to approximately that of the managed nodes. This leads to the rapid depletion of their energy reserves.

The use of singel-hop instead of multi-hop (multi-hop) rapidly depletes the energy of nodes and consumes bandwidth advantage.

122 © IT4OD 2014

Page 129: IT4OD 2014 Proceedings

The approach with chains (chain-based approach) proposed for the first time in the algorithm of PEGASIS [12] prevents the formation of clusters and organizes network nodes form a chain where one node is selected to transmit to the BS. This reduces energy necessary to the transmission of the data by cycle since the dissipation of energy is distributed uniformly above all the nodes. The distances that most nodes transmit are much less reduced compared to the transmission with the leader (CHs) in LEACH.

The idea of combination was proposed by T. Thua Huynh and C. Hong Seon in [13] at the cluster heads where a chain of nearest neighbor is built from the CHs of each cluster to ensure, that the CHs farthest from the BS, do not die quickly any more..

After analyzing the two approaches (cluster and chain) and the idea of combining the two approaches, we found that we can improve the algorithm chains and its combination with the cluster algorithm. The idea is to build chains with started from all the possible chains (better than to build only one chains on the level of each cluster), which leads us to propose a new QoS-based hybrid protocol combines the advantages of two major approaches (Cluster based approach and Chain-based approach).

4. Contribution Our protocol is hybrid and QoS- based that combines

cluster approach and the chains in order to preserve the effectiveness of treatment of multimedia traffic.

Figure 1. Basic Ideas of Organization nodes in the network

Two key points (the approach cluster and approaches chains) are considered in our design. Initially, the approach cluster allows the organization of the nodes belonging to the same Cluster in the form of a chain improving

dissipation of energy, which makes it possible to reduce the load on CH (cluster-head). Indeed, nodes communicate only with their immediate neighbors and not directly with their CH. Secondly, the approach with chains where the nodes will be organized of such kind so that they form several chains will thus need to communicate with only their closest neighbors and take turns in the communication with the base station.

Figure 1 shows how the nodes will be organized inside the clusters. The N1 node transmits its data to its nearest neighbor N2, which as for him incorporates the data received with his neighbor and transmits them to its other neighbor until reaching CH which transmits them directly to the BS to preserve energy. So, in this new organization (cluster chains), all cluster nodes will transmit their collared respective CHs by connecting through the chain data, while each CH receives the collected data nodes persist chain.

This algorithm describes the policy how nodes choose the route to the cluster head

8: select path (p);

Start

1: Long (P); # returns a number of jumps (nodes) in the path P

2: LP (Ni); # returns a list of nodes belonging to the other path

3: select path (P); procedure to select transmits path

4: Nbp (Ni); # returns a number of path in the node

5: if (Ni transmits data to CH)

6: while (Nbp (Ni) =! 0) faire

7: if (long (p) < long (p’) and LP (Ni) < LP’ (Ni))

9: end if

10: end while

11: end if

The number of nodes that communicate with the CH is considerably reduced. This result implies a better energy savings and extends the benefit of life CHs. Because if they die (deplete energy reserves), all nodes in the cluster will lose their power to communicate with the BS and therefore the entire cluster is considered invalid (does not communicate with the BS). In our protocol, we decided to change the CH according to the energy level to consider the case where the CH dies.

In our protocol, we adopted the concept of TDMA [14], CHs establish a transmission plan (TDMA) that attribute to each node hang the exact time, which he must transmit its collected data. This allows nodes to turn off their radio antennas and switch to the sleeping state, which will allow you to save more energy. In addition, the use of TDMA will enable us to avoid the problems of collusion and interference between nodes in the cluster.

123 © IT4OD 2014

Page 130: IT4OD 2014 Proceedings

4.1. Principe of operation The formation of cluster and chains can be performed in

a centralized manner by the base station. To get better results in terms of distribution equalizes nodes between the clusters.

Figure 2. Started the Function of balancing of numbers of nodes in the clusters.

BS broadcasts a message requesting the information nodes; each node sends a data packet to the BS containing the energy reserves and their location using a GPS system.

Figure 3. Balancing function

Figure 4. Election of CHs

The method of formation (to cluster) determines, from the exact position of the nodes, the optimal configuration to

minimize the energy expended. Once the clusters are formed, the base station will switch to the elision of CHs. These are chosen in a very simple manner where only the node, that has the largest energy reserved, is eligible to become the next cluster head.

We can improve the choice of CH by adding additional selection criteria such as the position of CH compared to the heads of chains, i.e. to choose as CH, the node, which has the position nearest practically to all the nodes from it, will receives the data.

Figure 5. The Organizational of the operation of our protocol

Regarding the formation of channels, an idea is adopted, the nodes in the same cluster form a chain based on the closest neighbors. Each node receives data from one of its neighbors, fuses (aggregated) data of the latter with their data and sending to turn to its other neighbor in the chain.

Figure 6. Basic Idea formations chains

Msg_BS Node Ni Msg_Node Ni BS (Sink)

Msg_ organization

Step 1: formation of clusters

1 : Nbr_cluster= read 2 : 360°%Nbr_cluster= ???°

If the phase Transmission

end

BS sends Msg_BS_start

Every node listen mode

If Msg_BS_start received

Start Initialization/ reinitialization the infrastructure

Start the Transmission

En

Yes No

124 © IT4OD 2014

Page 131: IT4OD 2014 Proceedings

Figure 7. Organizational Construction chains

Indeed, the proposed algorithm starts with the further node to ensure that the more CH nodes have near neighbors. The neighboring distances increase gradually as nodes already in the Chain can’t be revised. Figure 6 shows the N4 connecting node to node N3, which connecting node to node N2 and this last connecting to node N1, in that order until reaching the CH node.

This algorithm describes the policy of building

chains.

Start

Nbr_ nœud: define the number of nodes in the cluster;

Get_ nœud_far (Ni); # Research node farthest from CH; Msg_Explore_Neighbor: search for neighboring nodes; Msg_Neighbor: procedure returns the set of neighbors of node farthest from node CH N1, N2, N3, Nm.; m ;# m is the identifier of node N;

Nœud_chain; # chain construct; Head_chain; #the head of the chain;

Second_ nœud: # procedure returns the node that adds from all neighboring Nm

Add_ nœud; # procedure to add nodes in the chain

Supp_ nœud; #procedure qui soustraite de l’ensemble des noeuds appartenant au cluster

0: Nbr_ nœud =N;

1: Nœud_chain= " ";

2: Head_chain Get_ nœud_loin (Ni) ;

3: N=N- Head_chain;

4: Head_chaîne (Msg_Explore_Neighbor);

5: router (Msg_Neighbor (N1…..Nm));

6: while (n! =0) Faire

7: Head_chain (Second_ nœud);

8: Add_ nœud (Nœud_chain, Head_chain);

9: Supp_ nœud (N, Head_chain);

10: End While

11: End

4.2.Principe of Routing The unfolding of our hybrid protocol is east unscrews in

several cycles of execution. Each cycle starts with a phase of initialization in which the clusters with multi chains are formed and CHs are elected, followed by a phase of transmission where the collected data are transmitted through the chains to CHs, which will transmit in their turn to the base station. The nodes all must be synchronized in order to take part in the phase of initialization at the same time. In order to minimize the problems of interference and the time of transmission, the duration of the phase of initialization is fixed in order to be much smaller compared to the phase of transmission

4.2.1. Step of initialization and re-initialization

.

The initialization step begins with the creation of clusters. The base station uses the proposed algorithm to form clusters. This method provides a better result in terms of formation cluster and energy conservation. After the formation of clusters, CHs are selected in a simplified manner where only the node that has the largest reserve of energy and closest to the BS, among nodes in the same cluster. Next, the construction of multi-chains is addressed by applying the algorithm of forming multi-chains, where the CH sends the information of each chain to their BS.

We adopt the technique of time division multiplexing as a means of access to the medium. This technique involves building a TDMA table to share transmission time on the node. Since each node knows in advance the time slot that will occupy, this allows the node to move to the «Asleep» state during inactive slot.

If the step of transmitting a node fails and we find a problem at routing data to the BS, our protocol should make a return to the re-initialization step for maintaining the topology and after resumes transmission.

4.2.2. Transmission

The step of transmission is divided in several iterations where the nodes transmit their collared data go through a chain to the CHs. In each iteration, a node transmits at least one data packet during its time slot previously allocated by the base station. Knowing that the time slot allocated to each node is constant, the time for each iteration of

Step

Start

The head of the chain is initialized with the farthest away CH node

The new head of the chain is subtracted from the set of nodes belonging to the cluster

All nodes in the cluster ≠ Φ

The head of the chain is initialized with the closest node of the former head

End

125 © IT4OD 2014

Page 132: IT4OD 2014 Proceedings

transmission will depend on the number of existing nodes in the cluster chain.

This algorithm describes the policy of routing:

Reception _of _a _Packet (Msg_BS_start)

START

Pk= Msg_BS_start;

Select_ch() ; # procedure identifier node CH

Tr_Data ;# procedure transmission Data

Re_Data ;# procedure for receiving data

Re_Ch_Data ;# procedure for receiving data via CH

Sleep_Ni; # procedure go to the sleeping state

start Initialization if (pk !=nulle)

1: Nbr_cluster= read;

2: 360°%Nbr_cluster=???°# formation of clusters

3: Apply the balancing function of the nodes in the cluster...

4: applies the algorithm of construction of multi chains

Start Transmission

5: Select_ch(Ni) ;

6: Tr_Data (Ni) ;

7: if (Tr_Data (Ni)=1 True)

8 : Re_Data (Ni) ;

9: else apply the algorithm of construction of multi chains #start reinitialization step for maintaining the topology

10: Go to (instruction 6)

11: if(Ni==CH)

12: Re_Ch_Data (Ni)

13: Tr_Data (Ni);

5. Discussion The approach of communication cluster-based was proposed for the first time in LEACH protocol. However, this approach doesn’t answer several challenges on the levels of the clusters. For example the energy consumed for the communication of nodes with the CH node is much higher compared to our protocol, which adapts an idea of PEGASIS protocol or the approach of communication to chain on the levels of cluster in way created several chains of nodes for the sending of the data.

Another major disadvantage is the case if the algorithm of construction of the chain (PEGASIS) does not find all the combinations possible of the chain. The idea of combining the two approaches was proposed by T.Thua and C.Seon inherited the disadvantage of the approach with chain, but it eliminated the disadvantage of the cluster approach.

Our hybrid protocol based on the organization of the nodes in cluster in the form of chains, the construction of the chains in order to find all the possible combinations, which ensures the routing multi-chains on, this makes it possible to improve quality of service (QoS) in WMSNs and to take into account the multimedia traffic.

Protocole Motivation Routing type Performance parameter

LEACH Efficient use of resources

Routing mono path

Lifetime to network ,transmission delay

PEGASIS Fault Tolerance Routing mono path

Delivery rate of data

T. Thua et C. Seon

Reliable data transmission

Routing mono path

Reliability, lifetime network

CCBRP Fault tolerance, reliable data transmission

Routing Multi path

Transmission delay, packet loss rate, maintenance of roads, life network

Table 2: Comparative study of the protocols of routing relative to our protocol CCBRP

The important points to develop our protocol are:

• Adopt a TDMA mechanism to improve and adjust the

energy consumption

Reduce the load on the node CH (communication nodes with their neighbors do not pass through the

CH)

Establish a mechanism for better use of the bandwidth

drain

Minimize the transmission delay end to end delay and error and failure

6. Conclusion

rates.

We are witnessing an evolution in the design of protocols with QoS passing the concern of the quality of service to the energy economy. The main objective of this paper is to present the main protocols with QoS to provide a certain quality of service while minimizing energy consumption. Consequently, our paper presents a protocol for managing QoS and energy consumption. Combining the idea of cluster and chain reduces the problem of intra-cluster interference and the problem of the burden of CH and advantage our approach minimizes the delay and loss rate.

Finally, the notion of quality of service used in our paper includes traditional network parameters such as: high speed, low delay, low loss, and low energy consumption. We're not talking about the guarantee of quality of service, whether deterministic or probabilistic. This last point requires further research we plan in the future.

126 © IT4OD 2014

Page 133: IT4OD 2014 Proceedings

7. References [1] Ian F. Akyildiz, Tommaso Melodia, Kaushik R. Chowdhury.

A survey on wireless multimedia sensor networks. Computer Networks (Elsevier). 2007

[2] Kemal A, Mohamed Y ‘’ A survey on routing protocols for wireless sensor networks ‘’ MD 21250, USA,spet 2005

[3] E. Felemban, C. Lee, E. Ekici. MMSPEED: Multipath multi-SPEED protocol for QoS guarantee of reliability and timeliness in wireless sensor networks. IEEE Trans. Mobile Computing. Vol. 5, no. 6, pp. 738754, 2006.

[4] M. Hamid, M. Alam, H. C. Seon. Design of a QoS-Aware Routing Mechanism for Wireless Multimedia Sensor Networks. Proc. IEEE Global Telecommunications Conference. Pp. 800-805, 2008.

[5] J. M. Kim, H. S. Seo, J. Kwak. Routing Protocol for Heterogeneous Hierarchical Wireless Multimedia Sensor Networks. Wireless Personal Communications. Vol. 60, no. 3, pp. 559-569, October 2011.

[6] T. He, J.A. Stankovic, C. Lu, T.F. Abdelzaher. A spatiotemporal communication protocol for wireless sensor networks. IEEE Trans. Parallel Distributed Systems. Vol. 16(10), pp. 995-1006, 2005.

[7]Y.Xue B.Ramamurthy,M.C.Vuran SDRCS:A service-differntiated real-time communication schme for event sening in WSN.computer networks Vol55pp3287-3302.2011

[8]W.sun Y.song M.chen A Load-Balanced and Energy-Awer routing Metric for wireless Multimedia Sensor Networks. CWMMN, 2010.

[9] Long C, Sajal K, Mario D, Canfeng C, Jian M “Streaming Data Delivery in Multi-hop Cluster-based Wireless Sensor Networks with Mobile Sinks” IEEE COMMUNICATIONS, 2011.

[10] K. Du, J. Wu and D. Zhou, “ Chain-based protocols for data broadcasting and gathering in sensor networks,” International Parallel and Distributed Processing Symposium, 2003.

[11] M. Younis, M. Youssef and K. Arisha, “Energy-aware Routing in Cluster-Based Sensor Networks”, the Proceedings of the 10th IEEE/ACM International Symposium on Modelling, Analysis and Simulation of Computer and Telecommunication Systems, 2002.

[12] S. Lindsey, C. Raghavendra, “PEGASIS: Power-Efficient Gathering in Sensor Information Systems", IEEE Aerospace Conference Proceedings, Vol. 3, 9-16 pp. 1125-1130, 2002.

[13] T. Thua Huynh et C. Seon Hong “An Energy*Delay Efficient Routing Scheme for Wireless Sensor Networks”, MMNS 2005, LNCS 3754, pp. 11–22, 2005. IFIP International Federation for Information Processing, 2005

[14] Ye-Qiong Song »Réseaux de Capteurs Sans Fil : Comment Fournir La Qualité de Service Tout En Economisant l’Energie », 2013.

[15]. Sohrabi K, Gao J, Ailawadhi V, Pottie GJ. Protocols for self-organization of a wireless sensor network. Ieee Personal Communications, 2000,7 (5):16-27.

[16] F. Ye, et al., “A Scalable Solution to Minimum Cost Forwarding in Large Scale Sensor Networks,” Proceedings of International Conference on Computer Communications and Networks (ICCCN), Dallas, TX, October 2001, pp. 304-309.

[17] K. Akkaya and M. Younis, “An Energy-Aware Qos Routing Protocol for Wireless Sensor Networks,” Proceedings of the IEEE Workshop on Mobile and Wireless Net works (MWN 2003), Providence, RI, May 2003.

[18]. Huang XX, Fang YG. Multiconstrained QoS multipath routing in wireless sensor networks. Wireless Networks, 2008,14 (4):465-478.

[19] H. W. Tsai, et al., “Mobile Object Tracking in Wireless Sensor Networks,” Journal of Computer Communications, Vol. 30, No. 8, March 2007.

[20]. Peng J, Chengdong W, Yunzhou Z, Zixi J. DAST: a QoS-aware routing protocol for wireless sensor networks. 2008 International Conference on Embedded Software and Systems Symposia (ICESS Symposia), 2008 259-264.

[21]. Rahman MA, GhasemAghaei R, El Saddik A, Gueaieb W. M-IAR: biologically inspired routing protocol for wireless multimedia sensor networks. 2008 IEEE Instrumentation and Measurement Technology Conference (IMTC '08), 2008 1823-1827

[22]. Razzaque A, Alam MM, Mamun Or R, Choong Seon H. Multi-constrained QoS geographic routing for heterogeneous traffic in sensor networks. IEICE Transactions on Communications, 20082589-2601.

[23]. Chenyang L, Blum BM, Abdelzaher TF, Stankovic JA, Tian H. RAP: a real-time communication architecture for large-scale wireless sensor networks. In: Proceedings Eighth IEEE Real-Time and Embedded Technology and Applications Symposium. 2002, 55-66.

[24]. Ratnaraj S, Jagannathan S, Rao V. OEDSR: Optimized energy-delay sub-network routing in wireless sensor network. In: Proceedings of the 2006 IEEE International Conference on Networking, Sensing and Control. 2006, 330-335.

[25]. Shanghong P, Yang SX, Gregori S, Fengchun T. An adaptive QoS and energy-aware routing algorithm for wireless sensor networks. 2008 International Conference on Information and Automation(ICIA), 2008 578-583.

[26]. Deb B, Bhatnagar S, Nath B. Reliable information forwarding using multiple paths in sensor networks. In: Local Computer Networks, 2003 LCN '03 Proceedings 28th Annual IEEE International Conference. 2003, 406- 415.

[27] MQoSR: A Multiobjective QoS Routing Protocol for Wireless Sensor Networks Hind Alwan and Anjali Agarwal Department of Electrical and Computer Engineering, Concordia University, Montreal, QC, Canada H3G 1M8 Hindawi Publishing Corporation ISRN Sensor Networks Volume 2013, Article ID 495803, 12 pages http://dx.doi.org/10.1155/2013/495803

[28] QGRP: A Novel QoS-Geographic Routing Protocol for Multimedia Wireless Sensor Networks. Mohammed-Amine KOULALI1, Mohammed EL KOUTBI1, Abdellatif KOBBANE1 IJCSI and Mostafa AZIZI2 International Journal of Computer Science Issues, Vol. 8, Issue 6, No 2, November 2011 ISSN (Online): 1694-0814

[29] J. N. Al-Karaki, A. E. Kamal, ‘‘Routing Techniques in Wireless Sensor Networks: A Survey,’’ IEEE Wireless Communications, Vol. 11, No. 6, Dec. 2004, pp. 6–28.

[30] QoS aware Routing for End-to-End Reliability of Delay Sensitive Events in Wireless Sensor Networks R.SUMATHI R.SRINIVASAN http://dx.doi.org/10.4108/ICST.COMSWARE2009.6556

127 © IT4OD 2014

Page 134: IT4OD 2014 Proceedings

Bio-inspired Routing Protocol, Oriented

Maintaining of Connectivity by Mobility Control

BAHLOUL NOURELHOUDA* ABDESSEMED MOHAMED RIDA ZIDANI ABDELMAJID

Department of Computer Science Department of Computer Science Department of Computer Science

University of Batna University of Batna University of Batna

BATNA, ALGERIA BATNA, ALGERIA BATNA, ALGERIA

[email protected] [email protected] [email protected]

Abstract—The interest in systems of autonomous mobile robots

has increased with the advent of wireless technology which makes

their cooperation more effective to accomplish the tasks that they

are responsible of. To do this, each node-robot navigates

autonomously while remaining connected to the other nodes via a

wireless medium. In the case where a transmission has already

started, this connectivity can be maintained deliberately by

constraining the robots movements that it supports. In the other

cases, their movements depend on the desired task. In the

absence of centralized communication infrastructure, these

robots support exchanges of messages through a MANET where

they represent the nodes. Based on the operating principle of the

AODV, we propose here the BR-AODV routing protocol based

on the rules of keeping formation in the Boids of Reynolds; it

allows the maximum conservation of active routes. In many real

applications, the communication has priority over the required

task. In such circumstances, BR-AODV shows its supremacy over

the conventional protocols. To validate this, we compare it with

the AODV (one of the protocols of reference in the MANETs).

The simulation results are provided and discussed.

Keywords—Boids of Reynolds, Emergence, Maintaining of

connectivity, Mobility control, Network of mobile autonomous

robots.

I. INTRODUCTION

Nature has always been a source of inspiration to insufflate

the routing solutions for researchers and engineers, which are

increasingly sophisticated. The reason is that biological

systems are characterized by the pooling of a large number of

autonomous entities, interacting locally between them in order

to self-organize and coordinate their actions. Thus to

cooperate collectively to succeed in the given mission, resist

to the internal/external disturbances and to adapt with the

detected variations. Due to their modular and fully distributed

design emerges, at high level of these systems, the behaviors

which are incredibly sophisticated. These distinctions answer

to most characteristics of the routing protocols, necessary

currently, and those wished in the future. One of the most

carrying crenels in this perspective is the insect societies.

Indeed, swarm intelligence [3] was a source of inspiration

to build many routing protocols ensuring autonomy,

distribution, adaptability, robustness and scalability in the

wireless networks. This type of protocol will prepare the

advent for those of the next generation. They will be much

more intelligent to be able to manage routing in networks with

a high degree of autonomy [19][26].

The Artificial intelligence is the field of research which

includes all that relates to the understanding and reproducing

intelligence under all its forms. First, this discipline has

focused on the human being, trying to mimic his reasoning

[3]. Unfortunately, the obtained results were much more

humble than those expected. In nature, there are many other

intelligence forms, much simpler [3]. Swarm intelligence (SI)

via the collective behavior achieved by the schools of fish and

flocks of birds, represents a concrete example [2][3].

Based on most of these collective behaviors, we find a

social aspect of formation that promotes interactions and

exchanges of information between individuals of the same

group [11]. One of the most fruitful application areas of SI is

the swarm robotics (SR). When the robots are connected, this

gives more credibility and efficiency to their collective

behaviors. We speak then about a robots network organized as

a swarm and based on the self-organization. Thus to make

emerge behaviors preserving a biological reality via some

properties, such as: robustness, scalability, and flexibility [25].

The swarm of connected robots is often described as a

complex adaptive system (CAS) where the concepts of

emergence and self-organization are used conjointly. It

consists of a set of autonomous mobile particles-robot with a

rudimentary constitution. Each particle-robot is equipped with

sensors, actuators, and it is aware of its local environment [13]

128 © IT4OD 2014

Page 135: IT4OD 2014 Proceedings

[20]. This type of network accumulates already elements of

intelligence and it is eligible to join the class of intelligent

networks [26] which know how to adapt dynamically to

external and internal changes. In addition, the self-organizing

capacity is supposed to generate all self-* properties (as self-

configuration, self-optimization, self-repairing, self-protection

and self-explanatory) [25].

The cooperation allows to a swarm of robots to ensure

effectively the required tasks (such as exploration,

exploitation, monitoring and environmental mapping), while

wireless communication, that supports cooperation, it enables

him to achieve a high degree of flexibility and autonomy [8]

[9] [16] [20]. Because of this wireless communication, the

robots swarm succeeds to self-organize in network without

any centralized administration, once it is put in place [14][15].

Among the most wanted aspects of the latter we can cite self-

deployment [4][5] and self-configuration [6] depending from

the situations where the swarm of robots can be found. Such a

network can be a MANET (Mobile Ad hoc Network).

A MANET can be a network which is used by robots to

communicate [15][20], as it can be supported by these robots

[16][18]. In a MANET, the data transmission services adapt to

changes caused by the autonomous movements of nodes [4]

[5][6]. Because of this assumption of independent mobility,

and because of the absence of centralized administration, a

network of this type can be often partitioned [4]. This situation

is not desired in many multi-robot applications, where the

existence of uninterrupted communication channels between

the robots involved in a given exchange is required [10]. We

are, then, faced to the following challenge: ―how to coordinate

the movements of robots so that the roads connectivity is not

compromised?‖ This problem is already the subject of much

research in the field of robots networks.

In the first works integrating the multi-robots systems and

the ad hoc network, the solutions to maintain connectivity

were closely coupled with the applications, and were

conceived in an ad hoc way. A typical example is that of the

exploration of an unknown environment by robots connected

jointly in order to map the ground [16] [13] [14]. To keep

connectivity in a decentralized manner, Vazquez et al. propose

in [16] that the robots analyze the complete topology of the

network to recognize the critical links. If such a link exists, the

task consists to maintaining it, is priority on the exploration.

The proposal of Notarstefano et al. in [17] allows the robots to

determine their displacements in a decentralized way, but by

maintaining a topology fixed. The exploration algorithm,

completely decentralized, proposed by Rooket et al. in [14]

ensures the fact that an exploration robot will not lose the

connection with the system during its mission. Stump et al. in

[15] are arrived to control the displacement of an exploration

robots group while keeping connectivity with a stationary

robot in a closed environment. The algorithm of exploration

of Sheng et al. in [13] is distributed but it needs global

information for keeping connectivity; with each planning

stage, the robots exchange their auctions on the border to be

visited. In [18] Schuresko et al. propose a set of distributed

algorithms to propagate the positions of the robots in the

network so that each robot calculates its displacement while

avoiding that connectivity between them will not be

compromised. Couceiro et al. in [20] suggest an algorithm for

keeping connectivity within a robots group performing an

exploration task via a particle swarm optimization. Zhong et

al. in [22] propose a solution based on the neuro-fuzzy in

order to maintain connectivity between several mobile robots.

The work of Ayad et al. in [23] presents a proactive method

for keeping connectivity between a group of mobile robots

according to principles of electromagnetic fields and signal

strength.

All these works gives an outline on the key ideas which

were behind the problem resolution of keeping connectivity in

the robots networks. Let us note that they have no relationship

with the communication protocols used. This represents one of

the originalities of work which we present here.

Before giving more explanation about the problem addressed here, we have to specify what is meant by "maintaining of connectivity in a robots network". Informally, we wish to propose a strategy that allows the robots to verify, each at its level:

1) If it participates to one or several active communication paths.

2) If this is the case, it must ensure, when moving, that it will not cause any disconnection in these paths. If the disconnection problem can occur, it must plan his displacement in order to avoid it.

In this way, the global behavior, resulting from the

interactions between the robots of system, adapts to

environmental changes due to the mobility so as to keep

connectivity in active paths.

The main idea on which this work is built is the proposal of a new routing protocol oriented keeping of connectivity, emerging from mobility control. This derives from the AODV protocol, in which a control module of robot movements is added [3][7]. This control is based on that of Boids of Reynolds [2][3][21] which justifies its name of BR-AODV.

The rest of this paper is organized as follows: section II,

devoted to a state of knowledge, describes the MANETs

networks, their routing protocols, swarm intelligence and list

the works related to the problem of maintaining of

connectivity. Section III, provides the details of treated

problem. Section IV explains the proposed solution.

Simulation results are presented and discussed in Section V.

Finally, the last section done a synthesis of the work

accomplished and suggests some perspectives.

II. KNOWLEDGE STATMENT

A. Mobile ad hoc networks

A MANET is a dynamic autonomous system, composed of mobile units, communicating via a radio media without centralized administration. In this kind of topology, all nodes

129 © IT4OD 2014

Page 136: IT4OD 2014 Proceedings

cooperate to ensure an appropriate management of the network (such as control and routing) [4][6].

Its dynamic topology plays an important role in the functioning of its communications protocols. That induced a strong impact on its performance and its reliability. This ad hoc technology is deployed on different hardware structures, such as vehicular networks (VANET) and robots networks (RANETs) [24]. They are qualified of autonomous intelligent when they are flexible, self-organize, learn and adapt without external intervention [26].

The management of autonomous intelligent networks is an area of sensitive research. These networks are massively parallel systems; composed of many independent entities performing a predefined task. The overall behavior of the system emerges from the interaction of these independent entities. The programming paradigms are shifting, then, to the development of these entities and the self-organization is the solution to control the whole [26].

1) Routing in MANETs: The research in the field of routing

has accompanied the evolution of networks to adapt the

routing methods to different technologies of communication

and to needs evolution of users toward Internet connectivity

available anywhere, and at any time. These systems are

characterized by: - a large heterogeneity in terms of

communication technologies (protocols and services), - an

important dynamic, due to continuous changes of topology - a

variety in traffic patterns, and - a considerable number of users

and active services [4].

It is clear that the autonomous and intelligent management, control and adding of new services in these complex and evolving networks, require the definition of new routing protocols [6][19][26]. However, the design of routing protocols for MANETs is more difficult in comparison with conventional systems. Despite many existing proposals in the literature, research on routing in these networks remains valid.

The existing routing protocols destined for MANET networks are in charge of finding a way to route data from a source node to a target one, provided that the route exists. If such a route does not exist, these protocols have no influence on the mobility of robots in order to restore it or to create it again [6]. Therefore, we need to fetch inspiration elsewhere, in order to find an alternative. To this effect, nature seems an inexhaustible source.

2) AODV (for Ad hoc On Demand Distance Vector): Is a

reactive routing protocol for ad hoc networks. It allows, to

mobile nodes, obtaining routes on demand, thereby reducing

the size of routing tables at each node as well as traffic control

relating thereto and minimizes the number of broadcasted

messages.

Indeed, as long as the ends of a connection have a valid

route which connects them, AODV does not intervene in

routing. When a road is required, AODV initiates a discovery

process of road for connecting the pair of nodes in question. It

is based on the use of two mechanisms [1] [5]: (a) route

discovery, and (b) maintaining road. The establishment and

maintenance of roads is provided by the exchange of different

types of messages: - Route Request - Route Reply - Hello

message and - Route Error. Each node maintains a routing

table that contains an entry for each destination accessible. An

entry in the routing table is created when a node receives a

message for an unknown destination.

The AODV uses sequence numbers to maintain the

consistency of the routing information. Because of the nodes

mobility in ad hoc networks, the routes they support may

become invalid. The sequence numbers allow the use of the

freshest routes [1]. A route unexplored for a while is removed

from the routing tables for space reasons.

B. Swarm intelligence

SI is a new discipline of AI. She tries, using the model of

multi-agent systems to design intelligent artificial systems

inspired by biological social systems (such as ants, flocks of

birds and schools of fish). The members of these societies are

unsophisticated. But, despite this, they are able to achieve

complex tasks. Coordinated behavior of the swarm emerges

from interactions, relatively simple, between individuals. The

graphic animation [2], the optimization algorithms [12], the

swarm robotics [7][11], routing and load balancing in

telecommunication networks [19] are the areas where the SI

principles are applied successfully. The resulting systems are

characterized in particular by the robustness and flexibility.

1) Swarm robotics: It is a new approach to the coordination of

a large number of robots which has emerged as application of

SI to multi-robot systems. It is inspired by the observation of

social animals. SR focuses on the physical embodiment of

individuals, interactions between them and between

individuals and the environment [7]. The swarms provide

increased capacity to complete a task (high fault tolerance), a

low complexity of the units and finally a low manufacturing

cost relative to traditional robotic systems. The emergence of

synchronized behaviors in these systems is quite impressive

for researchers working on multi-robot systems, because they

emerge despite on relatively incapable individuals, the lack of

centralized coordination and the simplicity of interactions

[11].

2) Boids of Reynolds: The graphic animation was probably

the first discipline to focus on the discoveries carried on the

decentralized organization of animal societies and SI. Dice

1986 Craig Reynolds, inspired by recent results on the

formation of schools fish and flocks of birds achieves a

graphical application where agents he calls Boids moves

coherently in a virtual environment and model an emergent

behavior where each Boid acts autonomously while respecting

a number of simple rules [2] [21]:

a) Too close to another Boid, it tries to move away. b) Too far from the group, it tries to get closer to its nearest

neighbors. c) It continually seeks to adjust its speed to the average speed

of its neighbors, and d) Finally, it Avoids obstacles that appear in front of him.

130 © IT4OD 2014

Page 137: IT4OD 2014 Proceedings

In short, each Boid seeks to maintain a minimum distance

with its neighbors. This depends on its observation and its

local vicinity.

III. SPECIFICATION OF THE PROBLEM

The section II.A allowed us to see that the usual routing protocols of ad hoc systems do not offer solutions to the problem of maintaining connectivity in MANETs. The conventional routing protocols make assumptions that nodes can move without constraints and join or leave the network arbitrarily. This makes them ineffective for maintaining the connectivity required in certain applications.

The AODV appreciably minimizes the number of diffusions of messages by creating roads on demand, maintained during its using time. This protocol upgrades the routing tables only when it is necessary and saves the band-width. Nevertheless, it appears slower; it updates its table of routing before communicating and the established paths can become, at any moments, failed and invalid. This induces a loss of connectivity in the network. Such a situation is not desirable in some multi-robot applications like a rescue mission [20].

When nodes in a MANET are robots, it is called RANET. Our problem, then, is to study the maintaining of connectivity in such a network. The choice of a RANET is justified by the fact that its nodes can be commanded. In this case, we want ensure the availability of reliable communication channels between all active nodes throughout a given mission.

The maintaining of routes between mobile devices of a communication network is a known problem in the MANETs [4][6]. Multiple routing algorithms have been developed for this reason [5][6], but, all, assumes that the displacements of the network nodes are not controllable. This leaves the only alternative of prediction the nodes movements according to existing models, to try to contain this mobility. However, in the case of a robots network, we have advantage to deal autonomous entities that decide to their moves. We focus, then, on this ability to control the mobility for solving the problem of maintaining connectivity in active paths of such networks.

In this case, the problem can be reformulated as follows: ―How to coordinate the robots movements so that the connectivity in the network will not be compromised when transfers are already started (this, while still always arriving to succeed the mission which they are in charge)?‖

IV. PROPOSED SOLUTION

According to the problem posed previously, the proposed

solution is distributed because the effort in terms of

computation and communication is spread over the robots

participating for the establishment of a given path. It is generic

because it is not related to a specific application context, or to

a particular type of robot. The originality of the proposed

solution lies in maintaining connectivity in order to increase

the lifetime of the links at maximum. To do this we focus on

the mobility control that is an integral part of the suggested

routing.

This solution is concretized through the protocol BR-

AODV derived from AODV; it uses its same basic elements

(the same exchanged types of packets with same structures,

the same structure of routing tables, ...) while changing its

discovery mechanisms and maintenance of roads. BR-AODV

attempts to minimize the number of launches of the discovery

process of roads and to support maintaining of active paths as

long as they are needed by the emitting sources. To do this, it

replaces the maintaining process of roads by a mobility control

module, performed by applying the principle of maintaining

training in Boids of Reynolds based on the distance control on

the movement of robots (see II.B.2).

The proposed routing scheme is applied to a network of

autonomous mobile robots which the criteria are:

• The network is asynchronous and of large scale.

• The multi-hop communication is based on the AODV

routing protocol

• The network is self-directed, self-organized and consisting

of N nodes.

• The number of robots can change dynamically when nodes

join or leave network.

• Each node has a unique identifier ID in the network; it can

be a MAC address or an IP address.

In our architecture we assume the following:

• Each robot i has a velocity vi and a position pi.

• Each robot detects locally one or more neighboring nodes.

In order that a node i can define its neighbor list i, it

proceeds as follows: In reality, the node i must calculate the

distance between its current location and the other nodes of

the network, by sending them waves (Hello message). When

these waves return toward the node i, it calculates their

attenuation rate (signal power), and according to this delivered

power, it can define its neighborhood. To simulate this

technique we have transformed this problem to a geometric

problem, where the node i calculates the distances that

separate it from all other nodes in the network by the

Pythagoras law:

d2= (x(i)-x(j))2 +(y(i)-y(j))2 (1)

After the calculation of (1), the node compares the

obtained distances with the radius of its scope z. If the distance

between i and another node is smaller or equal to the range of

i, this node is added to the list of neighbors of i. We have,

also, to take into consideration the following assertions:

• Mobile robots are homogeneous: they are similar in their

processing capacity, communication, storage and energy.

• Each node can move and leave the network arbitrarily.

• All the network nodes move in an autonomous way, except

those which take part in establishment operation of a road

or in routing of packets.

131 © IT4OD 2014

Page 138: IT4OD 2014 Proceedings

The Nodes whose movement is restricted will be released

when a timeout is expired or the routing path where they

contribute expired its lifetime (the path has been idle for a

while). The principle of Boids of Reynolds is applied to the

nodes movements that participate in one or more active paths

where each node which contributes to routing data in these

paths is handled as a Boid in a swarm where its movement

should observe the following three rules:

1) Separation: avoid collisions with the nearest neighbors, this

means to keep a minimal distance with them (see (2)),

2) Alignment: adapt its speed to that of its neighbors, and

remain in the common direction of displacement (see (3)),

3) Cohesion: stay close to its neighbors while approaching to

the swarm center (see (4)).

In simulation terms, the problem formalization is made by

a group of boids B = b1, b2, ..., bn which represents all the

robots constituting the active paths, where each is placed in a

position pi. i is defined as the group of boids in the zone of

radius z of boid bi. Each boid moves through the space with a

velocity vi.

The above rules are translated by the following formulas:

vs = (pj pi) (2) bji :d(bj,bi)<z

va = 1 vj vi (3)

bji

vc = ci pi where ci = 1

pj (4)

bji

With these three formulas, we can compute the movement

speed of each boid at time t +1 as follows:

111 tvtvwtvwtvwtv iccaassi iii (5)

Where α is the smoothing parameter belonging to [0, 1]. It

indicates the influence rate of a robot current perception on his

decision to move. ws, wa and wc are weights taken in [0,1],

corresponding respectively to the separation, alignment and

cohesion. The resulting motion is expressed by the following

formula:

pi(t+1) = pi(t) + vi(t+1) (6)

The displacements of the nodes that do not participate in

routing of active paths are not concerned by these rules; they

obey rather to the strategy adopted by the task to achieve.

V. SIMULATION RESULTS

Despite BR-AODV uses the same basic mechanisms than

AODV, nevertheless it differs from the latter in several points.

For instance, If we disregard the problem of nodes failure,

BR-AODV is totally exempt from the maintenance phase of

the roads, it is replaced by the mobility control of nodes, in

case where the failures are taken into consideration, this phase

will appear rarely.

In this section we present the simulation results of the

AODV protocol and those of the suggested protocol in order

to compare them; which will allow us to evaluate our solution.

To do so, we are interested to studying the impact of the

following factors on the performance of the two protocols:

• The network connectivity depending on the transmission

range of the nodes.

• The node mobility (speed and direction).

• The network size (number of node in the network).

In our simulations, we are interested to study the impact of

the factors described above on the success rate of packet

delivery to their final destination which indirectly expresses

the ability to maintaining connectivity in the active paths. This

rate is measured by the number of packets sent to their final

destinations NPTFD on the total number of packets to be

transmitted TNPT. We note μ the success rate of packet

transmission, and its value is calculated by:

μ= NPTFD / TNPT (7)

The simulation scenarios were implemented under

MATLAB. The various tests were performed using a MANET

network of 100 wireless mobile nodes scattered randomly on a

plot 100x100 m2, where each node has a uniform transmission

range. Each node represents a robot, nodes are deployed

randomly in mission space. The motion of the nodes is

performed according to the model of mobility Random Way

Point (RWP), mobile nodes are initially randomly distributed

around the zone of simulation. A mobile node starts with

staying in one place for a certain period of time belonging to

[2, 6] Once this period is over, the mobile node chooses a

random destination and a speed uniformly distributed in the

interval [0 m/s, 50 m/s].

The FIGs presented below show the superiority of the

proposed protocol (BR-AODV) on AODV reference protocol

via the comparison of the success rate of packet transmission

to their destination for each of these two protocols. This by

varying the transmission range of each node (see Fig. 1),

speed (see Fig. 2) and the size of the network (see Fig. 3).

Therefore, we conclude that BR-AODV confirms its

performance and its efficiency as well as its adaptation, in

terms of needs of connectivity, to networks of autonomous

mobile robots compared to AODV protocol.

|i|

|i|

i

i

i

132 © IT4OD 2014

Page 139: IT4OD 2014 Proceedings

Figure. 1. Impact of the transmission range on the success rate of packets

transmission.

Figure. 2. Impact of the movement speed on the success rate of packets

transmission.

Figure. 3. Impact of network size on the success rate of packets

transmission.

VI. CONCLUSION

The use of MANET technology as a communication medium in systems of mobile autonomous robots takes a wingspan increasingly wide; a connectivity, as permanent as possible, between robots implied in transmission phases of information is generally desirable. But, it becomes imperative in many real situations where information must be sent at the decision center as soon as it is collected, such as in the missions rescue.

In order to solve this problem of cuts roads during the

phase of data transmission (caused by the mobility of nodes in

a network of autonomous mobile robots), our proposal is

based on the original concept of Boids of Reynolds applied to

the routing protocol of reference, AODV. The resulting

protocol, BR-AODV, is more appropriate, and faces the

constraints of a mobile ad hoc network more effectively; it is

more flexible, scalable and able to adapt to situations of

internal network. Also, it provides better availability of

already active routes and much more performance within the

RANET network considered in this study.

Unfortunately the topological changes due to the

dysfunctions of robots and energy depletion remain

problematic. This is a part of our future concerns that we plan

to treat soon.

Computer systems that have self-* properties and adapt to

changes in their environment, without centralized

administration, are called "organic computer systems". This

can be the case of the network studied here. The resulting

behavior of such a network can be classified as "emerging",

since it is quite difficult to predict its response. Self-

organization of the system can show a negative emerging

behavior that is neither wanted nor planned in the design of

our protocol. The idea whereas we project to experiment as a

complementarity, then, is the control of this undesirable

emergence in order to avoid its effects and achieve the desired

quality of maintaining connectivity. This, will project us,

surely, in the field of organic computing [25]). In addition we

project to try to resolve this optimization problem via the

"PSO" Meta-heuristic.

REFERENCES

[1] C.E. Perkins and E.M. Royer, ―Ad-hoc on-demand distance vector

routing‖. In: Mobile Computing Systems and Applications,

Proceedings. WMCSA'99. Second IEEE Workshop, 1999, pp. 90-100.

[2] C.W. Reynolds, ―Flocks,herds and schools: A distributed behavioral

model‖. In: ACM SIGGAPH Computer Graphics, vol. 21, pp. 25-34,

July 1987.

[3] J. Kennedy and R.C. Eberhart. ―Swarm intelligence‖. Morgan

Kaufmann, 2001.

[4] C.E. Perkins, ―Ad hoc networking‖. Addison-Wesley Professional,

2008.

[5] B. Karthikeyan, N. Kanimozhi and S.H. Ganesh, ―Analysis of Reactive

AODV Routing Protocol for MANET‖. In Computing and

Communication Technologies, IEEE, 2014. pp. 264-267.

[6] M. Abolhasan, T. Wysocki and E. Dutkiewicz, ―A review of routing

protocols for mobile ad hoc networks‖. Ad hoc networks, vol. 2, pp. 1-

22, 2004.

[7] G. Beni, ―From swarm intelligence to swarm robotics‖. In: Swarm

Robotics, Springer Berlin Heidelberg, vol. 3342, pp. 1-9, 2005

[8] W. Burgard, M. Moors, C. Stachniss and F. Schneider, ―Coordinated

multi-robot exploration‖, IEEE Transactions on Robotics, 2005, pp.

376–386.

[9] W. Burgard, M. Moors, D. Fox, R. Simmons, and S. Thrun,

―Collaborative multi-robot exploration‖. In Robotics and Automation,

IEEE International Conference on Vol. 1, pp. 476-481, 2000.

[10] M.A.Hsieh, A. Cowley, V. Kumar, and C.J. Taylor, ―Maintaining

network connectivity and performance in robot teams‖, Journal of Field

Robotics, vol. 25, pp. 111-131, 2008.

[11] E. Sahin, ―Swarm robotics: From sources of inspiration to domains of

application‖. In Proceedings of the First International Workshop on

Swarm Robotics, Springer, vol. 3342, pp. 10–20, 2005.

[12] C. Blum and X. Li, ―Swarm intelligence in optimization‖, Springer

Berlin Heidelberg, 2008, pp. 43-85.

[13] W. Sheng, Q. Yang, J. Tan and N. Xi, ―Distributed multi-robot

coordination in area exploration‖. Robotics and Autonomous Systems,

vol. 54, pp. 945-955, 2006.

[14] M.N. Rooker and A. Birk, ―Multi-robot exploration under the

constraints of wireless networking‖, Control Engineering Practice, vol.

15, pp. 435-445,2007.

[15] E. Stump, A. Jadbabaie and V. Kumar, ―Connectivity management in

mobile robot teams‖. In Robotics and Automation, 2008. ICRA 2008.

IEEE International Conference, pp. 1525-1530.

[16] J. Vazquez and C. Malcolm, ―Distributed multi-robot exploration

maintaining a mobile network‖. In Intelligent Systems, Proceedings.

2004 2nd International IEEE Conference Vol. 3, pp. 113-118, 2004.

133 © IT4OD 2014

Page 140: IT4OD 2014 Proceedings

[17] G. Notarstefano, K. Savla, F. Bullo and A. Jadbabaie, ―limited-range

connectivity among second-order agents‖. In American Control

Conference, IEEE, 2006, pp. 6-pp.

[18] M. Schuresko and J. Cortés, ―Distributed motion constraints for

algebraic connectivity of robotic networks‖. Journal of Intelligent and

Robotic Systems, vol. 56, pp. 99-126, 2009.

[19] A. Giagkos and M. S. Wilson, ―BeeIP-A Swarm Intelligence Based

Routing for Wireless Ad Hoc Networks‖. Information Sciences, vol.

265, pp. 23-35, 2014

[20] M.S. Couceiro, R.P. Rocha and N.M. Ferreira, ―Ensuring ad hoc

connectivity in distributed search with robotic darwinian particle

swarms‖. In Safety, Security, and Rescue Robotics (SSRR), IEEE

International Symposium, 2011, pp. 284-289.

[21] A.Konak, G.E.Buchert, and J.Juro, ―A flocking-based approach to

maintain connectivity in mobile wireless ad hoc networks‖. Applied

Soft Computing, vol. 13, pp. 1284-1291, 2013.

[22] X. Zhong and Y. Zhou, ―Maintaining wireless communication coverage

among multiple mobile robots using fuzzy neural network‖. In

Mechatronics and Embedded Systems and Applications (MESA), 2012

IEEE/ASME International Conference, 2012, pp. 35-41.

[23] M. Ayad, J.J. Zhang, R. Voyles, and M.H. Mahoor, ―Mobile robot

connectivity maintenance based on RF mapping‖. In Intelligent Robots

and Systems (IROS), 2013 IEEE/RSJ International Conference 2013,

pp. 3398-3405.

[24] D.D. Kouvatsos and G.M. Miskeen, ―Performance related security

modelling and evaluation of RANETs‖. Wireless Personal

Communications, vol. 64, pp. 523-546, 2012.

[25] C. Mller-Schloer, H. Schmeck and T.Ungerer, ―Organic Computing-A

Paradigm Shift for Complex Systems‖. Springer-Verlag, 2011.

[26] M.Ayari, Z.Movahedi, G.Pujolle and F.Kamoun, ―Adma: Autonomous

decentralized management architecture for manets: A simple self-

configuring case study‖. In Proceedings of the 2009 international

conference on wireless communications and mobile computing:

Connecting the world wirelessly, ACM, 2009, pp. 132-137.

134 © IT4OD 2014

Page 141: IT4OD 2014 Proceedings

Periodic/Aperiodic Tasks Scheduling Optimization for Real Time Embedded Systems with hard/soft

constraints

Fateh Boutekkouk Dept. of Mathematics and Computer Science

University of Oum El Bouaghi Oum El Bouaghi, Algeria

[email protected]

Soumia Oubadi Dept. of Mathematics and Computer Science

University of Oum El Bouaghi Oum El Bouaghi, Algeria [email protected]

Abstract—This paper deals with Real Time embedded systems scheduling optimization using genetic algorithms. The application is modeled as a set of periodic/aperiodic tasks graphs with precedence and hard/soft constraints. Architecture in turn is modeled as a graph of embedded processors which are connected by a shared bus or buses hierarchy with fast links. Our proposed approach takes advantage of both static and dynamic preemptive scheduling. The developed genetic algorithm uses a binary coding and tries to minimize the response time and tasks missing their deadlines.

Keywords—Real Time Embedded Systems, Scheduling, Genetic Algorithms.

I. INTRODUCTION In the last years, Real Time Embedded Systems (RTES) are

becoming omnipresent. This new technology is very attached to our daily life and can be nearly found in all domains such as transport, house electro manager, consumable electronics, games, telecommunication, multimedia, aerospace, military, etc. RTES are reactive systems with sensors/actuators tailored to execute specific tasks that can be periodic, aperiodic or sporadic. These tasks can be subjected to a variety of temporal constraints. The most important one is the deadline. In fact, RTES are classed to hard, soft or firm systems. This taxonomy depends on the deadline respect or not and its impact on the environment [4]. RTES design faces a big challenge and must minimize the overall cost and the power consumption.

In this context, we are interested in high level performance estimation and optimization of RTES with periodic/aperiodic tasks and hard/soft constraints targeting multiprocessors architecture. Here, we must note some differences between traditional multiprocessor architecture and RTES multiprocessor architecture. Firstly, RTES architecture is based on distributed memory and not shared memory. Secondly, RTES architecture includes generally an RTOS (Real Time Operating System) implemented as a k ernel without conventional files, complex I/O or memory management mechanisms (like pagination). RTOS is focused on Real Time Scheduling. An important difference is at the microprocessor level. Embedded processor is characterized by low clock

frequency, low memory capacity and low power consumption. An embedded processor may change its frequency dynamically.

According to the literature, we can state that most existing work target RTES with periodic or aperiodic, hard or soft constraints. Our effective contribution resides in the proposition of a mix RTES model that integrates periodic and aperiodic tasks with hard and soft constraints.

As it has been known, the scheduling problem is a difficult problem. This latter can be resolved using meta-heuristics. A meta-heuristic is applied on a vast class of problems with imprecise or incomplete data.

Genetic Algorithms (GAs) appear a good choice for solving complex, non linear, multi-objective and multi-modal problems that is the case in RTES. We can for instance optimize many objectives like response time, power consumption, the processor usage ratio, etc.

In this work, however, we employ GAs to optimize (minimize) the mean response time of tasks and the number of tasks missing their deadlines under the idea of balancing between processors usages ratios. The rest of paper is organized as follows: section two is devoted to related work. Our proposed RTES model is developed in section three. Section four presents a GA for RTES performance optimization. The experimentation with some results is discussed in section five before the conclusion.

II. RELATED WORK The application of GAs to resolve the scheduling problem

is not new. For traditional multiprocessor systems (not Real Time), the objective was primary to minimize the makespan which is the time consumed between the first and the last task in the system. Several GAs were developed [1, 2, 3, 7]. In the real time context, tasks acts as infinite loops, the most important parameter is the response time that is the interval between the task arrival time and its end time. Several works tried to apply GA or multi-objective GA to optimize Real time multiprocessor systems performance [5, 6, 8, 9]. According to the literature, we can state that most works make strict hypothesis to simplify performance analysis. For instance they

135 © IT4OD 2014

Page 142: IT4OD 2014 Proceedings

target only one class of Real time systems (i.e. periodic tasks) with one type of constraints (i.e. soft).

We note that in most cases, it is difficult to compare between the performances of the developed GAs because, the hypotheses are different.

Contrary to these works, our objective is to develop an RTES model to represent both periodic and aperiodic tasks with hard and soft constraints. Such a model must be realistic but at the same time it has to simplify performance analysis.

III. RTES MODELING RTES modeling is the first step in performance

optimization. Several models of computation have been proposed in the literature, however in this work, we are interested in tasks graphs with precedence relations.

A. Application modeling RTES logical part or application is modeled as a set of

tasks graphs (TG). Here, we distinguish between two classes of TG: periodic TG (PTG) and aperiodic TG (ATG).

Fig. 1. Example of PTG and ATG

1. PTG It is composed of periodic tasks with messages. Each TG

has a period P, so all tasks belonging to the same TG has the same period P. We assume that all periodic tasks are synchronous (have the same arrival time). Each task has a relative deadline D. Here, we can distinguish between PTG with soft tasks (in green) and PTG with hard tasks (in red). Each Soft task is characterized by an execution time (when it is allocated to a processor) expressed as ACET (Average Case Execution Time) and each hard task as WCET (Worst Case Execution Time).

2. ATG It is composed of aperiodic tasks with messages. We

assume that all aperiodic tasks are soft. The arrival dates of aperiodic tasks are generated following

the Poisson Law with parameter λ. Each aperiodic task has a relative deadline and an ACET.

In order to simplify performance analysis, we assign to each aperiodic task a pseudo-period. The length of this pseudo-period equals to the mean of inter-arrival times that are generated by the Poisson Law for each aperiodic task.

Tasks scheduling uses two policies: static scheduling where tasks priorities are pre-calculated and then fixed for all periods or pseudo-periods according to their relative deadlines (DM: Deadline Monotonic) or periods (RM: Rate Monotonic) and dynamic scheduling where priorities are randomly assigned to tasks for each period or pseudo-period.

Messages between tasks are also modeled in both PTG and ATG. A message is activated only when the task producing this message completes its execution. Each message has a size (in KBytes). A message m0 has a priority higher than a message m1 if the destination task of m0 has a relative deadline (or a period) less than the destination task of m1

We assume that tasks have no period, but when the period or the pseudo-period of a TG is reached, all transmissions are stopped and TG messages parameters are initialized.

.

B. Architecture modeling RTES physical or hardware part is modeled by a graph

where nodes are processors and arcs are buses. Our hardware architecture represents a m ultiprocessor architecture with shared bus, buses hierarchy with bridges and fast links (bi-points connections). Each bus, bridge or fast links has a debit (speed) (Kbytes/s). Each embedded processor is characterized by a computing capacity, a local memory and an RTOS (Real Time Operating Scheduler) to execute one or more tasks. Figure 2 shows an example of hardware architecture with eight processors, three buses, three bridges and two fast links.

Fig. 2. Example of hardware architecture with eight processors, three buses, three bridges and two fast links

We assume that all embedded processors use the same scheduling policy and have limited size queues to stock ready tasks.

C. Tasks and messages Allocation Tasks and messages allocation consist in assigning tasks to

processors and messages to buses. Messages allocation depends on tasks allocation. The tasks allocation precedes the tasks scheduling and can be made randomly or according to some greedy algorithms.

IV. OUR GENETIC ALGORITHM GA steps are presented in figure 3.

Soft and periodic tasks

5 2

7 6 3

8 1 4

9

Hard and periodic tasks

Soft and Aperiodic tasks

Lin

Lin

brid

g

brid

g

brid

ge

136 © IT4OD 2014

Page 143: IT4OD 2014 Proceedings

gene

Number of processors

Number of tasks

Fig. 3. GA steps

A. GA with static priorities 1. Chromosome coding A chromosome is coded as a binary matrix Mat. Columns

correspond to tasks and lines correspond to processors. Mat(i,j) = 1 if task j is allocated to processor i 0 otherwise. 2. Chromosome reparation Used to repair chromosomes in cases where a processor has

zero tasks, a processor with a number of tasks surpassing its queue size, a task with zero or more than one processor.

Fig. 4. Chromosome coding

3. Tasks and messages scheduling Two scheduling algorithms are used in our approach: RM

and DM. For aperiodic tasks, we apply aperiodic tasks server algorithm, so we create a new periodic task or server (serving aperiodic tasks) with lower priority whose period is equal to the computed pseudo-period.

The analysis time is equal to the least common multiplier of tasks periods. Messages allocation and scheduling is done in a similar fashion to tasks allocation and scheduling. Note that if two dependent tasks are allocated to the same processor, the message transfer time between the two tasks is considered null; otherwise, the time of message transfer depends on the way the processors are connected.

Fig. 5. Messages allocation

4. Evaluation Our objective is to minimize tasks response times and the

number of tasks missing their deadlines but at the same time balancing between processors usages ratios. The response time of a t ask is the elapsed time between the task activation (arrival) and the task end time. We add to this time, the overhead due to message transfer over buses. The message transfer time is calculated on the basis of buses speed. In order to evaluate chromosomes fitness, we have to define two functions named TRMS, TUM :

TRMS the mean response time of system tasks

(1) TRMi

is the mean response time of the task i.

T1 T2 T3 T4 T5 P1 0 0 0 0 1 P2 1 0 0 1 0 P3 0 1 0 0 0 P4 0 0 1 0 0 P5 0 0 0 0 0

M1 M2 M3 M4 Bus 1 1 1 1 1 Bus 2 0 1 0 0

Bridge 1 0 1 0 0 Link 1 0 0 0 0 Link2 0 0 0 0

Generation of initial population (allocate tasks to processors randomly)

Tasks and messages scheduling

Evaluation

Stop criterion

Best chromosomes selection

Crossover

Optimal Solution

Chromosome reparation

Mutation

Insertion and replacement

Yes

No

The message M1 will be

transferred to Bus 1

137 © IT4OD 2014

Page 144: IT4OD 2014 Proceedings

(2) Where TRi is the response time of the task in activation i;

nb_activ is the number of activations. TUM is the mean usage ratio of system processors

(3) TU j

is the usage ratio of a processor j

(4) Uoccup is the occupation time of a processor In order to computer the number of tasks missing their

deadlines, we define a counter which is incremented whenever a task misses its deadline.

5. Stop criterion As a stop criterion, we decide to choose a fixed number of

generations. After this number, the GA is stopped. 6. Selection Selection is based on fitness value. In our case, the user can

select the response time or the number of tasks missing their deadlines as fitness function. Two selection techniques are used: elitism and tournament.

7. Crossover Two crossover techniques are used: in one point and in two

points. Our crossover is done between the best selected chromosome and the worst one of the population. In the case of one point crossover, the cutting point is computed on the basis of the fitness values ratios of the two parents. In the case of two points crossover, the cutting points are selected randomly.

8. Mutation This operator is used with a certain probability Pmut. It

consists in changing the value of a certain gene in the chromosome (changing the processor of a task). In our GA, we generate a random number between 0 and 1, if it is less than Pmut

9. Insertion and replacement

, the mutation is done otherwise the value of the gene remains unchanged.

In order to enhance the quality of chromosomes, we keep the half best chromosomes (parents) of the population for crossover then we insert the parents to build a new population. Since each crossover produces two new chromosomes, the population size remains constant.

B. GA with dynamic priorities With this technique, we assign to each task a random

priority during each generation. The chromosome is composed

of two matrixes: one for tasks allocation and the other for tasks priorities assignment.

Fig. 6. Chromosome coding with dynamic priorities

The role of chromosome reparation in this technique is to preserve the tasks priorities in the precedence relations in the graph tasks (the predecessor task has always a priority higher than the successor task). Independent tasks that are allocated to the same processor can not have the same priority.

All other genetic operators are similar to the first technique. The main distinction is the chromosome coding (all genetic operators use two matrixes instead of one).

V. EXPERIMENTATION We have tested our GA on a typical example including 20

tasks distributed on 4 T G and 3 different architectures (see figures 7, 8, 9, and 10). Task T2 is a server task. For the sake of space, we do not show tasks, processors and buses parameters.

Figures 11 and 12 show respectively the mean response time and the number of system tasks beyond their deadlines progression over the GA iterations for the three architectures.

Table 1 gi ves the best solutions found for the three examples after a set of experiments. Our tests are done on the basis of the following parameters: Tasks_number = 20, Sched_policy =DM, Crossover = one point, Pmut

= 0.1, Tps_Sim = 60, pop_size = 100),

Fig. 7. A typical example

T1 T2 T3 T4 T5 P1 0 0 0 0 1 P2 1 0 0 1 0 P3 0 1 0 0 0 P4 0 0 1 0 0

T1 T2 T3 T4 T5 Prior 1 0 1 0 0 0 Prior 2 0 0 0 1 0 Prior 3 0 0 0 0 1 Prior 4 1 0 0 0 0 Prior 5 0 0 1 0 0

Number of tasks

Number of processors

Prioritie

gene

Soft PTG Soft ATG Soft ATG

Hard PTG

138 © IT4OD 2014

Page 145: IT4OD 2014 Proceedings

Link1

Link2

Bus1

Bus1

Bus2

Fig. 8. Shared bus

Fig. 9. Two buses with a bridge

Fig. 10. Two buses with a bridge and two fast links

Discussion According to the results, we can remark that the mean

response time and the number of tasks beyond their deadlines improve linearly over generations for the three examples. Note that the mean response time in the case of buses hierarchy with fast links is a bit little than the first and second architecture. The same thing for the number of tasks beyond their deadlines.

The shared bus architecture performance is a bit better than buses hierarchy may be this is due to the bridge overhead and even allocation that can have a big impact on scheduling (i.e. if two dependent tasks are allocated to the same processor, the transfer message time is null). The processors usage ratios for

the three architectures have the same value because our GA tries to balance between all processors charges.

0

2

4

6

8

10

12

14

16

1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96

Aver

age r

espo

nse t

ime

number of generations

First example Second example third example

a

Fig. 11. Mean response time progression over generations

0

2

4

6

8

10

12

14

1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96

Task

s be

yond

the

ir de

adlin

es

number of generation

First example Second example third example

b

Fig. 12. Tasks beyond their deadlines number progression over generations

TABLE I. BEST RESULTS

Example

Mean

response

time (3

Cpus)

Usage ratios of

Cpus

Number of

tasks beyond

their deadlines

1 10.75 33.0 % 3 2 11.65 33.0 % 4 3 10.4 33.0 % 0

Figures 13 and 14 show respectively the mean response

time and the number of system tasks beyond their deadlines progression over the GA iterations for the three architectures in the case of dynamic priorities. Table 2 gives the best solutions found for the three examples after a set of experiments.

Bus2

Bri

dge1

Bri

dge1

Shared bus

139 © IT4OD 2014

Page 146: IT4OD 2014 Proceedings

0

2

4

6

8

10

12

14

16

1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96

Aver

age

resp

onse

tim

e

number of generations

First example Second example third example

a

Fig. 13. Mean response time progression over generations (dynamic priorities)

0123456789

10

1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96

Task

s be

yond

the

ir de

adlin

es

number of generation

First example Second example third example

b

Fig. 14. Tasks beyond their deadlines number progression over generations (dynamic priorities)

TABLE II. BEST RESULTS FOR DYNAMIC PRIORITIES

Example

Mean

Response

Time (3

Cpus)

Usage

Ratios of

Cpus

Number of tasks

beyond their

deadlines

1 10.5 33.0 2

2 10.15 33.0 3

3 11.3 33.0 1

Discussion According to the results, we can observe that the mean

response time and the number of tasks beyond their deadlines improve non-linearly over generations for the three examples.

On the other hand, the shared bus architecture performance is better than the second and the third architecture. However, the third architecture shows a lower number of tasks beyond their deadlines. Table 2 shows well that performance in the

case of dynamic priorities is lower than static priorities. This is due to the fact that dynamic priorities are generated randomly.

VI. CONCLUSION In this paper, we proposed a new RTES model for both

periodic and aperiodic tasks with hard and soft constraints. In order to optimize RTES performance, we developed a GA implementing static and dynamic preemptive scheduling. Static priorities are assigned following RM and DM algorithms. Dynamic priorities are assigned randomly but a r eparation mechanism is developed to preserve the precedence constraints. We have tested our GA on a typical example with three different architectures. According to the obtained results, we can conclude that performance in the case of static priorities is higher than the one in dynamic priorities. Allocation may have a big impact on scheduling. As perspectives, we plan to make more tests on our GA to understand the impact of GA parameters on the quality of solutions and to integrate the power consumption in the fitness function.

REFERENCES [1] R. C. Corrêa, A. Ferreira, and P.Rebreyend, “Scheduling

Multiprocessor Tasks with Genetic Algorithms”, IEEE transactions on parallel and distributed systems, Vol. 10, No. 8, August 1999.

[2] M.K Dhodhi, I. AhmadetIshfaq Ahmed, “A multiprocessor scheduling scheme using problem-space genetic algorithms”, Evolutionary Computation, IEEE International Conference, Vol.1, Perth, WA, Australia, Dec.1995 .

[3] M. S. Jelodar, S. N. Fakhraie, F. Montazeri, S. M. Fakhraie, M. NiliAhmadabadi, “A Representation for Genetic-Algorithm-Based Multiprocessor Task Scheduling”, 2006 IEEE Congress on Evolutionary Computation Sheraton Vancouver Wall Centre Hotel, Vancouver, BC, Canada July 16-21, 2006.

[4] M. Kasim Al-Aubidy, “Real-time s ystems, C lassification of Real-Time Systems”, Computer Engineering, Department Philadelphia University, Summer Semester, 2011.

[5] Y. Li, Y. Yang, M. Ma, R. Zhu, “A Problem-Specific Genetic Algorithm for Multiprocessor Real-time Task Scheduling”, The 3rd Intetnational Conference on I nnovative Computing Information and Control IEEE 2008.

[6] M. R. Miryani, M.Naghibzadeh, “Hard Real-Time Multiobjective Scheduling in Heterogeneous Systems Using Genetic Algorithms”, 2009 IEEE Proceedings of the 14th International CSI Computer Conference (CSICC'09), 2009.

[7] M. Rinehart, V. Kianzad, and S. S. Bhattacharyya, “A Modular Genetic Algorithm for Scheduling Task Graphs”, Technical Report UMIACS-TR-2003-66, Institute for Advanced Computer Studies, University of Maryland at College Park, June 2003.

[8] N. Sedaghat, H. T. Yazdi, and M. Akbarzadeh-T3, “Pareto Front Based Realistic Soft Real-Time Task Scheduling with Multi-objective Genetic Algorithm in Unstructured Heterogeneous Distributed System”, 5th International Conference, GPC 2010, Hualien, Taiwan, May 10-13, 2010.

[9] I. Stierand, P.Reinkemeier, T. Gezgin, P.Bhaduri, “Real-time scheduling interfaces and contracts for the design of distributed embedded systems”, 8th IEEE International Symposium on Industrial Embedded Systems (SIES), Porto, 2013.

140 © IT4OD 2014

Page 147: IT4OD 2014 Proceedings

Topic 5: WEB Technology and Knowledge

141 © IT4OD 2014

Page 148: IT4OD 2014 Proceedings

Developing a Knowledge Distributed Architecture to

Discover and Compose Semantic Web Services

Mohamed Gharzouli

Department IFA, Faculty of New Technologies of Information

and Communication (NTIC), University Constantine 2

Constantine, Algeria

[email protected]

Djamel Benmerzoug

Department TLSI, Faculty of New Technologies of Information

and Communication (NTIC), University Constantine 2

Constantine, Algeria

[email protected]

Abstract— The first generation of works done on Web

services architectures propose different solutions based on

centralized discovery methods (such as UDDI), where Web

services are described by service interface functions and they

publish their capabilities and functionalities with a registry.

However, these methods are not adapted to the dynamic

interactions. For this reason, recently, many solutions are

proposed to proceed to the distributed discovery of Web services.

The majority of research works illustrate P2P-based discovery

methods. In this paper, we present a P2P-based architecture for

semantic Web Services discovery and composition. Through,

Instead of using a centralized repository, in this solution we use

Knowledge-Centered point that saves a main ontology used by

the different peers to ensure the homogeneity. In addition, the

main objective of this work is to propose a solution that permits

to exploit the experiences already realized in the network.

Keywords— Semantic Web services, P2P computing, Web

services discovery, Ontology, Distributed applications

I. INTRODUCTION

Peer-to-Peer (P2P) networks have recently received great

attention due to their inherent scalability and flexibility. P2P

systems are decentralized, self-organizing distributed systems

that cooperate to exchange data. The increasing popularity of

P2P systems for file sharing indicates general interest in

resource sharing [7]. In the last few years, research on P2P

systems has been quite intensive, and has produced significant

results in scalability, robustness, location, distributed storage,

and system measurements. P2P systems are being increasingly

used in many different application domains. Among these

emergent research fields, Web services based on P2P

computing require special attention from collaboration and

interoperability in a distributed computing environment. Web

Services technology is considered as a revolution for the web

in which a network of heterogeneous software components

interoperate and exchange dynamic information [4], [5], [6].

Recently, P2P technologies have been used to improve the

automatic discovery of Web services. P2P systems provide a

scalable alternative to centralized systems by distributing the

Web services among all peers. The P2P based approaches

offer a decentralized and self-organizing context, where Web

services interact with each other dynamically.

On the other hand, other technologies are also used to

facilitate the dynamic discovery of Web services. An

important improvement has been made for Web semantic

technologies. In this context, the Web semantic can have

intervened to resolve the problem of technical based

description of the Web services discovery. A semantic

description of Web services (for example, by using OWL-S

description) is more understandable by the machine, which

facilitates the dynamic discovery of the Web services.

Therefore, in order to exploit the advantages of P2P networks

and the Web semantic, we combine these technologies to

propose a strategy to manage, discover and compose Web

services. The main objective of this work is to ameliorate the

already proposed architecture [1] through a development

process that tries to reuse the already compositions realized in

the network. This task permits to decrease the time of research

and discovery of Web services in a P2P network. The rest of this paper is organized as follow: in section 2,

we discuss about the different methods of web services discovery. Section 3 presents a P2P framework for semantic Web services discovery and composition. In section 4, we present a development process to ameliorate this framework. Section 5 discusses some related works and section 6 concludes the paper.

II. CENTRALIZED METHODS FOR WEB SERVICES

DISCOVERY

Centralized discovery methods (such as UDDI) present the

first generation of works done on Web services architectures,

where Web services are described by service interface

functions and they publish their capabilities and functionalities

with a registry (Figure 1) [24].

In this architecture, the discovery of Web services remains

two main hard problems. The first one is the technical

description realized generally by WSDL. This last provides

only a technique description. However, the automatic Web

services discovery requires a more intelligible description that

more understandable by the machine. The second problem of

Web services discovery is the centralized point of publication

and discovery which represent a repository like UDDI or a

research engine like service finder [25].

142 © IT4OD 2014

Page 149: IT4OD 2014 Proceedings

Fig. 1. Web services Architecture

To solve these problems, we discuss in the following

paragraphs the use of the Web semantic and the P2P

technologies in the context of Web services discovery.

A. Web services and Semantic Web services

Web Services presents a network of heterogeneous software

components interoperates and exchanges information with a

high degree of the interoperability. In this context, the first

specifications proposed in the web service architecture offer a

good level of the technique interoperability, especially, SOAP

(Simple Object Access Protocol [26]) and WSDL (Web

Services Description Language [27]). Even this last represents

one of the most important factors of the success of Web

services technology; it provides only a technique description.

However, the automatic Web services discovery requires a

more intelligible description. Thus, Web services should act

autonomously with as minimal human intervention as possible

[6]; they should be able to discover other services which have

particular capabilities and realize precise tasks. In this context,

the Web semantic technologies can have intervened to resolve

the problem of technical based description of Web services. A

semantic description is more understandable by the machine,

which facilitates the dynamic discovery of the Web services.

In this field, many of semantic languages are proposed: like

OWL-S [28], WSMO [29], METEOR-S [30] and other

specifications. Among these languages, OWL-S is the most

powerful and the most used by the web semantic communities.

For this reason, in our work we used this language and we

operated some related tools of this language like wsdl2owls

[31] and OWL-S MX Matchmaker [32].

B. P2P based methods for Web services discovery

The centralized discovery methods are not adapted to the

dynamic interactions, they restrict the scalability of flexible

and dynamic environment [2] [8], induce performance

bottleneck and may result in single points of failure [10].

Moreover, the centralized control of published services suffers

from many problems such as high operational and

maintenance cost. Furthermore, the universal UDDI repository

suffers from the miss of moderation: many of published Web

services are not available or they are not implemented by the

providers.

In addition, even if the web services are described

semantically, one of the major problems with existing

structure is that UDDI does not capture the relationships

between entities in its directory and therefore is not capable of

making use of the semantic information to infer relationships

during search [11]. Secondly, UDDI supports search based on

the high-level information specified about businesses and

services only. It does not get to the specifics of the capabilities

of services during matching [12].

To solve these problems, other architectures are proposed to

facilitate the discovery and composition of Web services.

Recently, many solutions are proposed to proceed to the

distributed discovery of Web services. The majority of

research works illustrate P2P-based discovery methods. Many

of them are related to automated discovery and composition of

semantic Web services in the P2P networks. These research

works are categorized according to the different types of P2P

networks: unstructured (Gnutella V0.4 [33]), hybrid (Gnutella

0.6 [34]) or structured (like Chord [13]). Among these types,

in our work presented in [3] we employed the unstructured

P2P networks for semantic Web services discovery and

composition in that we proposed a distributed strategy based

on epidemic algorithms. After, in [1], we proposed a

distributed architecture to implement the proposed strategy.

This architecture is well presented in the following section.

III. A P2P FRAMEWORK FOR SEMANTIC WEB SERVICES

DISCOVERY AND COMPOSITION

In our Work presented in [1], we described a distributed

framework, which implements a discovery strategy already

presented in [3]. In an unstructured P2P network, each peer

plays the role of a costumer and a provider of Web services.

This framework is installed on the various peers of the

network, whereas a central base of OWL ontologies (and

OWL-S descriptions) is used as a reference to develop the

various local ontologies and semantic descriptions of the

different provided Web services of the network (The global

architecture is presented in figure 2).

Fig. 2. Global Architecture

In this architecture, each peer in the network implements a

number of Web services described semantically with OWL-S

by using a local ontology. The Knowledge-centred base is

consulted by the different peers to develop or enrich local

ontologies of every peer. Using the same language of semantic

143 © IT4OD 2014

Page 150: IT4OD 2014 Proceedings

descriptions (OWL-S) and a central base of ontologies is an

important point to ensure the homogeneity. The central OWL

ontologies base contains the different concepts used in diverse

fields of proposed Web services. So, each peer wants to

participate in P2P Web services composition can generates

OWL-S descriptions of their Web services.

Also, the central base offers some OWL-S descriptions for

various Web services. If a peer has a similar web service, it

can reuse these OWL-S descriptions. In this context, an

example of a universal OWL ontology and a collection of

OWL-S descriptions for a variety of Web services is generated

manually by Ganjisaffar and Saboohi which contains more

than 240 semantic services descriptions and a main ontology

called “concepts.owl” [36] (in the following sections, we will

present some examples of this ontology).

In the following figure, we describe the distributed framework

installed on the various peers of the network.

Fig. 3. A Distributed Framework to discover and compose Semantic Web

Services.

The main idea of this framework is to make a distributed

discovery of Web services. This distributed framework

contains three layers: the semantic manager, the local

composition module and the P2P composition module (figure

3).

A. The Semantic Manager module

It manages the semantic descriptions of Web services. The

user uses an OWL-S generator and a base of local OWL

ontologies (figure 3 -arrows 2- ). These last must be developed

according to the central ontologies (figure 3 -arrow1-). The

OWL-S generator uses the WSDL descriptions and the

ontologies of the fields to generate the OWL-S descriptions of

Web services. In our case we used to wsdl2owl-s generator

[31] as a core to implement this component.

B. The Local Composition Module

This module has as an objective to discover a local Web

service to answer the external requests for the other peers. To

achieve this goal, we propose two components: the local

search engine and the local composition engine.

The Local search engine has two possible tasks: searching a

basic Web service or an eventual local composite Web

service.

When the peer receives a request from the network (figure 3 -

arrow3-), the P2P composition engine passes the request to the

local search engine (figure 3 -arrow4-). This last searches a

basic Web service to answer this request.

In the same time, the local search engine uses an OWL-S

matchmaker to discover a possible composition from a whole

of local Web services which responds to the request (figure 3 -

arrows5-). As a result, we have three possible scenarios:

If there is any basic web service or a probable

composition, the local search engine returns a negative

response to the P2P composition engine.

If there is a basic Web service or an eventual

composition. In the invocation step (in the

composition), the local search engine generates a

BPEL file and sends it to the local composition

engine (figure 3 -arrow6-), which uses the service

invoker to invokes the basic Web services or a whole

of Web services according the process defined in the

BPEL file.

If there is a probable semi-composition formed from a

single Web service or a whole of Web services, the

local search engine generates a request and proposes it

to the P2P composition engine. This last can send this

request to other peers in the network that can continue

the discovery operation.

144 © IT4OD 2014

Page 151: IT4OD 2014 Proceedings

C. The P2P Composition Module

This module presents the interface between each peer and the

P2P network. It’s the main component used to realize a

collaborative composition among a whole of participant peers.

This layer contains three components: the composition table

(already presented in [3], a filter and the P2P composition

engine.

The filter is a program used directly by the user to clean the

composition table from the inactive composition (figure 3 -

arrow7-). This operation is very important in a dynamic

environment like the P2P networks where many peers join and

quit the network frequently. For this reason, there are many

P2P compositions that become inaccessible when one or many

participant peers are absent. The filter makes statistics about

the composition table entrees to detect the compositions that

became inactive since a long time (figure 3 -arrow8-). These

statistics offer a clear vision to the user about the composition

states in the table.

The P2P composition engine contains a request/response

component to receive or to send requests (figure 3 -arrow9-).

This component is used in many possible scenarios that are a

relationship with the scenarios already explaining the local

composition layer. Furthermore, the user can use the P2P

composition engine to start a search operation in the network.

When it receives a request from another peer of the network

(using the P2P platform) (figure 3 -arrow3-), the P2P

composition engine sends the request to local composition

engine. This last can return three possible responses:

A positive response: in this case the P2P composition

engine sends the response to the request peer.

A negative response: the P2P composition engine

evaluates a new TTL and transfers the request to other

peers (the direct neighbors in the network).

A semi-composition proposition: the P2P composition

engine searches before in the composition table from a

composition that responds to the main request or can

continue the composition with the request of the semi-

composition proposition (figure 3 -arrow10-). If there

is a composition in the table, the P2P composition

engine sends the request to the initiator peer of this

composition. Else the P2P composition engine

evaluates the TTL and continues the discovery using

the request proposed by the semi-composition of the

local composition engine.

In the end, if the discovery has been finished successfully, the

initiator peer generates the BPEL file to launch the P2P

composition. In this case, each participant used the P2P

composition and the local composition engine to receive,

execute and send the response (figure 3 –arrow 11- ).

The composition table: this table presents the experience of

each peer in the network. Every participant peer creates this

table to store all compositions in which it has already

participated to realize them.

It is necessary to give the various definitions of the different

attributes of the composition table. These different concepts

are well presented in [3]:

Initiator Peer: the peer that begins the composition.

compoID: the composition identifier (each composition is

defined in the network by its initiator peer and its identifier).

Init-input: initial input of the composite Web service.

Init-output: initial output of the composite Web service.

Goal: the goal of the composite Web service

Executed services: Web services executed locally (in a peer) to

compose the achieved Web service.

Reserve services: local web services which can be executed in

the same composition.

Precedent peers: peer, which executes the precedent Web

services for the composition.

Next peers: peer, which execute the next Web services for the

composition.

Reserve peers: peers, which can replace the next peer.

State of the composite Web services: the composite Web

service is active, if all the participants’ peers are joining the

network.

D. Discussion about the proposed architecture

As a conclusion, we can deduce that the main problem of

this architecture is important discovery time because of the

semantic matching (OWL-S Matchmaking) realized in the

runtime. For this reason, we present in the following section a

development process, which can ameliorate this solution. In

addition, the use of the composition table is a good solution

for reusing the experiences of each peer. However, this

solution suffers from the problem of the data coherency of this

table (we don’t talk about this point in this paper). Also, using

only a repository of local experiences in each peer doesn’t

give a high degree of reutilization. For these reasons, we

propose to create a centered base of experiences to increase

the probably of discovering a composite Web service in the

network and that becomes to decrease the search time.

IV. A DEVELOPMENT PROCESS TO AMELIORATE THE

PROPOSED ARCHITECTURE

In this section we describe the followed steps to discover and

compose semantic Web services by using the framework

presented in section 3. We devised this process to three main

phases: in passive time, runtime and the reuse of the

experiences.

A. In the Passive time

The following steps are realized in the passive time to

decrease the search and the discovery time as possible,

especially, the semantic matching, which takes a lot of time.

These steps are realized by each provider of web services (a

peer) that want to collaborate with the other peers of the

network to compose new complex web services in the

network.

Development of local ontologies: Using the main central

ontology base, each peer develops local ontology according to

its needs. The developer uses only the concepts that

corresponding to the domains of the provided Web services.

It’s important to mention that the developer can ignore this

step. It’s only useful if the provider wants to add some new

private concepts to its local ontology compared to the main

ontology. In other cases, the developer can reuse directly the

145 © IT4OD 2014

Page 152: IT4OD 2014 Proceedings

main ontology to generate the OWL-S descriptions of the local

Web services. The developer can download the main ontology

and modifies it locally. The use of the main ontology to

generate an OWL-S description is explained in the following

step.

Generate the OWL-S descriptions: In the first case, each

peer can reuse one or more several OWL-S descriptions that

provided by the central Knowledge base. For example, [36]

provides about 240 OWL-S descriptions of a large variety of

web services. In this case, if the provider want to supply a

Web service that corresponding to one of the provided OWL-S

description, he can reuse directly this description.

In the other possibility, by using the WSDL description and

the ontology of the domain of a Web service, the developer

can generate the semantic description of this web service. In

our work we propose to use the open source device wsdl2owls

convertor [31], which generates automatically an OWL-S

description from the WSDL description. The following

example (figure 4) shows the operating of this program.

Fig. 4. The wsdl2owls convertor

The figure 4 shows the generation of an OWL-S description of

the service “ReserveVol”, which implements five operations:

“count”, “reservervol”, “create”, “find” and “findRange”.

Search an eventual local composition: Each peer in the

network implements a whole of basic Web services that can

response to the received requests. However, in many cases one

Web service can’t response directly to the request. Thought, a

composition of a whole of basic Web services (belong to the

same peer) can give the adequate response. For this reason,

each peer must search in the passive time the eventual possible

composite Web services. If a peer tries to compose a local

Web service in the runtime (When it receives a request), it can

increase the search time in the network, especially, if we know

that this operation can finish with failure (this point is more

explain in the section “runtime –Discovery Step-“).

For these reasons, it’s better to search about the eventual

composition in the passive time. In order to realize this goal,

we propose to use an OWL-S Matchmaker that uses the OWL-

S descriptions of a whole of web services to verify if these

Web services can be composed semantically or note.

In our work, we used the OWLS-MX 2.0, which is a semantic

Matchmaker for Web services. It has as an input a whole of

OWL-S descriptions of Web services then it tries to

matchmaking [32].

Fig. 5. OWL-S MX Matchmaker

B. In the Runtime

This phase contains two main steps: the discovery of Web

services in a P2P network and the invocation of the Web

services to compose a new one.

Discovery of Web services in a P2P network: When it

receives a request about a Web service, each peer of the

network tries initially to find locally a basic (or a composite)

Web service that response to this request. Else, the peer search

in its local experiences repository about a composition already

realized to reuse it. Else, the peer tries to transfers the request

to other peers of the network.

There are a variety of algorithms previously proposed to

discover and compose new Web services in P2P networks.

Among these algorithms, in our work presented in [3], we

proposed a whole of epidemic algorithms to discover web

services in an unstructured P2P network. In addition to the

input/output matching, this algorithm uses the concept of goal

Operations and

Web services

Inputs/Outputs

Adding services one per

one with owl-s and WSDL

descriptions

146 © IT4OD 2014

Page 153: IT4OD 2014 Proceedings

defined in [2]. The main epidemic algorithm is defined as

follow [3]:

Step 1: the peer receives a request from another peer that

searches about a Web service with the arguments: Init-Input

(initial input), Init-Output (initial output) and goal.

Step 2: the peer searches firstly a basic Web service, which

response to the request.

Step 3: if there is a local basic Web service, the peer sends the

result to the request peer.

Step 4: else, the peer tries to compose a new Web service

locally. For this task, the peer uses the search engine. It’s

important to mention that in this architecture we proposed to

realize this task in the runtime. In the ameliorated architecture,

the peer exploits the result of the step “search an eventual

composition” defined in the passive time.

Step 5: if the step 4 gives result, the peer sends it.

Step 6: else, the peer searches in its composition table (local

experiences) about a previous composition, which responses

to the request.

Step 7: else, the peer continues the discovery operation.

Before that, the peer can progress the operation by replacing

the arguments of the research.

Composition step (using a BPEL engine): If the discovery

operation has been finished with success, the initiator peer

launches the composition by generating a BPEL file starting

from the returns results (the sequence of peers that implements

the discovered Web services). After that, the initiator peer uses

the BPEL engine to invoke the Web services, according to the

generated BPEL file.

Figure 6 shows an example of a composition that contains four

Web services implemented per three peers. The composite

web service is constituted from two Web services, the other

are considered like a reserve services in the discovery

operation.

Fig. 6. Example of a P2P composition

The objective of this composite service is to give the price of a

book in Algerian Dinar. The inputs, Outputs and goals of the

discovered Web services are explained in the following table.

TABLE I. INPUTS, OUTPUTS AND GOALS OF THE DISCOVERED WEB

SERVICES.

Web service Input Output Goal

WS1 (reserve) Book info (title,

author…)

Price Gives the

price in

EURO

WS2 (executed) Book info (title,

author…)

Price Gives the

price in

US Dollar

WS3 (reserve) Money in Dollar Money in

Algerian

Dinar

Convertor

USD-AD

WS4 (executed) Money in Dollar Money in

Algerian

Dinar

Convertor

USD-AD

Composite WS Book info (title,

author…)

Price Gives the

price in

Algerian

Dinar

In the composition step, the initiator peer generates the BPEL

file to compose the new Web service. The reserve services

will be invoked if the primarily (executed) Web services don’t

give a result. The following listing presented the generated

BPEL file that uses four Web services (WS1=

FindPriceLocalPL, WS2= FindBookPriceServicer,

WS3=ReserveConvertor and WS4= OtherPeerConvertorPL)

<?xml version="1.0" encoding="UTF-8"?>

<process name="FindPriceProcess"

…………………………………………….

<import namespace="http://services/"

location="……../FindBookPriceServicerSer

vice/ FindBookPriceServicer.wsdl"

importType="http://schemas.xmlsoap.org/

wsdl/"/>

………………………………………………………

<partnerLinks>

<partnerLink

name="FindPriceReservePL" …………..

partnerLinkType="tns:FindBookPriceSer

vicerLinkType"

partnerRole="FindBookPriceServicerRol

e"/>

<partnerLink

name="FindPriceLocalPL" ………………

partnerLinkType="tns:FindPriceLocalSe

rviceLinkType"

partnerRole="FindPriceLocalServiceRol

e"/>

<partnerLink

name="OtherPeerConvertorPL" ……………

partnerLinkType="tns:ConvertorService

LinkType"

partnerRole="ConvertorServiceRole"/>

<partnerLink name="ReserveConvertor"

…………………..

<partnerLink name="PartnerLink1" …………

partnerLinkType="tns:FindPriceInDesir

147 © IT4OD 2014

Page 154: IT4OD 2014 Proceedings

edCurrency"

myRole="FindPriceInDesiredCurrencyPor

tTypeRole"/>

</partnerLinks>

<variables>……………………………………………………

</variables>

<sequence>………………………………… </sequence>

V. RELATED WORKS

In general, the research works suggested in the domain of

the semantic Web services composition are classified in

following principal categories:

Importation of the Web semantic technologies to the

Web services discovery and composition [9], [14],

[37].

Use of the Web semantic (especially, the ontology) to

search and classify the peers contents in P2P

networks [18], [19].

Convergence between the systems Multi agents

(MAS) and the Peer-to-Peer networks for the

composition of the semantic Web services [7], [35].

Use of the formal methods to express the semantic of

the specification languages of composite Web

services [17], [20].

Evaluation of the performance and the quality of the

composite Web services (QoS) [15], [16].

Recently, several research works improve the decentralized

discovering methods of Web services in the P2P networks. A

number of centralized and P2P Web service discovery

methods have been proposed in the context of the Web

services composition and Web services based business process

management. Among these, [2], [6] and [21] have similar

concepts to those which are used in our method.

F. Mandreoli et al [2] present the architecture of FLO2WER,

which is a framework that supports large scale interoperation

of semantic Web services in a dynamic and heterogeneous

P2P context. They have adopted a hybrid approach that

exploits the advantages of centralized registries for service

discovery and composition, as well as the dynamism and the

scalability of non-structured P2P networks. The main idea of

FLO2WER framework is that, while decentralizing the

knowledge of what specific services are available in the

system, they keep centralized knowledge of what objectives

may be satisfied within the network, namely Goals. Each Goal

specifies therefore a sub network of specific services, and it is

stored in an appropriate repository, called Goal Repository.

However, it is not described and detailed how the goals have

been discovered. Moreover, the use of a central repository of

goals is similar to central discovery methods based on Web

services functionalities. In contrast, our discovery method

combines decentralized and centralized solution.

T. Essafi and al [6] present a scalable P2P approach to

service discovery using ontology. This work incorporates

input/output matching algorithm proposed in paper [23] and

extends the solution described in paper [22] by adding an

encoding that locates servers in a P2P network to simplify

rerouting of query messages. Idem to the precedent work [1],

this project adopts only network centralization and hierarchy.

However, the main objective of our work is to ensure dynamic

Web service discovery. Also, in this work, they still relay on

the old DAML-S, which proved to be less flexible than the

new OWL-S. Z. Zhengdong and al [21] design a localized mechanism of

semantic Web services in CAN-based P2P networks to ensure

that each service is registered in a specific node of the public

Web. The registration services of public Web nodes are

divided by the area and shared by all nodes. This work

processes only the CAN-based P2P networks, in contrast, in

our work, even we presented an example of the unstructured

epidemic algorithm; the proposed solution is generic and

adaptable i.e in the discovery step we can apply other type of

protocols.

VI. CONCLUSION AND FUTURE WORK

In this paper, we proposed architecture for semantic Web

service discovery and composition in P2P networks. The main

goal of this architecture is to ameliorate the scalability,

reliability and stability of the semantic Web service

composition system, and to improve the ontology-based

semantic Web services discovery. This architecture combines

the advantages of centralized and decentralized structures. We

defined firstly the use of a composition table that provides a

purely distributed method to discover the previous P2P

composed Web services. The distribution of this table creates

a collaborative workspace where each peer can exploit their

experiences. Thus, this table permits to preserve the trace of

the various successes compositions for a possible future re-

use. This characteristic can ameliorate the research time in the

network.

Also, we proposed to use a single point that contains a

knowledge-centered base, which is a main OWL ontology (or

more) of the different concepts used in the various domains of

Web services. The most important objective of the main OWL

ontology is to ensure the homogeneity between the different

peers through the use of the same semantic language which is

OWL-S.

In addition, to improve our solution, we presented a

development process that makes easy the use of the proposed

architecture and we offered a number of motivate examples

and we exploited some open source tools like wsdl2owls and

OWL-S MX Matchmaker.

Now, we are simulating and testing our solution by using an

unstructured P2P protocol, which is Gnutella V0.4 [33].

Moreover, we want to deduct how the reuse of the experiences

accelerates the discovery operation.

Finally, this work needs to improve some important points.

We wish to develop the implemented algorithms using a

probabilistic approach to filter the pertinent peers in the

network. Also, we hope to improve the QoS of the returned

results by proposing some selection criteria of the Web

services.

REFERENCES

148 © IT4OD 2014

Page 155: IT4OD 2014 Proceedings

[1] Gharzouli, M., Boufaida, M.: A Distributed P2P-based architecture for

semantic Web services discovery and composition. In: 10th Annual International Conference on New Technologies of Distributed Systems (NOTERE), pp. 315-320. IEEE, Tozeur, Tunisia (2010).

[2] Mandreoli, F., Perdichizzi ,A. M., Penzo, W. : A P2P-based Architecture for Semantic Web Service Automatic Composition, In: International Conference on Database and Expert Systems Applications (DEXA), pp. 429-433. IEEE computer Society. Regensburg, Germany (2007).

[3] Gharzouli, M., Boufaida, M.: A Generic P2P Collaborative Strategy for Discovering and Composing Semantic Web Services. In: Fourth International Conference on Internet and Web applications and Services(ICIW), pp. 449-454. Venice/ Mestre, Italy (2009).

[4] Emekci, F., Sahin, O.D, Agrawal, D., El Abbadi, A.: A Peer-to-Peer Framework for Web Service Discovery with Ranking. In IEEE International Conference on Web Services (ICWS), pp. 192-199. California USA (2004).

[5] Sahin, O. D, Gerede, C. E, Agrawal, D., El Abbadi, A., Ibarra,O., Su, J. : SPiDeR: P2P-Based Web Service Discover., In Third International Conference on Service-Oriented Computing (ICSOC), pp. 157-169, Amsterdam, The Netherlands (2005).

[6] ESSAFI, T., DORTA, N., SERET, D.: A Scalable Peer-to-Peer Approach To Service Discovery Using Ontology. In: 9th World Multiconference on Systemics, Cybernetics and Informatics, Orlando (2005).

[7] Kungas, P., Matskin, M.: Semantic Web Service Composition Through a P2P-Based Multi-agent Environment. In: Agent and P2P computing AP2PC. Springer-Verlag Berlin Heidelber, LNAI 4118, pp. 106–119, (2005).

[8] Hu, J., Guo, C., Wang, H., Zou, P.: Web Services Peer-to-Peer Discovery Service for Automated Web Service Composition. In: ICCNMC, Springer-Verlag Berlin Heidelberg (LNCS 3619), pp. 509-518, Zhangjiajie China (2005).

[9] Berardi, D., Calvanese, D., De Giacomo, G., Hull, R., Mecella, M.: Automatic Composition of Transition-based Semantic Web Services with Messaging. In: Very Large Data Bases (VLDB), (2005).

[10] Rageb, K.: An Autonomic <K, D>-Interleaving Registry Overlay Network for Efficient Ubiquities Web Services Discovery Service. J. Information Processing Systems (JIPS), 4 (2), pp. 53-60, (June 2008).

[11] Batra, S., Bawa, S.: Review of Machine Learning Approaches to Semantic Web Service Discovery. J. of Advances in Information Technology (JAIT), 1 (3), pp. 146-151, (August 2010).

[12] Schmidt, A., Winterhalter, C.: User Context Aware Delivery of E-Learning Material: Approach and Architecture. J.l of Universal Computer Science (JUCS), 10 (1), (January 2004).

[13] Stoica, I., Morris, R., Karger, D., Kaashoek, M.F, Balakrishnan, H.: Chord: A scalable peer-to-peer lookup service for internet applications. In: ACM SIGCOM, pp.149-160, California, USA (2001).

[14] Jin, H., Wu, H., Li, Y., Chen, H.: An Approach for Service Discovery based on Semantic Peer-to-Peer. In: ASIAN, pp. 259-260, Kunming, China, (2005).

[15] Vu, L-H., Hauswirth, M., Aberer, K.: Towards P2P-based Semantic Web Service Discovery with QoS Support. In: Business Process Management Workshops, pp.18-31, Nancy, France, (2005).

[16] Liu, J., Gu, N., Zong, Y., Ding, Z., Zhang, S., Zhang, Q.: Web Services Automatic Composition Based on QoS. In: IEEE International

Conference on e-Business Engineering (ICEBE). IEEE Computer Society, (2005).

[17] Tang, X., Jiang, C., Ding, Z.: Automatic Web Service Composition Based on Logical Inference of Horn Clauses in Petri Net Models. In:IEEE International Conference on Web Services (ICWS), (2007).

[18] Wang, C., Lu, J., Zhang, G.: Generation and Matching of Ontology Data for the Semantic Web in a Peer-to-Peer Framework. In APWeb/WAIM, LNCS 4505, pp. 136–143, Springer-Verlag Berlin Heidelberg, (2007).

[19] Haase, P., Siebes, R., v.Harmelen, F.: Peer Selection in Peer-to-Peer Networks with Semantic Topologies. In: ICSNW, pp. 108-125, Paris, France, (2004).

[20] Benmerzoug, D., Gharzouli, M., Boufaida, M.: Formalisation and Verification of Web Services Composition based on BPEL4WS. In: First Workshop of Web services in Information Systems (WWS’09), pp. 37-47, Algies, Algeria, (2009).

[21] Zhengdong, Z., Yahong, H., Ronggui, L., Weiguo, W., Zengzhi, L.: A P2P-Based Semantic Web Services Composition Architecture. In: IEEE International Conference on e-Business Engineering, pp.403-408, Macau, China (2009).

[22] Paolucci, M., Sycara, K., Nishimura, T., Srinivasan, N.: Using DAML-S for P2P Discovery. In:International Conference on Web Services (ICWS), pp. 203-207, Las Vegas, Nevada, USA (2003).

[23] Paolucci, M., Kawamura, T., Payne, T.R., Sycara, K.: Semantic Matching of Web Services Capabilities. In: First International Semantic Web Conference (ISWC), pp. 333-347, Sardinia, Italy (2002).

[24] Web services Architecture, W3C Working group, 2004, http://www.w3.org/TR/ws-arch/

[25] Service finder: a search engine for web services discovery, www.service-finder.eu

[26] SOAP specification, http://www.w3.org/TR/soap/

[27] WSDL specification, http://www.w3.org/TR/soap/

[28] OWL-S: Semantic Markup for Web Services, http://www.w3.org/Submission/OWL-S/

[29] WSMO: Web Service Modeling Ontology,

http://www.w3.org/Submission/WSMO/ or http://www.wsmo.org/

[30] METEOR-S: Semantic Web services and Process, http://lsdis.cs.uga.edu/projects/meteor-s/

[31] Semantic Web Central: Project wsdl2owl-s, translator from wsdl to owl-s”, 2004, http://projects.semwebcentral.org/projects/wsdl2owl-s/

[32] Hybrid OWL-S Web Service Matchmaker, http://projects.semwebcentral.org/projects/owls-mx/ or http://www-ags.dfki.uni-sb.de/~klusch/owls-mx/

[33] The annotated Gnutella protocol specification v0.4, http://rfcgnutella.sourceforge.net/developer/stable/index.html

[34] Gnutella protocol Development v0.6, http://rfc-gnutella.sourceforge.net/src/rfc-0_6-draft.html

[35] Benmerzoug, D., Gharzouli, M., Zerari, M. “Agent Interaction Protocols in Support of Cloud Services Composition” proc of Holonic and Multi-Agent Systems for Manufacturing (HoloMAS), 2013, 293-304.

[36] Semantic Web Central: Project sws-tc, http://projects.semwebcentral.org/projects/sws-tc/

[37] Gharzouli, M., Messelem, Y., Bounas, M.H. “TTL-CHORD: A Chord-based approach for semantic web services discovery” in Scalable Computing: Practice and expereince SCPE vol. 15 N° 1, pp. 89-99 (2014).

149 © IT4OD 2014

Page 156: IT4OD 2014 Proceedings

Building Web Service Ontology: A Reverse Engineering Approach

Houda EL BOUHISSI Department of Computer Sciences

EEDIS Laboratory Sidi-Bel-Abbes University, Algeria

[email protected]

Mimoun MALKI Department of Computer Sciences

EEDIS Laboratory Sidi-Bel-Abbes University, Algeria

[email protected]

Abstract—This paper addresses the topic of defining a knowledge based system for representing Semantic Web Service ontologies according to the WSMO conceptual model and proposes a software engineering approach to this problem using an existing Web Service. The proposal uses a reverse engineering technique supported by a tool and a similarity measure starting from a WSDL File of an existing Web Service till modeling WSMO Ontology specified in WSML language.

Index Terms—Web Service, Semantic Web Service, Ontology, WSDL, WSMO, Reverse engineering.

I. INTRODUCTION Today, organizations are i ncreasingly forced to

modernize using Semantic Web Services which, in recent years, becom e one of the most effective, efficient, and economical means to make intelligent systems.

This migration calls for reverse engi neering of W eb Services to Semantic Web services. However, there are few approaches that consider Services’ ontologies as the target for reverse engi neering. A majority of t he work on reverse engineering has been done on t ools that require a previous knowledge of t he Web Service Application, however few tools uses W SDL (Web Service Description language) File as resource i nformation and WSMO ontology as a target. As an attempt to fill gap in this area, we propose a novel approach t o reverse engineering Web Services to Service’s ontology.

This paper continuous our previ ous research on domain knowledge driven Web Service Analysis [1] and describes a reverse engi neering process for bui lding Semantic Web Service Ontology according to the WSMO conceptual model.

The proposed approach deals with a software engineering technique that consists of ext racting useful information from a W SDL file o f an existing Web Service in order to build Web Service Ontology specified in the WSML.

Our approach i s based on the idea that semantics of a Web Service can be i nferred, without an expl icit analysis of the W eb Service code. Rather, these sem antics can be

extracted by analyzing WSDL description File, which is the most popular document that describes a W eb Service application.

The semantics are suppl emented with the domain ontologies and user “head knowledge” to build WSMO ontology. Our approach can be applied to migrating Web Service application, which is usually described by the WSDL File to the ontology based Semantic Web.

The remainder of this paper is structured as fo llows: Section 2 sum marizes the Sem antic Web Services related works. In section 3, the proposed approach will be described in detail. In Section 4, an experimental test of the proposed t echniques is reported. Finally, section 5 concludes the paper and gi ves future directions of t he on-going project.

II. BACKGROUND Semantics can either be added to currently existing

syntactic Web Service standards such as UDDI and WSDL, or servi ces can be descri bed using some ontology based descri ption languages. The M ajor initiatives in the area o f SWSs are d ocumented by W3C member submissions, such as, OWL-S [2], WSMO [3] and WSDL-S [4].

Ontology Web Language for Servi ces (OWL-S) semantically describes Web Services using OWL ontologies. The W eb Services Description Language - Semantic (WSDL-S) augments the expressivity of WSDL with semantics such as dom ain ontology in an arbitrary semantic representation language. The W SDL-S proposal was superseded by Semantic Annotations for WSDL (SAWSDL) [5] which is restricted and homogenized version of W SDL-S. The W eb Service Modeling Ontology (WSMO) provides ontological specifications for t he description of Sem antic Web Services.

WSMO is th e only standard for which there exist several implementation environments which aim to support the complete standard. For these reasons W SMO is used as our Sem antic Web Services technology throughout the rest of this paper. We will explain next the concepts of the WSMO approach in detail.

150 © IT4OD 2014

Page 157: IT4OD 2014 Proceedings

III. PROPOSED APPROACH The main contributions of t he approach present ed in

this paper can be summarized as follows:

1. We propose a concept ual modeling approach for t he specification of ont ologies. The approach i s based on WSDL File of an existing Web Service and semantic similarity measures using WordNet;

2. By using the proposed approach, we describe a set of Web based software tools allowing the developer to define WSMO ontologies and t he final user to explore them.

A. The WSMO Framework

WSMO involves four com ponents, describing semantic aspects of W eb Services: ontologies, Web Services, Goals, and Mediators. Each of these W SMO Top Level Elements can be descri bed with non-functional properties. Although this paper i s related to ontologies specification, it briefly describes all the WSMO elements.

Ontologies provide a form al and explicit specification of the application domain and of al l the data used by the other components. Optionally, they may be descri bed by non-functional properties and may import existing ontologies.

However, the WSMO ontology is composed of:

1. Concepts, describing the ontology domain possibly organized in a hierarchy,

2. Relations, representing further connections among concepts,

3. Instances of concept s and relations, setting values to their attributes and parameters respectively,

4. Axioms for further definition of concept s and relations through logical expressions.

Furthermore, WSMO comes along with a Web Service Modeling Language Modeling language (WSML1) and a Web Service eXecution Environment (WSMX2).

B. Motivation

Among the Graphical User Inte rface tools for building and managing ontologies compliant to WSMO, we distinguish the WSMO-Studio [6] and t he Web Services Modeling Toolkit (WSMT) [7].

However, WSMO Studio is a WSMO editor for building the aspects of Se mantic Web Services, available as E clipse-based plug-ins. Its m ain functionalities include definition of ontologies, Web Services, Goals and M ediators, and services composition through graphical user interfaces.

We focus our analysis in th e ontologies editor since our interest is on t he ontologies building. WSMO Studio stores ontologies in WSML, the representation language of WSMO.

1 http://www.w3.org/Submission/WSML 2 http://www.wsmx.org

The tool supports interaction with repositories for import/export ontologies, but the editing is done on local copies on the user’s machine.

At the moment, no ext ensions are off ered to allow concurrent access and editing to a shared repository. Whereas, the Web Services Modeling Toolkit (WSMT) is an Integrated Development Environment (IDE) for Semantic Web Services developed for the Eclipse framework. The WSMT aims at aiding the developers of Semantic Web Services through the WSMO paradigm by providing a seam less set of t ools to improve their productivity. The IDE foc uses on t hree main areas, namely engineering of WSMO descriptions, creation of mediation mappings and interfacing with Semantic Execution Environments and external systems.

These tools produce ontologies in a completely manual manner where the user participation is fundamental at all stages of creation. Both tools are based on an earlier knowledge and comprehension of the user, that is, the process involves select choices or introduces useful information.

This process is costly and t ime-consuming. In addition, currently, there is n o automatic or semi-automatic tool for creating WSMO ontologies. For these reasons, this paper describes a proposed approach to create a semi-automatic tool that uses the information provided by the WSDL file to create WSMO ontologies.

C. Methodology

Traditional reverse engi neering tools extract knowledge from source code and s oftware documentation [8]. However, this approach is rather limiting as often information concerning how the code was developed and the rationale for its design are lacking. Moreover, a piece of so urce code may be cryptic due to a l ack of devel oper comments. The prop osed approach in this paper is to use the description of an existing Web Service (WSDL File) itse lf to spe cify ontology according to the WSMO conceptual model. Therefore, this proposal proceeds mainly in two principal stages:

A stage of reverse engineering for the identification of the useful information in the WSDL File.

A stage of engineering for the construction of the Web Service Ontology according to WSMO conceptual model

Our approach uses a W SDL File as i nput, and g oes through five basic step s: (1) Entities identification to extract useful information from a WSDL File, (2 ) analyzing the extracted information by applying mapping rules to create the backbone of the ontology, (3) Sem antic enhancement of t he useful information using domain ontologies for applicability and consideration of the standardization problem, (4) Building ontology by translating the formal model into ontology element specified in the WSML language, and (5) Validation of t he produced element.

The proposed approach reduces the efforts and the cost to build a W SMO Ontology by reengineering, without paying attention to the source code or how the application has been built. The proposal is divided into the following five high-level

151 © IT4OD 2014

Page 158: IT4OD 2014 Proceedings

phases of building the Semantic Web Service ontology process, see Figure 1:

a) Phase 1: Entities identification. This phase deals with the information required to create t he WSMO ontology (concepts, attributes, relationships, and axioms) starting from an existing WSDL File.

In this Phase, we are interested to the XML Schema part of the WSDL File which is a description of data types of the Web Service’s input and o utput. In this schema, we can find the definition of ComplexTypes , SimpleTypes and the declaration of elements. However, their explanations are as the following:

Simple Type Definition: XML Schema provides a wide range of bu ilt-in data types, for ex ample, string, integer, Boolean, float, decimal, etc, these are examples of one form of simple type definitions. Another form of simple type definitions can be used to provide constraints on the values of built-in types. For example, it may be necessary to restrict the allowed values of th e positiveInteger data type to a particular maximum value.

Complex Type Definition: Can be used to: define a data type composed of s ub-elements of ot her data types; define the allowed structure of ch ild elements using the keywords all, sequence and choice; or extend or restrict the definition of an existing complex type. Additionally, the values of elements can be accompanied by constraints on their values.

Attribute Declarations: Attributes can be ei ther global or associated with a pa rticular complex type definition. Attributes are an association between a name and a sim ple type definition.

Restrictions (also called facets) are used to define acceptable values for XML elements or attributes. We use the restriction element to indicate the existing (base) type, and to identify the 'facets' that constrain the range of values.

The extraction phase is a fu ll automatic process, we identify the information between the <element> and </element> according to C omplextype, Simple type, and Attribute definition.

Also we enumerate all the restriction statement options. These information concern name, type, and restriction attribute. All the extracted information is stored in a XML file for further use.

a) Phase 2: Analysis Phase. This phase focuses on the mapping of retrieved information in the previous phase using mapping rules. The m apping engine deals with a set of transformation rules and analyzes the information. This phase produces a set of concept s and axioms. Definition of each concept is accom panied by his sub concept, its components with their attributes name and t ype. The m apping produced i s roughly based on the following rules (see Figure 2):

Fig. 1. System Architecture

Fig. 2. Mapping Rules Definition

Rule 01: Simple type definition. If a simple type is used to create a new type based, we create a ne w concept with the same built-in type (see figure 3). Also, if the simple type participates in th e definition of a co mplex type, it will be mapped to a property (attribute) of the complex type with the main built-in type.

Fig. 3. Example for the Rule 01

Rule 02: Complex type definition. Complex type definitions can obtain sub-components that are a m ixture of simple elements, attributes and other complex type definitions. We propose to m ap each c omplex type to a conce pt in the WSMO Ontology. Sub-components with simple type built-in are mapped to attributes with the same built-in type and attributes are mapped to attrib utes with the same built-in type. If the sub-component is itself a complex type, here we

<xsd :element name=”age”> <xsd :simpleType> <xsd :restriction base=”xsd :positiveInteger”> <xsd :maxExclusive value=”35”> </xsd :restriction> </xsd :simpleType> </xsd :element>

152 © IT4OD 2014

Page 159: IT4OD 2014 Proceedings

proceed in a recursive manne r, we create first the corresponding concept, and then the sub-components are mapped to attributes with th e build-in type (see figure 4) which contains a definition assumed to be within the XML Schema part of the WSDL File. Fin ally, the complex type which is embedded in another complex type is mapped at one hand to sub-concept of the complex type and at the other hand to a concept.

Fig. 4. Example for the Rule 02

Rule 3: Attributes. An attribute may be as sociated directly to the root or embedded in a simple or complex type. If an attribute depends to the root, we propose to create a new concept with the built-in type. If the attribute is embedded in a simple or a complex type, it is mapped to an attribute of the concept of the complex or the simple type.

Rule 4: Restriction element for data type. Each restriction is mapped to an axiom, with the corresponding option. As an Example of restriction definition, in figure 3, the CountryConstraint which defines the corresponding value of the Country.

The results of the analysis phase are stored in a XML file which is mainly designed by the tags <complextype> . . . </complextype> and <sim pletype> . . . </ simpletype >. This formalization facilitates better the translation into the WSML language.

b) Phase 3: Semantic Enhancement. In the process of identifying entities in the document, it is possible that we find values for attributes or relationships that were not previously present in the k nowledge base. Enhancing the existing metadata could be as simple as entering values for attributes, in which case th ey could be au tomated; or as co mplex as modifying the underlying schema, in which case some user involvement might be required.

The third phase of our proposed is the computation of the semantic similarity measure which aims to quantify how much two concepts from the XML file produced before and domain ontology are similar.

The similarity analysis of these concepts is used through WordNet dictionary which will give a st andardized and complete synonym set and cl assifies the entities. We use WordNet3 based similarity measures [9] such as Path, Resnik,

3 WordNet is an online lexical database designed for use under program control. English nouns, verbs, adjectives, and adver bs are organized into sets of sy nonyms, each representing a lexicalized concept (See http://wordnet.princeton.edu).

Lin and Jiang. WordNet is an online lexical database designed for use in a program.

For this reason, we use the WordNet as a taxonomic reference, so the idea is to compare the concept of the XML file already created with domain ontology, using the WordNet. Figure 5 depi cts the algorithm of the semantic enhancement process.

We have an XM L file corresponding to the data types of t he Web Service expressed, i n concept, attribute, restriction and type. We are interested to only the concepts that have not sub concept, as concept candidates because we assum e that is enough to identify if the produced WSMO ontology is well defined.

We also have an uploaded an ont ology containing concepts according to any domain and each concept may possibly have a set of at tributes. Subsequently, we compute similarity measures to identify the semantic concepts of t he ontology. We define a t hreshold value for prior semantic similarity measure. The threshold is a value between 0 and 1, the value 1 indicating that the two entities are completely similar.

The threshold value is an important decision point. If it is very low, between [0.0, 0.5] , many concepts can be wrongly m atched i.e. false positives can be returned by function similarity (c1, c2). On t he other hand, i f this value is high, between [0.7, 1.0] , many concepts which might be matched are not caught, i.e. many false negatives can be discarded.

Second, we must choose a m ethod to compute the semantic similarity measure as described above. If the semantic similarity measure between the concept of the XML file and the ontology concept is greater than or equal the threshold, we can consider that the concept belongs to the domain of the ontology concept, therefore this concept can be superseded by the concept of the of t he domain ontology and at last its sub concept is retrieved for adding in the XML file.

Fig. 5. Algorithm 1 : Semantic enhancement

Algorithm 1: Semantic enhancement Input: XML File (i Candidates concepts)

Concepts of Domain Ontology (j Candidates concepts)

A Similarity measure Threshold value for the similarity measure

Output: List of concepts Begin

Create a vector containing the concepts of domain ontology (j concepts)

For each concept Ck of the XML File (k=1 to i do) do For each concept COm m=1 of the domain ontology (m=1 to j) do Calculates the distance between

Ck and COm If (the similarity = the threshold) then supersedes the concept ck by the

concept COm EndIf EndFor EndFor End.

<xs:element name=”Customer”> <xs:complexType> <xs:sequence> <xs:element name=”Dob” type=”xs:date” > <xs:element name=”Address” type=”xs:string” /> </xs:sequence> </xs:complexType> </xs:element>

153 © IT4OD 2014

Page 160: IT4OD 2014 Proceedings

c) Phase 4: Building Ontology. Ontologies and Semantic Web Services need formal languages for their specification in order to enable automated processing. As for ontology descriptions, the W3C recommendation for an ontology language OWL has limitations both on a conceptual level and with respect to some of its formal properties. One proposal for the description of Semantic Web Services is WSML which is the formal language of the WSMO.

The WSML ontology is created on the fly according to the content of the enhanced XML file. The W SML Ontology mainly consists of: WSML variant, Namespace, A set of non functional properties, Concepts and Axioms.

Concepts and axiom s are retrieved stately from XML schema. Table 1 depicts the main transformation rules from XML to WSML language.

TABLE I. XML to WSML Mapping Rules

Figure 6 presents the translation of the entity Customer of the figure 4. Each attribute is j oined to its corresponding value-type by the constructor OfType.

Fig. 6. Example of mapping concept to WSML language

However, the non-functional properties are introduced semi-automatically by the user from a list which is defined previously.

d) Phase 5: Validation. All previous steps may introduce wrong concepts and relationships, thus an aut omated validation step is needed. This step is often done by hand. Before registering the ontology, it should be validated to ensure WSML correctness and accuracy. If the ontology is not suitable to the WSML language, a domain expert could bring some alterations to correct it. Once the ontology is validated, it will be stored in the .

IV. EXPERIMENTATION In order to validate and evaluate our approach, a

software tool has been creat ed. The execution engine of this tool has been fully implemented in Java with the NetBeans IDE because there is a large am ount of

libraries that ease the retrieval and parsing of web pages and the construction of ontologies. This tool represents the first step of our efforts in developing a general translation engine for bui lding Semantic Web Service ontology according to the WSMO conceptual model.

The tool is called BUOWES (Building Ontology for Web Service), which is a se mi automatic tool for the translation of the WSDL file to an incomplete WSMO ontology.

Fig. 7. A screenshot of a the proposed tool

A screen-shot of the BUOWES’s user interface is presented in figure 7. B UOWES is a soft ware tool which takes as an i nput the WSDL specification and dom ain ontology and ret urns WSMO ontology description specified in the WSML language as an output.

BUOWES software tool provides a friendly user interface and sim ple to utilize. You can either upload a WSDL file by its URL or by browsing locally. Then, t he wrapper module parses the WSDL file and extracts the XSD (XML Schema Definition) defined between the WSDL type tags.

The mapping engine converts the XSDs ext racted to terms used by the ontology, according to a set of mapping rules. The m apping engine produces a l ist of terms which will b e stored in an XML file to be used next.

Candidates’ entities of the XML file could be superseded with other ones ret rieved by domain ontology by make use of the similarity measure. The user participation is fundamental and m ust be promoted to upload the appropriate domain ontology.

The building m odule translates the entities into WSML specification and generates the WSMO ontology according to the W SML language. The user can visualize the Ontology as a tree or a textual file.

Finally, the validator module checks t he produced ontology to ensure WSML correctness and accuracy.

Non functional properties are added by the user. The user m ay choose the relevant non functional properties from a list of choices (see figure 10)

We perform our t ool on a dat a set of 20 W SDL Web services of di fferent domains showing the impact of the proposed tool to decrease the time and the effort of the building process.

XML Element WSLML Element

Complex_Type Constructor Concept

Concept Constructor Concept

Attribute Constructor Concept

Restriction constructor axiom

Enumetare constructor Or operator

Attribute of SimpleConcept attribute Datatype

Concept Customer Dob OfType date Address OfType string

154 © IT4OD 2014

Page 161: IT4OD 2014 Proceedings

Figure 8 depi cts an exam ple of a generat ed ontology for e-tourism domain.

Fig. 8. Building Ontology according to e-Tourism Web Service

V. CONCLUSION In this paper, we have proposed a novel approach for

building Semantic Web Service ontology according to the WSMO conceptual model.

The proposed t echnique uses a reverse engi neering process and WSDL file of existing Web Service.

Our approach is composed by two main aspects: reverse engineering the WSDL file and engi neering the WSMO Ontology specified in the WSML language and is based on the idea that semantics of a Web Service can be extracted by analyzing W SDL File. These sem antics are supplemented with the domain ontologies and user head knowledge to build the ontology.

Finally, we have i mplemented a set of end user t ools

based on web interfaces for: The insertion of WSDL Files, Calculating the similarity measure, Browsing the ontological repository by the final user

and producing WSML Ontology. The strong point of the proposed approach is that it

relies on a WSDL File of an existing Web Service. The use of dom ain ontologies improves the semantic interoperability.

The work report ed in this paper is a part of large project, and actually, the work still in progress aimed at extending our approach t o build Web Services, Goals and Mediators. We believe that the results of our initial

experimentation are q uite promising, and we will continue to develop and evaluate this process.

ACKNOWLEDGMENTS We would like to thank the anonymous reviewers for

their valuable comments.

REFERENCES [1] H. EL BOUHISSI and M. Malki . Reverse Engineering Existing

Web Service Applications", In Proc. Of 16th Working Conference on reverse Engineering,WCRE’09, Published by the IEEE Computer Society, pp 279-283, ISSN Number 1095-1350, ISBN 978-0-7695-3867-9 October 13-16, 2009, Lille, France.

[2] D. Martin, M. Burstein, J. O. Hobbs, D. Lassila, S. McDermott, S. McIlraith, M. Narayanan, B. Paolucci, T. Parsia, E. Pay ne, Sirin, N. Srinivasan & K. Sycara (2004). OWL Web Ontology Language for Services (OWL-S), W3C Member Submission.

[3] J. De Bruijn, C. Bussler, J. Do mingue, D. Fensel, M. Hepp, U. Keller, M. Kifer, B. König-Ries, J. Kopecky, R. Lara, H. Lausen, E. Oren, A. P olleres, D. Rom an, J. Scicluna, & M.,Stollberg (2005). Web Service Modeling Ontolo gy (WSMO).

[4] R. E. Akkiraju, J. Farrell, J. Miller, M. Nagarajan, M. Schmidt, A. Sheth & K. Verma, (2005). Web Service Semantics - WSDL-S, W3C Member Submission.

[5] J. Farrell & H. Lausen (2007). Semantic Annotations for WSDL and XML Schema. W3C Candidate Recommendation, Retrieved from http://www.w3.org/TR/sawsdl.

[6] M. Dimitrov, A. Simov & D. Ognyanov (2005). WSMO Studio – An Integrated Service Environment for WSMO. In Proceedings of the Workshop on WSMO Implementations Innsbruck, Austria, June 6-7.

[7] M. Kerrigan & A. Mocan (2008). The Web Service Modeling Toolkit. In P roceedings of the 5th European S emantic Web Conference (ESWC'08), Tenerife, Canary Islands, Spain, June 1-5, pp.812-816.

[8] W. Xiaomin, A. Murray, Storey, M.-A., & R. Lintern (2004). A Reverse Engineering Appr oach to Support Software Maintenance: Version Control Knowledge Extr action. In Proceedings of the 11th W orking Conference on Revers e Engineering (WCRE’04), Washington, DC, USA, pp. 90-99.

[9] L. Meng, R. Huang, and J. Gu (2013). A Review of Semantic Similarity Measures in W ordNet. International Journal of Hybrid Information Technology. Vol. 6, No. 1.

155 © IT4OD 2014

Page 162: IT4OD 2014 Proceedings

Semantic Social-Based Adaptation Approach for Multimedia Documents in P2P Architecture

Adel ALTI, Mourad SAADAOUI LRSD

University of Setif-1, Setif - Algeria

[email protected]

Makhlouf DERDOUR LRSD

University of Tebessa, Tebessa - Algeria

[email protected]

Abstract—This paper presents an approach to enhance users experience through the use of recommendations and social networks for on-the-fly (at runtime) adaptation of multimedia documents. The originality of the dedicated social and customization of quality adaptation paths is that relies on both user’s Advanced Semantic Generic Profile and his preferences, inferred social influence from a Facebook as unstructured P2P environment. The proposed approach has been validated through a prototype for the authors of oral conference presentation The goal is to improve assembly of relevant adaptation services and the efficiency and effectiveness of our approach.

Index Terms—Context-aware, user profile, services composition, QoE, social computing.

I. INTRODUCTION Semantic Social Adaptation Platform (SSAP) is a platform

for context-aware social networking of mobile users and as such requires advanced semantic user profiles in order to provide personalization of multimedia content through new services and customization of service qualities. The consideration of advanced semantic generic user profiles masks the heterogeneity of user’s profiles and service that can come from social networks. We focus especially to information and broadcasting information and interactive services related to the field of smart (home, health, cities, etc.). This raises, among other problems related to the heterogeneity of devices regarding CPU power, communication mechanisms (GPRS, WIFI, Bluetooth, etc.), speed of transmission as well as the media variety (sound, video, text and image).

The main visible adaptation approaches exist for multimedia documents are [1]: (1) server-side adaptation (e.g., [1]), (2) proxy-based adaptation (e.g., [4]), (3) client-side adaptation (e.g., [6]) and (4) Peer-to-Peer (P2P) adaptation (e.g., [10]).

The heterogeneity of such applications and the diversity of user needs may prevent from playing specific multimedia contents. In classical approaches [1, 4, 6, 10], the adaptation process supposes the all adaptation services are already available on each mobile platform. Such approaches own the following characteristics:

• Predefined quality of Service. Adaptation approaches have defined different quality of service (QoS)

properties. For instance, some of them minimize the computation cost for producing an adapted document, while others may maximize the proximity between the original and the adapted content. Usually, the quality of service of an adaptation framework is not customizable, in other words the quality of the adaptation process is usually predefined on a fixed set of properties.

• Specific type of context. Current approaches are often focused on specific type of context. It is clear that the other users (in the mean of the personality and relationships) influence users that experience the services within a group.

In this paper, we exploit the vision and challenges of peers cooperating to create SSAT. We propose to use the neighborhood opinion about the service quality in order to provide an adapted solution. We propose to use this neighborhood concept because a user may have some experienced access to other specific adaptation services. Moreover, it reduces the search space of remote adaptation services

Our approach follows a layered architecture. It is composed of three layers: the peer-to-peer layer offers reconfiguration-level services required by any P2P multimedia adaptation applications: like service-oriented reconfiguration, dynamic cooperation among groups and communication between mobile platforms, a contextual-deployment strategy. The Kalimucho P2P platform proposed by [7] implements this layer. The generic adaptation core layer provides semantic abstraction to hide the complexity and the heterogeneity of the underlying P2P medium and implements the following functionalities: (1) - semantic relevance determination facilities to discover adaptation services, (2) - flexibility for quality assembly of heterogeneous multimedia services.

The rest of this paper is organized as follows: Section 2 overviews the main adaptation approaches. Section 3 describes our adaptation architecture. Afterwards, results of an experimental evaluation of semantic social service discovery are presented in Section 4. Finally, Section 5 concludes the paper and presents ideas for future works.

156 © IT4OD 2014

Page 163: IT4OD 2014 Proceedings

II. RELATED WORKS Since the last decade, a lot of research has been proposed

and usually grouped in four main categories: • Server-side adaptation [4]: some devices may request a

server to adapt some multimedia documents. Such adaptation is under its responsibility and could require advanced knowledge and skills about the connected users. In such a situation, the server usually becomes quickly tedious, overloaded and time consuming.

• Client-side adaptation [6]: each device may be able to adapt documents by itself. However, some of clients may not be able to execute multiple adaptation operations at a time due to their limited capacities, e.g., battery.

• Proxy-based adaptation [1]: a proxy is between a client and a server, and acts as a mediator. In this case, many communications may be done, since it negotiates the adaptation to apply.

• Peer-to-Peer adaptation [10]: the arrival of peer-to-peer technology strongly contributes to change the adaptation architectures. Multimedia contents, exchanges conflicts and services are indifferently distributed among mobile platforms. Adaptation platforms play now a double role: adaptation service providers and adaptation service requesters. The distributed approach fits better with the different characteristics of the heterogeneous mobiles platforms. Consequently, this approach takes all the advantages of the peer-to-peer paradigm load balancing, and more service choices.

TABLE I. MULTIMEDIA DOCUMENT ADAPTATION ARCHITECTURES

Architecture Type Centralized Hybrid Decentralized Adaptation

management Centralized Centralized Decentralized

Adaptation service

distribution

Client-side Service-side Peer-to-Peer Peer-to-Peer

We propose to use semantic and social information to

enhance efficiency and flexibility of composition of heterogeneous adaptation components and enables applications to our adaptation platform to better guide the adaptation process.

III. ENHANCING QOE IN QUALITY MODELS AND ADAPTATION PROCESSES

The general structure of Adaptation Service Quality Ontology (ASQ) is presented in Fig. 1 [9]. The proposed structure consists in four parts representing multimedia adaptation service, multimedia adaptation process, Quality of Service (QoS) of adaptation process, context user model. The ontology presented here in aims at providing a common model to the heterogeneous technologies usually available in pervasive environments, to share their execution devices properties and constraints, to provide semantic service

determination facilities and to provide a better solution for quality assembly of heterogeneous multimedia adaptation services fitting as much as possible the device constraints and user preferences.

We extend the ontology ASQ in [9] by adding Quality of Experience (QoE) metrics of interest to the requester, social network integration as new basic elements of the ontology. We consider that by incorporating these concepts to ASQ we may be able to provide a m ethod to specify adaptation rules over heterogeneous platforms (smartphone, tablet, laptop etc.). The heterogeneity is on both data format, contents and communication interfaces (Bluetooth, WiFi, Zigbee, etc.)

A. Advanced Semantic Generic Profile The Advanced Semantic Generic Profile (ASGP) is a user

profile used throughout the Semantic Social-Opinion Platform. An overview of ASGP is given in Fig. 2.Top to bottom ASGP is comprised of three parts aligned with available user data sources, i.e. document, social and context data sources. Left to right ASGP is comprised of the parts holding the processed user data itself. Context Profile (left) holds information that have been acquired, aggregated from available user data sources. Inferred Profile (right) holds knowledge about users as a result of reasoning upon Context Profile. In smart environments, Context Profile contains multimedia services that could provide or process any kind of information:

• The user facet: This facet contains information about a person. A wide variety of heterogeneous sources could provide such kind of information. Of course, the data sources could be stored locally or remotely (e.g., medical records, relatives or friends, visited places, agendas...) thus, the user facet integrates and/or refers to such data. Of course, some parts of the user profile may be public, while other parts may be private (i.e., restricted access).

• The device facet: The device facet describes all the capabilities of a smart environment in terms of hardware. For instance, it details which kind of equipment are available, such as sensors and fixed or handheld devices.

• The social facet: The social facet describes user's friend list retrieved from social network networks and social exchanges such as Twiter, FaceBook and LinkedIn, etc.

Our context model refers to services, we can migrate the context from platforms to platforms by preserving the constraints. Another advantage of this context model is that we do not need to update the model at any time, only specific services may be called for providing the only needed information.

Inferred Profile contains knowledge about different User attributes, such as Influence, trust, experience, e.g. attribute experience contains knowledge about social influence, which is inferred by reasoning upon Social facets of the Context Profile. Note that Context Profile and Inferred Profile are the only sections of ASGP that contain actual entries to be stored in a database.

157 © IT4OD 2014

Page 164: IT4OD 2014 Proceedings

Fig. 1 The core of Adaptation Service Quality Services ontology [9].

Fig. 2 Advanced Semantic Generic Profil Metamodel.

Analysis and reasoning hereby defines a step in which context user information is reasoned upon in order to new knowledge about the way the user perceived the adaptation service efficiency and quality. This step yields new knowledge of user in one of two possible ways: reasoning upon a single user through monitoring certain information in time domain or reasoning upon multiple users, e.g. calculating user’s influence towards other users.

B. Social Network and QoE Integrations In order for a user to interact with other neighbors users, it

has to use the interface that they expose. For this purpose, we developed the Semantic Social Context-aware Platform, which provides an easy mechanism to build social exchanges. It offers an API that enables user authentication and sharing votes

through different platforms while hiding all the intricacies of generating signatures and tokens, doing security handshakes, etc. The extended functionality is implemented for Facebook and Twitter. This functionality is used by the user’ mobile application. In addition, the Semantic Social Context-aware Platform includes a sub-part responsible for retrieving data of interest from the social networks during the service discovery and using them to calculate Quality of Experience (QoE) metrics of interest to the requestor. The evaluation of QoS is defined through an evaluation of the adaptation service (Cost) and the evaluation of output quality (Benefice). The user is able to customize the quality parameters in order to fulfill his/her needs. For example, one user may want a high quality image, while another one may want an energy saving adaptation with an average quality of media. A service-scoring maximum shall be the best available service while a service scoring less than a specified threshold shall be ignored and similarly, a service gaining a zero weight shall be straightaway discarded.

),(

),(),(),(

,,,

_,_

iSCost

iSBeneficeiSQoSiSV Cost

Benefit

timememoryloadenergy

sticscharacterimediatypemedia

∗==

β

α (1)

where α and β are coefficients that allow the user to specify the importance of each quality criteria. The quality function is customizable and parametrizable according to different needs of users and context parameters. Cost is parametrizable according to context parameters like CPU load, energy saving, low bandwidth, etc. and the benefice is parametrizable by specific media parameters like compression ratio, frame rate, resolution, etc. Each peer broadcasts the votes attributed to its neighbors. After receiving the votes, each node determines the service weight as follows:

User

Device

First-Name Last-Name ID-account Class

Profil

Attribute-Name Value

Inferred-Profil

Type Depand

Social

AttributName Vote-Value

Context-Profil Facet

ComposedOf

Has_service

1..*

1..*

1..*

1

1..*

Service AttributName

Value Time.

use

Influenced By

1..*

158 © IT4OD 2014

Page 165: IT4OD 2014 Proceedings

( ) ),(1,, iSVVScore

ik

ikNS

Sis ∗−+

∗= ∑

ϕϕ

(2)

Where ),( iSV refers to the vote given by the user’s “i” users influenced by other users votes. The user’s weight history is considered as the ϕ and the actual user context as the ϕ−1 . This metric is widely used in the service of similar user’s adaptation task, while it balances the computation cost and the performance. Each node broadcasts its weight to its neighbors.

During the service discovery phase, the nodes use these weights to select relevant quality adaptation service. The advantage of this technique of vote lies in the fact that the node itself and all its neighbors instead of using the local properties alone must determine the importance of a node. More votes a node accumulates, the more important it is in the entire network. Of course, the discovery module evaluates dynamically the profile (the user preferences and its usage context) and consequently may update continuously the adaptation service lists.

The QoE function is used for selecting the best adaptation path that has a higher ratio Benefice/Cost. In this case the values of a quality formula are used for classifying the relevant adaptation paths that have potential benefit. The evaluation of the adaptation paths having the same mark of benefice that maximize users' qualities (expressed as preferences). That will only modify the mark of the adaptive criterion (response time, adaptation effort, etc.). So, reasoning is specified by analyzing finite sets of adaptation paths having the same mark of benefice metric and differs only by their adaptability cost to the context.

In our approach, an information exchange between nodes in the P2P network defined by Fig.4.

Fig. 3 QoE modeling.

IV. SEMANTIC-SOCIAL ADAPTATION PLATFORM The arrival of P2P paradigm strongly contributes to change

the adaptation architectures [10]. Kalimucho is a technological platform [7] that supports P2P facilities to build a new generation of mobile applications, services that improve interoperability between heterogeneous mobile devices.

Fig. 4 Information exchanges in P2P network.

Our work will benefit from the use of the Kalimucho platform [7] for (re)-deploying and supervising reconfigurable distributed adaptation components. This section focuses about the implementation of our generic peer-to-peer semantic context-aware adaptation platform.

A. General architecture The proposed platform is built according to a l ayered

architecture (Fig.5). It is composed of three layers: The Kalimucho layer offers service-level functions: (re)

deployment and reconfiguration strategy according to its system (Android, Laptop, Fixe, and CDC.etc.) with QoS requirements, management of groups, dynamic supervision of adaptation components, and communication protocols between mobiles nodes. The generic semantic adaptation core layer provides abstractions to hide the complexity and the heterogeneity of the underlying service-based P2P principle and implements a semantic social-based service assembly strategy for each user according its context, which is inferred automatically from user profiles and inferences rules based on ASQ ontology [2].

B. Enhancing expressiveness and relevance in adaptation processes In our layered architecture, it appears that through the four

semantic P2P access, resource manager, profile manager, conflicts manager and adaptation manager roles implemented by four interlinked modules, the nodes own adaptation capabilities and cooperatively realize the adaptation process.

• Semantic P2P access and social exchanges. This module supplies common P2P access at a high level while hiding the complexity and the heterogeneity of the associated low-level operations.

• Semantic resource manager. Each peer node stores several adaptation services, multimedia contents on the local file system. Peers would instantiate classes from the ASQ ontology [2] and publish the resulting individual results as OWL files on their websites. This

159 © IT4OD 2014

Page 166: IT4OD 2014 Proceedings

ontology defines common concepts as well as relationships among those concepts to represent multimedia data, service parameters (compression ratio, resolution, color number, etc.), semantic service information (service role, media type, action type, version, resources needs, QoS parameters, semantics of input/output, location and time) and context constraints.

Fig. 5. The architecture

• Semantic generic profile manager. This module manages user profile and user experiments as well. We have used the ASGP vocabulary in order to facilitate the description of constraints between different profile information. The monitoring of the QoE and QoS metrics generated by the Semantic Social Context-aware Platform and the P2P is managed by the Experiment Profile Monitoring (EPM) component. Within the EPM, the collected data is stored according to a metric data model into a user profile.

• Semantic social-based adaptation manager. There are three sub-modules in this component

- Semantic-social services discovery module. This module

discovers some services that will match the semantic requirements of the user: inputs/outputs, action types (transcoding, transmoding, transforming image resizing, language translation,etc.), media type (image, video, sound, text), a specific service context information (user location, user language, user age, screen resolution, battery level, memory size, etc.). After the discovery will find the matched services, it sends them to the automatic adaptation plan generation component.

- Automatic adaptation plan generation module. From the set of services discovered by the discovery module and the adaptation guide, it generates possible chains of services. In order to establish the sequence of services, our ASQ ontology is used. This ontology provides the correspondences between the roles and the service semantic information.

- Adaptation decision module. This module is responsible of selecting the best path after calculating the score of each adaptation path. The comparison of score adaptation paths allows us to select the best path. In this case the values of a quality formula are used for classifying the relevant adaptation paths that have potential benefit. The main objective of our approach is to improve the efficiency and accuracy. This objective is achieved through finite sets of semantic relevant adaptation services, well consideration of user’s opinions and various users’ contexts. In the next section, we will experiment these enhancements.

V. EXEMPLES OF SCENARIOS AND VALIDATION

A. Examples of Scenarios We have evaluated our approach which includes quality

service semantic level and social service level on local and remote configurations. Several scenarios are experimented. A first simple one is made of a User B, who wants to share oral conference presentation using a Samsung Smartphone with user A. There is a s ingle adaptation service that can semantically resolve resolution conflicts using a colored picture. Thus, no complex adaptation task is required. A second scenario is when the adapted document is ready to be executed. User B receives a phone call to join his colleagues at work. A notification is sent to the Adaptation Manager telling it that there is not enough available bandwidth to continue displaying such a video. SSAT calculates scores between social network users with Eq.2. We get top potential adaptation service that resolves problem of bandwidth in Fig.5. The evaluation results, meaning that adaptation path “Resize→MP4→WAV→ BMP→ PDF” is selected as the best path. This selection based on the high score compared to other paths under low bandwidth.

B. Evaluation and Discussion Compared with [1], the computation times of our approach

increase slowly than [1] when the service repository increases. This result is practically significant related to the two aspects:

Peer General Architecture

List of Neighbors

Selection of a Peer Peers List

Advanced Semantic generic profile

Discovery module

Local Repository

Adaptation Manager

Composition Module

Adaptation Decision Module

SPARQL

Local Services Context in

ASQ

SPARQL

P2P access and social exchanges

Environnement SPARQL Request

Applications ASQ Ontology

160 © IT4OD 2014

Page 167: IT4OD 2014 Proceedings

Fig.5 Experience semantic-based application and Evaluation Results.

(1) the QoS for balancing the benefits of output quality and the revenue of adaptation cost guided by semantic services relationships (2) our proposed context-based social modeling reduce the composition time when only reduced relevant services set is early selected.

Fig. 6 Response time under various adaptation approaches.

VI. CONCLUSION SSAT is a semantic social platform that helps users access to multimedia documents and organize social exchanges between users. This platform follows a l ayered architecture and is based on a decentralized semantic peer-to peer model. In this paper, we discuss issues related to the multimedia adaptation topics. The semantic-social information plays a central role in discovery, dynamic selection, dynamic composition and substitution of services. The experiment shows that our tool outperforms adaptation ratio and time response. In the future, we plan to deploy SSAT in the software platform Kalimucho for deploying reconfigurable distributed applications.

REFERENCES [1] Dromzée C., Laborie S., and Roose P., A Semantic Generic

Profile for Multimedia Documents Adaptation, in Intelligent Multimedia Technologies for Networking Applications: Techniques and Tools. IGI Global, 2013, pp 225 - 246.

[2] Alti A, Laborie S, Roose P, Automatic Adaptation of Multimedia Documents. International Symposium on F rontiers in Ambient and Mobile Systems (FAMS-2013) in conjunction with the 4th International Conference on A mbient Systems, Networks and Technologies (ANT-2013), pp. 992-997.

[3] D. Jannach and K. Leopold. Knowledge-based multimediaadaptation for ubiquitous multimedia consumption. Journal of Network and Computer Applications 2007; 30(3):958–982.

[4] T. Lemlouma and N. Layaïda. Content Interaction and Formatting for Mobile Devices. In Proc. of the 2005 ACMSymposium on D ocument Engineering (DocEng’05), pp. 98–100, ACM Press, November 2005

[5] H. Ahmadi and J. Kong. Efficient web browsing on s mall screens. In Proc. of the working conference on A dvanced visualinterfaces (AVI '08), pp. 23–30, ACM Press, May 2008

[6] M. Dalmau and P. Roose, Kalimucho : Plateforme logicielle distribuée de supervision d’applications, the 7ème conférence francophone sur lesarchitectures logicielles, Toulouse, France.

[7] Klyne G., Reynolds F., Woodrow C., Ohto H., Hjelm J., Butler M. H., and Tran L., Composite Capability/Preference Profiles (CC/PP): Structure and Vocabularies 1.0. W3C, Recommendation, January 2004.[Online]. Available: http://www.w3.org/TR/CCPP-struct-vocab/

[8] Ontology Editor, http://protege.stanford.edu [9] Hai Q.P, Laborie S, and Roose P. On-the-fly Multimedia

Document Adaptation Architecture, International Workshop onService Discovery and Composition in Ubiquitous and Pervasive Environments (SUPE), 2012; 10 :1188-1193.

[10] Hai Q.P, Laborie S, and Roose P. On-the-fly Multimedia Document Adaptation Architecture, International Workshop onService Discovery and Composition in Ubiquitous and Pervasive Environments (SUPE), 2012; 10 :1188-1193

Service Discovery and Selection

TransformingResizeService Score=2.0 TransformingResizeServiceScore=1.5 TranscodingServiceImage.BmpToImage.Jpeg Score=2.0 TranscodingServiceImage.BmpToImage.Jpeg Score=1.5 TranscodingServiceImage.BmpToImage.Jpeg Score=2.25 TranscodingServiceSound.Mp3ToSound.WavScore=1.25 TranscodingServiceSound.Mp3ToSound.WavScore=2.25 TransmodingServiceVideo.AviToSound.WavScore=2.0 TransmodingServiceVideo.AviToSound.Wav Score=1.5 …other services

TransformingResizeService Score=2.0 TranscodingServiceImage.BmpToImage.Jpeg Score=2.0 TranscodingServiceImage.BmpToImage.Jpeg Score=2.25 TransmodingServiceVideo.AviToSound.Wav Score=1.5 …other services

161 © IT4OD 2014

Page 168: IT4OD 2014 Proceedings

Belaggoune Mohamed

ONTOLOGY DRIVEN GRAPH MATCHING APPROACH FOR AUTOMATIC LABELING BRAIN CORTICAL SULCI

#1, Saliha Oukid#2, Nadjia Benblidia#3 #

Blida, Alegria LRDSI Laboratory, Computer Science Department, SaadDahlab Blida University

[email protected] [email protected]

3

[email protected]

ABSTRACT— The cortical surface in human brain has complex structure comprised of folds (gyri) and fissures (sulci). A precise recognition and labeling of cortical sulci in MRI images is helpful in many human brain studies and application relating to brain anatomy and function. Due to this structural complexity and inter-subject variability, this is considered as a non-trivial task. Thus recognition cortical sulci requires multiple knowledge concerning the sulci and spatial relation. Considering the limitations of both approach based on low descriptors and approach based on high-level descriptors, we propose a hybrid approach coupling high-level knowledge with low level knowledge in a graph matching framework based on local search algorithm in order to benefit from the advantages and to overcome the limitations of both categories. Keywords— MRI images, cerebral cortex, sulci labeling, graph matching, ontology.

i. INTRODUCTION Recently a considerable progress in medical

imaging techniques such as magnetic resonance imaging (MRI), computed tomography (CT), positron emission tomography (PET) andmagneto-encephalography (MEG) [1] especially in neuroimaging has contributed a lot both in medical domain and in neurology field.

MRI is a medical imaging technology which allows cross sectional view of the body with unprecedented tissue contrast and provides a digital representation of tissue characteristic that can be obtained in any tissue plane [2].

Many computer applications introduced to facilitate image processing and analysis in particular, for the delineation or recognition of anatomical structures and other regions of interest.

The external surface of brain is a thin layer composed of gray matter called cerebral cortex, it is highly convoluted[3].It is made up of many convoluted folds called “gyri” separated by spaces known as “sulci”. Sulci serve as important macroscopic landmarks to distinguish different

functional areas of the brain and gyri serve as structural unit of cortex.

Recognition of cortical sulci in MRI images is important to localize activation sites in functional imaging to describe morphological changes of brains affected by diseases in neurosurgical planning because,it is helpful in educating biologists and clinicians, see Figure 1 [4][5][6].

Recognition of cortical sulci in MRI images is a hard problem which requires anatomical expertise and it is a time consuming because these structures have very complex geometry and variation in their shape from an individual to another. Figure 2 illustrates well variability inter-subject and variation between right and left hemisphere in the same subjectand thus a scheme for automatic recognition and labeling is necessary.

Various approaches have been proposed to tackle this challenging problem.Each approach is based on some a priori knowledge generally low level descriptorsabout cortical sulciand recognition strategy.

The large variation of cortical foldingpatterns makes automatic labeling a challenging problem, which cannot be solved by numeric knowledge (low level descriptors) alone. Therefore multiple knowledge concerning the sulci are required.

Graph is a powerful tool for pattern representation and recognitionin various fields. The primary advantage ofgraph-based representation is that it can represent patterns and relationshipsamong data easily.

In this work we propose a hybrid approach based on a graph representation coupling high-level knowledge with low level knowledge in graph matching framework based on local search algorithm.

We have been followed ontology paradigm for representation high level knowledge about sulci and their spatial relations, whereas low-level knowledge consists of graph model .

Section 2 provides an overview of current methods for recognition and labeling of cortical sulci.Section 3 presents the overall proposed approach and its components.Section 4 conclusion and future work.

162 © IT4OD 2014

Page 169: IT4OD 2014 Proceedings

Figure 1 Recognition and labeling of cortical sulci[14].

Figure 2 Inter-subject variability on tow subject a, b and variation between right and left hemisphere in the same subject

variation in shape.

ii. OVERVIEWOF RECOGNITION AND LABELING OF CORTICAL SULCI APPROACHES

A. Deformable atlas registration based approaches

Its principle consist of warping a brain model (where all anatomical structures have been labeled by an expert manually ) to a studied brain, thereby transferring labels from the model to the appropriate locations on the test brain. In the following we present the most important approaches based on this paradigm.

In [7],the authors elastically deform a reference labeled brain volume to fit the patient brain scan. The brain atlas is parameterized with B-spline surfaces and it is deformed under an energy minimization scheme. The energy attracts the atlas fold points to fold points on the patient image and the remaining points to the patient brain surface. Finally atlas labels are transferred to the patient brain surface.

In [8],the authorshave proposed a method to progressively match an atlas labeled mesh to the patient brain surface mesh from the largest folds to the smallest folds. Then they transfer the labels from the matched mesh to label the patient mesh.

These approaches aresimple and they have demonstrated a successful identification of some

major sulci, but modeling the variability of structures are limited, convergence not guaranty.

B. Statistical model based approaches

With the development of images processing methods and to overcome the problems with techniques based on deformable atlas registration several alternative approaches were proposed in which sulci are matched with models from a training database based on characteristics such as shape, location or structure. In the following we present some approaches based on this paradigm.

In [9],the authorshave basedon a nearest-neighbor algorithm to define the classes of the sulcal regionsusing anatomical landmarks such as gyri as a features.

In [10],the authorspropose markovian frameworkto recognize sulci in which they have used the probabilistic Statistical Parametric Anatomy Map (SPAM) model as the prior information about sulci locations that returns the probability of presence of each sulcus at a given 3D location and the SVR algorithm to learn shapes and local sulci scheme,

In [11],the authorspropose a method to automatically label sulcal basinsthat employs a model contains both a volumetric description of the mean shape and possible variations in the location of each sulcal basin obtained from set of training images..

In [12], a technique has beenproposed for automatically assigning a neuroanatomical label to both sulci and gyri. In this procedure they have used probabilistic information about their spatial distribution estimated from a manually labeled training set.

Statistical model based approaches are frequently used in this context because it is simple to implement and they rely on strong mathematical theories that allow to well represent the inter-individual variability. Despite they provide well results, it fails on some points: - A part of information about spatial relations

between the cortical structures is implicit in the images and it is not used.

- Training is based on a limited number of subjects.

C. Graph based approach

To overcome the limitations of statistical model based approaches other approachesbased graph are developed to represent spatial relations and the neighborhood information.

In these approaches sulci are represented by nodes in the graph and arc connecting them represent their relationship to one another. This representation is supposed to include all the information required to identify the cortical structures. In fact, working at a higher level of representation leads to more efficiency for the

163 © IT4OD 2014

Page 170: IT4OD 2014 Proceedings

pattern recognition process and it is very powerful for anatomical structures presenting high inter-individual variability.

In[13], a method rely on statistical model of cortical sulci including an average curve represents the average shape, position of each sulcus and a search area accounts for its spatial variation domain. The model is represented by a graph. The recognition procedure is based on a sub-graph isomorphism search between a model graph and sub-graphs made of primitives extracted from the input image. The result is well for the primary sulci (ex the central sulcus).

In [14],the authorshave introduced a sulci recognition system relies on an abstract structural representations of the cortical folding patterns and their relationship as a graph. This method can be interpreted as a graph matching approach, which is driven by the minimization of a global function made up of local potentials. Each potential is a measure of the likelihood of the labeling of a restricted area. The potential is given by a multi-layer perceptron trained on a learning database.

In [15],the authorshave presented an approach for brain mapping to map labels of sulci from a brain atlas to individual brains. The topological and geometric information of sulci is stored in a topology graph in which each node contains position and size of the associated sulcus and edge contains connectivity information between sulci. The mapping is performed by matching between topology graphs for both atlas brain and user brain graph nodes.

In[16], an approach has been proposedfor joint sulci detection on cortical surfaces by using graphical models and boosting techniques incorporate shape priors of major sulci and their markovian relations. For each sulcus, they represent it as a node in the graphical model and detect the sulci jointly via the solution of an inference problem on graphical models.

Another graph-based approach was taken in [17]for labeling major sulci that uses prior statistical information about location, orientation, shape using geometric moment invariants and neighborhood structure. Labeling is recast as a graph matching problem between a model graph of sulcal features and their neighborhood relationships and a candidate graph composed of sulcal segments obtained from the test subject. The combinatorial optimization problem is solved by using a genetic algorithm.

The advantage of this approach is its rich structural context representation of sulcal segments including location, orientation and shape because the relative position of sulci is highly invariant and using neighborhood relationships is very advantageous for identification. The shortcoming of this approach is not robust in pathological cases.

Approaches based on numerical priors provided by atlases, statistic models or graph , are not robust and highly sensitive to deformation caused by pathological processes such as tumors, because they are built only in healthy brains, imprecise in the treatment of new cases and consider the stable gyri and sulci only.

D. Ontology based approach

In [18], a hybrid system for labeling anatomical structures in brain MRIhas been proposed. The system involves both numerical knowledge from an atlas and symbolic knowledge represented in a rule extended ontology written in standard web languages and symbolic constraints. The system combines this knowledge with graphical data automatically extracted from the images. Labels of the parts of sulci and of gyri located in a region of interest selected by the user are obtained with a reasoning based on a Constraint Satisfaction Problem solving combined with Description Logics inference services. This approach is robust in presence of pathologyand results labels with high precision,but it is not fully automatique.

Our approach combines key concepts fromontology based approach and graph based approach to our knowledge, there exists any approach that employing ontologies in graph matching algorithm to recognition and labeling of cortical sulci in MRI images.

iii. METHOD

1.Overview To address problem of labeling cortical sulci

in MRI images, we begin by segmentingsulcal segmentsfrom cortical surface andsubsequently low-level descriptors and spatial relations between them are computed to construct graph representation.

Collaborating with domain expert, we construct an ontology represent high level knowledge about cortical sulci to model their qualitative description and relation between them.

A model graph representation wasconstructed from a training database of MRI brains images where sulci have been manually recognized and labeled by neuroanatomist. Then, we try to recognize sulci of new subject by selecting suitable candidates from the set of sulcal segments to form sulci and build a similar graph Gc from them to maximize the similarity between Gm and Gc. The selection of sulcal segments is based on local search and driven by ontology of sulci.

Based on neighborhood information from ontology and low level features,we recognize sulci sequentially. Ex if we have recognized central sulcus and we want to recognize precentral sulcus which is

164 © IT4OD 2014

Page 171: IT4OD 2014 Proceedings

anterior to it according to the ontology we have to search a candidate sulcal segments set ψ i

2.High level knowledge modeling

which are in anterior of central sulcus and maximize the similarity with it. And the same procedure to recognize all sulci in neighbor of central sulcus.

Collaborating with domain expert and take advantage of existing work we have represented highlevelknowledge about cortical sulci in the form of ontology in which we model their qualitative description and relation between them.

The main sources that have helped us in this modeling are the FMA ontology (Foundational Model ofAnatomy) [20], the ontology of Dameron [21] without forget experts inneuroanatomy.

Note that our ontology is not generic but it is specific to our approach and the concepts and relationships defined in it concern only the description of sulci. Here sulci are defined by their relationships and their neighborhood. For example one sulcus is defined by sulci which is adjacent to, the lobe to which it belongs, the sulcus with which it is contiguous, etc..

The used concepts are (sulcal, fold Sulcus, SulcusSegment, lobe).

four groups of relation are defined : subsumption, mereological, topological and continuity relations. The subsumption relations are used to express that a specificanatomical entity is type of another, mereological relations are used to express that a specificanatomical entity is anatomical part of another, topological relations are used to express that two anatomical entities are adjacent and continuity relations are used to express that a specificanatomical entity is connected to another. 3.Sulci extent region map

One given sulcus is located in a relatively constant region on the cortical surface. We define this region based on the location of instances of the same sulcus type labeled by the expert in surface meshes from the training databasethe map is obtained by registration sulci in a common coordinate system. 4. Sulci segmentation

Several processing steps are required before segmentation of sulcal segments: registration of 3DMRI brain images to the stereotaxic coordinate system, tissue segmentation separation of cerebral hemispheres, gray/white matter interface reconstruction and segmentation of sulcal segments all these processing steps are performed using methods described in [19].

5. Low-level descriptors computation 5.1Geometric features - Geometric moment invariants

They are used as descriptors of the sulcus shape. From the regular moments of order0 to2,13 rotation-invariant moments are derived [17].

Suppose the origin of the coordinate system was shifted to the centroid of segment S composed of vertices vS. A regular moment of order p, q, r for function ρ is defined as

We put ρ(x,y,z)=1, because we are interested only in shape.

- Depth computation: we compute the distance between the bottom of the sulcus and the surface of the brain.

- Direction: (normalized vector from starting point to ending point).

- Position:we compute the gravity center to describe the position.

5.2 Spatial relations computation

- Relative position: we compute distance between adjacent sulcus by distance between their centers of gravity.

- Relative orientation: defined as the scalar product between the two normalized main vectors of the two sulci.

- Connectivity: we compute if a couple of sulci are connected.

6. Sulcal segment region extent

Computing of region extent for each sulcal segment is performed as follow: sulcalsegments are realigned into the sulci extent region map and for each sulcal segment wecompute how much sulcal segmentsssi is overlapping with region extent of sulcus Si.

The overlap degree Od for segment ssi with sulcus j is given by: Od(ssi/Si)= 1

nS∑ Vss ∈ SinS

Vs =1 Where nS corresponds to the number of vertices of segment ssi.

7.Graph representation

We have a set of sulcal segments, so we construct a graph that stores this set and their features in which nodes correspond to a sulcal segments and edges indicate the neighborhood relationships between them.

165 © IT4OD 2014

Page 172: IT4OD 2014 Proceedings

8. Sulcus model graph Sulci have been manually identified and

labeled on a training database of MRI brains images by neuroanatomist.

All images of the database are registered in the same coordinate system (the space of Talairach). For each sulci,low-level descriptors and neighborhood information are computed and we form feature vector f. Nodes of the graph model Gm represent the Ns sulci and the node attributes for each sulcus are represented byaverage, standard deviations and minimal and maximum values of the components of feature vectors of instances of the same sulcus typeThe edges of Gm indicates the neighboring relationships between sulci. 9.Labeling sulci

Because the over segmentation of sulci nodes in graph subject are sulcal segments,but nodes in model graph Gm are labled sulci, so we needtoassemblesulcus from sulcal segment set candidates and construct from them a graph Gc that is structurally equivalent to Gm and canbecomparedusingasimilarityfunction. So, theprocessis recastasan optimizationproblem:findthesulcal segment set candidates to be Gc best match Gm. The process is describedinthe following algorithm.

10.Objective function

Let S1,S2,S3………Sn denote the n sulci we want to recognize represented by the model graph Gm and SC1, SC2…… , SCn are the n sets of sulcal segmentscandidates forsulci S1,S2,S3………Sn

A segment node V can only belong to a single sulcus:

, respectively.

SCi∩SCj = φ, ∀ (i, j = 1…….. n; i ≠ j). The objective function FOcan be defined as:

FO(SC1, SC2…., SCn) = SIMf(SC1, SC2…., SCn) +SIMe(SC1, SC2…., SCn)

SIMf(SC1, SC2…., SCn)= ∑ SIM(fSCi, fSmi)𝑛𝑛𝑖𝑖=0

SIMe(SC1, SC2…., SCn) = ∑ SIM(feSCi, feSmi)𝑛𝑛𝑖𝑖=0

Where SIMf and SIMeare unary feature- and neighborhood-based similarity values.

11.Local search ontology driven algorithm

a- For each test sulcal segment, we computeoverlap degree with a specific sulcus usingsulci extent region map.

b- Construct sulcal segment set candidate SCi for sulcus Si

ss

by collecting connected sulcal segments

i

c- Compute similarity bettwen each sulcal segment set candidate SC

and which they have the greater overlap degree with the same sulcus.

i and sulcus modelSmi from graph model SIM(fSCi ,fsmi

d- Take segment set candidate SC).

i

e- Give neighborhood relationfor reference sulcus S

that has the best similarity with sulcus model as reference for starting search.

i with sulcus Sjf- Using neighborhood relationand sulcal segment

set candidate SC

i≠j from ontology.

iselected in step d we search the best sulcal segment set candidate SCjfor sulcus Sjin orientation O with sulcus S

i

for all sulcal segment node in SCjif we add a neighbor node to SC

do j increase

SIM(fSCj ,fsmjadd this neighbor nodeto SC

).then

end if j

end for

repeat steps from d to f until no new sulcal segment is added.

iv. CONCLUSION

In this work we have proposed an approach to automatical cortical sulcilabelingbased on a graph representation and couplinghigh-level knowledge with low level knowledge in graph matching framwork based on local search algorithm.

High-level knowledge consists of ontology that describe sulci and their spatial relations, whereas low-level knowledge consists of a priori statistics about geometric features represented in graph model.

The large variation of cortical folding patternsmakes automatic labeling a challenging problem, which cannot be solved by numeric knowledge (low level descriptors) alone the reason that we integrate several forms of a priori knowledge concerning the sulci.

In future work we includes validation of our method with many subjects and compare it with other approaches. We also intend to exploit spatial relations involving more than two sulci and improve the graph matching algorithm.

v. REFERENCES

[1] D. L. PHAM, C. XU, J. L. PRINCE.Current Methods in Medical Image Segmentation. Annual Review of Biomedical Engineering, 2, 2000.

[2 ] N. Tirpude, R. R. Welekar. A Study of Brain Magnetic Resonance Image Segmentation Techniques. IJARCCE Vol. 2, Issue 1, January 2013.

166 © IT4OD 2014

Page 173: IT4OD 2014 Proceedings

[3] K. Aloui et al. Characterization of a human brain cortical surface mesh using discrete curvature classification and digital elevation model. J. Biomedical Science and Engineering 5 133-140 2012.

[4] A. Klein, J. Tourville. 101 labeled brain images and a consistent human cortical labeling protocol. Frontiers in Neuroscience Brain Imaging Methods,vol.6, Art 171 2012.

[5]N. Tzourio-Mazoyer, P. Y. Herve, B. Mazoyer. Neuroanatomy : Tool for functional localization, key to brain organization. NeuroImage, vol. 37, no. 4, pages 1059–1060, 2007.

[6]Thompson. P. M, et al. Mapping cortical change in alzheimers disease, brain development, and schizophrenia. NeuroImage 23, S2–S18 2004.

[7] S. Sandor and R. Leahy. Surface-based labeling of cortical anatomy using a deformable atlas. IEEE Trans. Med.Imag. 16(1), pp. 41-54, 1997.

[8]S. Jaume, B. Macq, and S. K. Warfield. Labeling the brain surface using a deformable multiresolution mesh,. in Proc. MICCAI 2002.

[9] K. J. Behnkeb et al. Automatic classification of sulcal regions of the human brain cortex using pattern recognition. Medical Imaging: Image Processing, Proceedings of SPIE Vol. 5032 © 2003.

[10]Perrot. M, Rivière. D, Mangin. J.F. Identifying cortical sulci from localization, shape and local organization. In ISBI, pp. 420–423. 2008.

[11] G. Lohmann, D.Y. von Cramon. Automatic labeling of the human cortical surface using sulcal basins. Medical Image Analysis 4 179 –188 2000.

[12] B. Fischl et al. Automatically parcellating the human cerebral cortex. Cerebral Cortex, vol. 14, no. 11-22, 2004.

[13]N. Royackkers, M. Desvignes, M. Revenu. Une méthode générale de reconnaissance de courbes 3D : application à l'identification de sillons corticaux en imagerie par résonance magnétique. Traitement du Signal vol 15 - n°5 –365-379. 1999.

[14]D. Riviere, J. F. Mangin, D. P.Orfanos, J. M. Martinez, V. Frouin, J. Regis. Automatic recognition of cortical sulci of the human brain using a congregation of neural networks. Med. Image Analysis 6, pp. 77-92, 2002.

[15]F. Vivodtzev, L. Linsen, B. Hamann, K.I. Joy, B.A. Olshausen. Brain mapping using topology graphs obtained by surface segmentation. In Scientific Visualization: The Visual Extraction of Knowledge from Data, Springer, Berlin, Heidelberg, , pp. 35–48 2006.

[16]Y. Shi, Z. Tu, A. Reiss, R.A. Dutton, A.D. Lee, A. Galaburda, I. Dinov, P.M. Thompson, A.W. Toga. Joint sulci detection using graphical models and boosted priors. In Information Processing in Medical Imaging, Lecture Notes in Computer Science, vol. 4584, Springer, Berlin, , pp. 98–109 2007.

[17]F. Yang, F. Kruggel. A graph matching approach for labeling brain sulci using location, orientation, and shape.Neurocomputing 73 179–190 2009.

[18] A. Mechouche, C. Golbreich, X. Morandi, B.Gibaud. Ontology-Based Annotation of Brain MRI Images. In American Medical Informatics Association, Annual Symposium, p 460–464, Washington, USA, 2008.

[19] Mangin, J..F, Frouin, V, Bloch, I, Regis, J, Lopez-Krahe, J. From 3D magnetic resonance images to structural representations of the cortex topography using topology preserving deformations.Journal of Mathematical Imaging and Vision 5 (4), 297–318. 1995.

[20] Cornelius Rosse, Jr. José L. V. Mejino. A reference ontology forbiomedical informatics : the foundational model of anatomy. J. ofBiomedicalInformatics, vol. 36, no. 6, pages 478–500, 2003.

[21] O. Dameron, B. Gibaud, X. Morandi. Numeric and SymbolicRepresentation of the Cerebral cortex Anatomy : Methods and preliminaryresults. Surgical and Radiologic Anatomy, vol.26,no.3,p191–197,2004.

167 © IT4OD 2014

Page 174: IT4OD 2014 Proceedings

Processus de construction d'ontologie basé sur

l'extraction automatique des connaissances à partir

des textes structurés

Driouche Razika Kemcha Nawel Bensassi Houda

Département TLSI, Faculté des NTIC, Département TLSI, Faculté des NTIC, Département TLSI, Faculté des NTIC,

Université Constantine 2, Algérie. Université Constantine 2, Algérie. Université Constantine 2, Algérie.

[email protected]. [email protected]

Résumé—La construction manuelle d'une ontologie s'avère

être un travail fastidieux et couteux, car il nécessite

l'identification des concepts et relations potentiels, puis le

placement de ces éléments. L’extraction des connaissances à

partir des textes répond à la problème de gérer et de traiter une

grande masse de textes qui dépasse les capacités humaines. Afin

de concevoir des ontologies sémantiquement plus riches, ce

travail propose un processus appelé PECCO pour l’extraction

des connaissances à partir des textes structurés dont le but est de

construire une ontologie de domaine, où les concepts et les

relations sont extraits à partir d’un ensemble des corpus de

textes, représentant des rapports médicaux des malades. Nous

utilisons certains outils d’extraction terminologique tel que :

R.TeMiS, et TreeTagger pour l’étiquetage morphosyntaxique et

Protégé OWL pour l’implémentation de l’ontologie.

Mots Clé—Extraction des connaissances, Corpus, Ontologie,

Méthontology, Processus.

I. INTRODUCTION

Les masses de données textuelles aujourd'hui disponibles

engendrent un problème difficile lié à leur gestion ainsi qu'à

leur traitement. Des méthodes de fouille de textes et de

traitement peuvent en partie répondre à une telle

problématique. Elles consistent à modéliser puis mettre en

œuvre des méthodologies appliquées aux données textuelles

afin d'en déterminer le sens et découvrir des nouvelles

connaissances. La plupart des méthodologies proposées

s'appuient sur des approches linguistiques ou statistiques [17],

[18]

Vue l'énorme volume des connaissances que les utilisateurs

du domaine médical sont tenus de posséder. Les grands efforts

doivent être faire pour retenir toutes ces connaissances et

pouvoir les utiliser constamment. L'évolution rapide des

informations de cette discipline, le besoin du partage et la

réutilisation ont mené au développement des ontologies

médicales [8].

La construction manuelle d'une ontologie s'avère être un

travail fastidieux et couteux, car il nécessite l'identification des

concepts et relations potentiels, puis le placement de ces

éléments. L'extraction des connaissances et leur utilisation pour

la construction des ontologies doit donc être automatisée. En

effet, la masse d'information évoluant rapidement dans les

divers domaines modélisés, il devient nécessaire de faire

valider l'ontologie afin qu'elle reflète le mieux possible la

réalité du moment. C'est dans ce cadre que s'inscrit notre

réflexion.

Ce papier propose un processus d'extraction des

connaissances à partir d'une base de connaissances médicale

étendue avec les connaissances du service de gynécologie, afin

de construire une ontologie du domaine. Cela offre une bonne

structuration, organisation, et modélisation des connaissances.

Cela nous a induits à la construction d'un système qui

représente toutes les connaissances relatives au domaine. Nous

nous basons sur les standards et les outils actuels du web

sémantique. Le modèle conçu est basé sur le standard OWL, et

sur les outils : Protégé OWL et Racer.

Ce papier est organisé comme suit. La section 2 présente

l‟ingénierie des connaissances alors que la section 3 montre des

aspects liés à l‟extraction des connaissances. La section 4

décrit quelques méthodes de construction des ontologies.

Ensuite, la section 5 détaille notre processus proposé, appelé

.PECCO . Ce processus s‟articule sur deux grandes parties :

l‟extraction des connaissances et la construction des ontologies.

Enfin, la section 6 conclut notre travail et donne quelques

perspectives pour des travaux futurs.

II. INGENIERIE DES CONNAISSANCES

L'ingénierie de connaissances (IC) ou « Knowledge

engineering » tire ses origines de l‟intelligence artificielle

(IA). Elle a été évoluée depuis les années 70, l‟IC s‟intéresse,

de plus en plus, aux problématiques de l‟acquisition et de la

modélisation des connaissances, elle offre la méthode

scientifique pour analyser et manipuler les connaissances, et

propose des concepts, méthodes et techniques permettant de

modéliser, de formaliser, d‟acquérir des connaissances dans

l‟organisation dans un but d‟opérationnalisation, de

structuration ou de gestion au sens large [1].

Un grand nombre de méthodes d‟IC était dédié à l‟origine

à la création de systèmes à base de connaissances. Sur une

longue liste de ces méthodologies, nous citons : La méthode

168 © IT4OD 2014

Page 175: IT4OD 2014 Proceedings

SAGACE [2], La méthode CommonKADS [3] , La méthode

REX [4], La méthode MASK [5].

III. EXTRACTION DES CONNAISSANCES

L‟extraction des connaissances (EC) est l‟ensemble des

processus de découverte et d‟interprétation de régularités dans

les données.

On distingue trois (3) types d‟EC :

A. Extraction des connaissances à partir des données (ECD)

fouille de données ou Data mining

C‟est une activité qui consiste à analyser un ensemble de

données brutes pour en extraire des connaissances exploitables.

Les connaissances sont des éléments qui possèdent une syntaxe

et une sémantique formalisées dans un langage de

représentation de connaissances [6]

B. Extraction des connaissances à partir de web (ECW) ou

Web mining

C‟est l‟ensemble des techniques qui visent à explorer, traiter et

analyser les grandes masses d‟informations consécutives à une

activité Internet, il est issu des applications des techniques de

data mining. L‟ECW peut s‟intéresser aux données présentés

sur les sites web, on parle alors de texte mining, ou aux

données coté serveur dont l‟exploitation est plus proche des

techniques de data mining [7].

C. Extraction de connaissances à partir de texte (ECT) fouille

de texte ou Text mining

C‟est introduite au milieu des années 90 sous le terme

Knowledge Discovery in Textual Databases (KDT). L‟ECT

répond à la problématique de gérer et de traiter une grande

masse de textes qui dépasse les capacités humaines, ce

processus commence par la modélisation des textes et se

termine par l‟interprétation des résultats de l‟extraction et

l‟enrichissement des connaissances [8]

IV. CONSTRUCTION DES ONTOLOGIES

Nées des besoins de représentation des connaissances, les

ontologies sont à l‟heure actuelle au cœur des travaux menés en

IC. La construction des ontologies demande à la fois une étude

des connaissances humaines et la définition de langages de

représentation, ainsi que la réalisation de systèmes pour les

manipuler. L‟IC a ainsi donné naissance à l'ingénierie

ontologique, où l'ontologie est l'objet clé sur lequel il faut se

pencher.

Plusieurs travaux proposent des méthodes de construction

d'ontologies. Nous relevons un certain nombre de travaux

visant à proposer une méthode de création d'ontologies tel que:

ENTERPRISE[9], TOVE [10] et METHONTOLOGY[11].

A. ENTERPRISE

Enterprise basé sur l‟expérience de construction d‟ontologies

dans le domaine de la gestion des enterprises [9].

B. TOVE

Tove aboutit à la construction d‟un modèle logique de

connaissances [10].

C. METHONTOLOGY

Methontologie vise la construction d‟ontologie au niveau

de connaissance et distingue les étapes suivantes : Cadrage

(spécification), conceptualisation, formalisation,

implémentation [11].

Bien que manuelles, les approches présentées imposent un

cadre pour la définition d'ontologies. Elles sont d'ailleurs

généralement reprises en partie dans les méthodologies de

construction semi-automatiques d'ontologies.

La méthode mixte ou semi-automatique combine les deux

approches (manuelle et automatique) en proposant à des

utilisateurs, généralement des experts du domaine, de vérifier

la structure sémantique définie automatiquement dans une

première étape. Parmi les nombreux travaux existants dans la

création semi-automatique d'ontologies, nous centrons notre

analyse sur les approches reposant sur l'analyse de textes [12].

Les méthodes de construction d'ontologies à partir de textes

privilégient souvent l'analyse du texte. Nous présentons la

méthode TERMINAE [13]. Cette méthode vise à construire des

ontologies dans un sous domaine de l‟EC impliquant des

traitements linguistiques et distingue les étapes suivantes :

analyse des besoins, constitution du corpus, analyse

linguistique, normalisation, formalisation sémantique [13].

V. PROCESSUS PECCO

Nous proposons un processus d‟extraction de connaissance

et de construction d‟ontologie appelé PECCO (Processus

d‟Extraction de Connaissance et Construction d‟Ontologie).

Notre processus est composé de quatre (4) phases principales,

la spécification, l‟étude linguistique et l‟extraction des

connaissances, la construction de l‟ontologie et enfin,

l‟enrichissement de l‟ontologie développée (fig 1).

Le processus PECCO commence par la phase de

spécification de l‟ontologie qui consiste à décrire l‟ontologie et

établir l‟étude des besoins de cette dernière. La deuxième phase

est l‟étude linguistique et l‟extraction des connaissances, elle

introduit les étapes suivantes : 1) Prétraitement et analyse, 2)

Extraction de termes, 3) Nettoyage et filtrage, 4) Classification.

Ensuite, la troisième phase consiste à la construction de

l‟ontologie et introduit les étapes suivantes: 1) La

Conceptualisation, 2) La formalisation et l‟implémentation. La

dernière phase concerne l‟enrichissement de l‟ontologie afin de

suivre l‟évolution du domaine concerné.

169 © IT4OD 2014

Page 176: IT4OD 2014 Proceedings

Fig. 1. Processus Pecco.

A. Spécification de l'ontologie

Cette phase a pour but de fournir une description claire du

problème étudié et d'établir un document de spécification des

besoins. Nous dériverons l'ontologie à construire à travers les

cinq (5) aspects suivants :

1) Le domaine de connaissance

L e domaine d'étude concerne la spécialité de gynécologie

en médecine.

2) L'objectif opérationnel

L 'objectif sert à structurer les termes du domaine et aider

l'agent de santé dans le cadre de son travail.

3) Les utilisateurs :

Les médecins et les agents de santé du service gynécologie

sont censés utilisés notre ontologie.

4) Les sources d'informations :

Il s'agit de sélectionner parmi les différentes sources de

connaissance celles qui permettront de répondre aux objectifs

de l'étude.

Dans le cadre de notre travail, Les textes utilisés sont

sélectionnés à partir d'un ensemble des rapports médicaux que

nous avons collecté afin de former des corpus de texte en

langage naturel. Nous nous sommes basés aussi sur plusieurs

travaux voisins dans le domaine des ontologies [6][8][12].

5) La portée de l'ontologie

Parmi les termes, nous citons : patiente, consultation,

traitement, grossesse, accouchement, échographie, nouveau-

né etc.

B. Etude linguistique et extraction

Cette phase consiste à traiter le corpus brut afin d'avoir un

corpus traité. Ce dernier est utilisé afin d'extraire les termes.

Par la suite, une opération de nettoyage est nécessaire afin

d'éviter les doubles et les mots vides et aboutir à un corpus

nettoyé. Une deuxième opération de filtrage va nous servir à

construire notre dictionnaire de terme. Ensuite, l'étape de

classification sert à répartir les termes en deux (2) listes, l'une

pour les relations et l'autre pour les concepts candidats. Nous

allons présenter en détail les quatre (4) étapes de l'étude

linguistique et l'extraction.

1) Prétraitement et analyse

Le prétraitement vise à définir une stratégie pour traiter les

données manquantes. Il consiste à normaliser le texte afin

d'obtenir des résultats cohérents et aussi, dans la mesure du

possible, à corriger certaines erreurs et à expliciter des

informations manquantes à l'aide parfois de ressources

externes. Cette étape sert à normaliser les diverses manières

d'écrire un même mot, à corriger les fautes d'orthographe

évidentes ou les incohérences typographiques et à expliciter

certaines informations lexicales exprimées implicitement dans

les textes. L'analyse textuelle ou linguistique du corpus revient

à systématiser et à rendre plus efficace la recherche des

données conceptuelles dans les textes. L'analyse se fait à l'aide

d'un expert linguistique. Nous avons aussi utilisé le correcteur

d'orthographe en ligne Reverso [16], pour avoir un corpus sans

erreurs.

2) Extraction des termes

L'extraction des éléments sémantiques consiste à retirer des

concepts importants et les relations entre ces concepts que nous

allons les utiliser tout au long du processus de développement

de l'ontologie du domaine.

Un terme est un syntagme, c'est-à-dire qu'il est constitué

d'un ou plusieurs mots pris ensemble dans une construction

syntaxique considérée comme une unité insécable. Ce terme ne

prend de sens que par rapport au contexte dans lequel il est

utilisé (corps de métier, domaine technique, domaine

scientifique, etc.). Il s'agit de domaine de

spécialité. L'extraction de termes alors vise à recenser tous les

termes contenus dans un corpus. Le résultat d'une extraction est

une liste de termes.

Cette étape est automatiquement réalisée à l'aide de deux

outils : R.TeMiS, version 10.6 [14] et TreeTagger, version

3.2[15].

R.TeMiS 10.6 : est un outil sert à créer, manipuler, analyser

et extraire des termes à partir des corpus de textes. Les textes

entrés doivent être organisés sous formes des phrases, et

170 © IT4OD 2014

Page 177: IT4OD 2014 Proceedings

sauvegardés dans un fichier de type (txt). L'avantage de cet

outil est de calculer le nombre d'occurrence de chaque terme,

cela va nous aider à choisir les termes appropriés pour la

construction de notre ontologie médicale, en prenant en compte

le terme qui apparait plusieurs fois par rapport à un autre.

R.TeMiS a l'avantage aussi de tirer les mots vides, et cela va

nous faciliter leur suppression [14].

TreeTagger 3.2 : est un outil d'étiquetage morpho-

syntaxique et de lemmatisation. Cet outil sert à assigner à

chaque terme d'un texte sa catégorie morpho-syntaxique (nom,

verbe, adjectif, article, nom propre, pronom, abréviation, etc.)

et donner pour chaque terme sa lemmatisation. Les textes

entrés doivent être organisés sous formes des phrases, et

sauvegardés dans un fichier de type (txt). TreeTagger va nous

aider à classifier les termes selon des concepts et des relations

et éliminer les mots vides [15].

3) Nettoyage et filtrage

L'étape de nettoyage sert à améliorer la qualité du résultat

obtenus par : l'élimination des mots vides et l'élimination des

doublons. L'objectif est de corriger ou de contourner les erreurs

qui sont glissés dans le contenu du corpus. Le nettoyage sert à

fournir un corpus nettoyé pour bien extraire les termes utiles à

la construction de l'ontologie.

Dans le cadre des méthodes statistiques, plusieurs mesures

sont couramment utilisées afin de sélectionner les termes

candidats. Parmi elles, on peut citer le nombre d'apparitions

d'un terme au sein d'un corpus, ainsi que des mesures plus

complexes tels que l'information mutuelle, tf-idf, T-test ou

encore l'utilisation de lois de distributions statistiques des

termes [17]. Cependant, toutes ces techniques ne permettent de

détecter que de nouveaux concepts et aucune d'elles ne permet

de les placer précisément au sein de l'ontologie, ni de

déterminer si des relations existent entre eux. Les méthodes

basées sur l'analyse syntaxique, quant à elles, utilisent les

fonctions grammaticales d'un mot ou d'un groupe de mots au

sein d'une phrase. Elles posent l'hypothèse que les dépendances

grammaticales reflètent des dépendances sémantiques [18].

D'autres approches utilisent des patrons syntaxiques [19]. Les

termes extraits mettent alors en évidence de nouveaux

concepts, mais également l'existence de relations entre eux.

Dans notre travail, nous allons utiliser le nombre

d'occurrence des termes qui va nous aider à réaliser le filtrage.

Le filtrage sert à sélectionner les termes appropriés (termes

candidats) que nous venons d'extraire, ces termes devront être

appropriés pour le domaine de notre étude qui est la

gynécologie.

4) Classification

Dans cette étape, nous allons classifier les éléments

sémantiques (les termes) extraits selon deux catégories : les

concepts et les relations. Pour cela, nous allons utiliser le

résultat d'étiquetage effectué par l'outil TreeTagger afin de

classer chaque terme selon sa catégorie. Ainsi, nous allons tenir

que les termes et les relations nécessaires à la construction de

l'ontologie de domaine. De ce fait, nous allons classifier les

NOM (noms propres), ADJ (les adjectifs), ABR (les

abréviations) comme des concepts et les termes de type VER

(verbe) comme des relations. Ainsi les termes de type KON

(conjonction), PRO (Pronom), DET : ART (article), DET :

POS (pronom possessif), PRO : REL (pronom relatif), etc.

Comme des mots vides qu'il faut les éliminer et les supprimer.

C. Construction de l'ontologie

Notre ontologie médicale à construire concerne le service

gynécologie. Pour ce faire, nous allons suivre les étapes du

processus de construction d'ontologie qui s'appuie sur la

méthode Methontology [11] et la méthode TERMINAE [13].

La méthode TERMINAE construit une ontologie à partir des

termes extraits des ressources. Methontology a pour objectif de

donner une définition à chaque concept et à chaque relation de

l'ontologie dans un langage de LDs. Elle nous spécifie les

étapes à suivre pour construire une ontologie: 1) La

conceptualisation, 2) La formalisation, 3) L'implémentation.

1) Conceptualisation

Elle consiste à identifier et à structurer les connaissances du

domaine à partir des sources d'informations. L'acquisition de

ces connaissances peut s'appuyer à la fois sur l'analyse de

documents et l'interview des experts du domaine. Une fois que

les concepts sont identifiés par leurs termes. La sémantique de

ces concepts est décrite par un langage semi- formel à travers

leurs propriétés et leurs instances. Pour ce faire, nous

distinguons les principales activités suivantes :

a) Construction d'un glossaire de termes.

b) Construction des hiérarchies des concepts.

c) Construction du diagramme de relations binaires.

d) Construction du dictionnaire des concepts.

e) Construction de la table des relations binaires.

f) Construction de la table des attributs.

g) Construction de la table des axiomes logiques.

h) Construction de la table des instances.

i) Construction de la table des assertions.

L‟étape de conceptualisation est alors constituée d'un

ensemble des activités permettant d'aboutir à un ensemble de

représentations intermédiaires semi-formelles que l'on appelle

une ontologie conceptuelle.

Le glossaire de termes recueille et décrit tous les termes

candidats extraits et filtrés dans l‟étape d'extraction des termes,

et qui sont utiles et utilisables pour la construction de

l'ontologie de domaine.

Une hiérarchie de concepts organise un groupe de concepts

entre eux sous forme d'une taxonomie. Elle démontre

l'organisation des concepts définis dans le glossaire de termes

en un ordre hiérarchique qui exprime les relations (sous

classes, super classe).

Une relation binaire permet de relier deux concepts entre

eux (un concept source et un concept cible). Cette activité

consiste donc à construire un diagramme de relations binaires

qui permet de représenter de manière graphique les différentes

relations qui existent entre les divers concepts de même ou de

différente hiérarchie.

171 © IT4OD 2014

Page 178: IT4OD 2014 Proceedings

Fig. 2. Diagramme des relations binaires

Le dictionnaire de concepts contient les concepts du

domaine. Pour chaque concept nous définissons ses instances

connus, ses attributs, et ses concepts synonymes.

La construction de la table des relations binaires sert à

définir pour chaque relation utilisée dans le diagramme de

relations binaires : le nom de relation, le nom de concept source

et cible, le nom de relation inverse et les cardinalités sources et

cibles.

La construction de la table des attributs spécifie pour

chaque attribut inclut dans le dictionnaire de concepts,

l'ensemble des contraintes et des restrictions sur ces valeurs.

La construction de la table des axiomes sert à définir les

concepts au moyen des expressions logiques. Chaque axiome

comporte : le nom de concept sur lequel porte l'axiome, une

définition en langage naturelle, et une expression logique (fig3).

Fig. 3. TABLE DES AXIOMES LOGIQUES

Concept Description Expression logique

Médecin

Un médecin travaille dans une

structure de santé, examine

des patientes, prescrit des

traitements et dépiste des maladies.

(X).Médecin(X) ∩ Ǝ(Y),

Structure-santé(Y)

∩Travaille(X, Y) ∩ Ǝ(Z).

Patiente(Z) ∩ Examine(X,

Z).Ǝ(W).∩Traitement(W)

∩ Prescrit(X, W)

… … …

La construction de la table des instances décrit les instances

connues, qui sont déjà identifiées dans le dictionnaire des

concepts. Pour chaque instance, il faut spécifier le nom

d'instance, le nom du concept ou elle appartienne, ces attributs

et les valeurs qui lui y sont associés.

Les assertions affirment l'existence des relations entre les

instances. La construction de la table des assertions définit

pour chaque concept source représenté dans la table des

relations binaires, et pour chaque instance du concept source

définie dans la table des instances. Les instances du concept

cible qui sont en relation par avec les instances du concept

source.

2) Formalisation

Cette étape consiste à formaliser le modèle conceptuel

obtenu dans l'étape précédente par un formalisme de

représentation d'ontologie telle que la logique de description

[20]. L'étape de formalisation est constituée d'un ensemble de

phases, qui à partir du modèle conceptuel définit dans l'étape

précédente, permet d'aboutir à une ontologie formelle. Le

résultat est une base de connaissance en logique de description

composée de deux parties : Tbox et Abox.

3) Implémentation

Différents outils ont été proposés pour aider à la conception

manuelle d'ontologies. Ces outils permettent d'éditer une

ontologie, d'ajouter des concepts et des relations, etc. Ils

intègrent différents langages de formalisation (RDF, OWL).

Protégé OWL est utilisé pour l„implémentation de l‟ontologie

médicale. C‟est une interface modulaire, permettant l'édition,

la visualisation, le contrôle (vérification des contraintes)

d'ontologies [21]. En plus, cet outil permet de formuler

l'ontologie dans le langage de représentation de connaissance

OWL, et de vérifier l'ontologie par le raisonneur RACER

4) Test de validation

L'étape de validation intervient pour tester et valider

l'ontologie, ainsi que son environnement logiciel et sa

172 © IT4OD 2014

Page 179: IT4OD 2014 Proceedings

documentation. Les problèmes de cohérence, de satisfiabilité,

de subsomption sont alors vérifiés grâce à la connexion au

moteur d'inférence RACER.

Une fois l'ontologie construite et validé par les tests de

RACER. Elle est prête à être interrogée par les requêtes

d'utilisateurs. Le système passe par plusieurs étapes pour

générer une requête en langage formel nRQL. [21]

Nous allons prendre un exemple d'interrogation d'ontologie.

La requête de recherche en langage naturel :

« Qui est le médecin qui examine la patiente Majri Sonia ? »

Traduction en nRQL en appliquant les règles de

génération :

<Médecin, Examine, patiente_Majri_Sonia>

( ?x|Médecin||patiente_Majri_Sonia|| Examine|).

La requête sera alors envoyée au raisonneur RACER

qui va l'exécuter et rendre le résultat suivant :

((( ?x |Médecin_Abdelli_Riadh|))).

D. Enrichissement et maintenance

L'enrichissement d'ontologie consiste à une phase pour la

recherche de nouveaux concepts et relations et le placement

de ces concepts et relations au sein de l'ontologie [18].

L'enrichissement d'ontologies nécessite l'extraction de termes

représentatifs dans le domaine de notre ontologie,

l'identification des relations lexicales entre les termes et le

placement des nouveaux termes dans notre ontologie.

La maintenance de l'ontologie du domaine assure une

meilleure représentation de cette dernière à l'aide de

connaissances à jour. En effet, le contenu sémantique des

nouveaux textes (ainsi que des anciens) est mieux structuré

grâce à l'intégration des termes clés du domaine dans

l'ontologie.

VI. CONCLUSION

Ce papier aborde deux problématiques, l‟extraction des

connaissances à partir des rapports médicaux. Ainsi que, la

construction d‟une ontologie du même domaine médical. Pour

cela, nous avons décrit et appliquer un processus pour le

développement d‟ontologie définie par le langage OWL et

basé sur l‟extraction des connaissances.

Le processus proposé est complet, dans la mesure où,

partant des données brutes représentées comme un réservoir

de connaissances il permet d‟arriver à une ontologie

opérationnelle. Pour ce faire, plusieurs phases sont suivies afin

d‟expliciter et de guider le développement de l‟ontologie. Par

ailleurs, plusieurs outils sont impliqués afin d‟aboutir

progressivement à la sémantique des déclarations. Une fois la

phase d‟extraction des connaissances terminée, on a passé à

l‟étape de construction de l‟ontologie du domaine. Ensuite,

nous avons testé et validé notre ontologie tout en mentionnant

l‟utilité de l‟enrichissement par rapport à un domaine évolutif.

Quelques perspectives peuvent être envisager pour un

travail futur : i) l‟enrichissement de l‟ontologie avec d‟autres

concepts pour être plus expressive et donc reflète réellement le

domaine étudié, ii) le développement d'algorithmes basés sur

la similarité sémantique pour l‟étape de filtrage contextuel de

la phase d‟extraction des connaissances, iii) l‟intégration de

l‟ontologie avec d‟autre ontologie du domaine médical par

exemple le domaine d‟endocrinologie afin de répondre à des

services à valeur ajoutée.

REFERENCES

[1] J.L.Ermine, «Enjeux, démarches et processus de la gestion des

connaissances », Actes des journées francophones d'ingenerie

des connaissances IC2000. Toulouse, France,.2000.

[2] P.J. SAGACE, «Une représentation des connaissances pour la

supervision de procédés», systémes experts de 2 ème

génération, France, 1990.

[3] J.Breuker, «Common KADS library for Expertise Modelling»,

IOS Press, Amsterdam, 1994.

[4] P.Malvache Pierre, « Mastering Corporate Experience with the

REX method», actes de la conference International Symposium,

1993.

[5] J.L.Ermine, «Enjeux, démarches et processus de la gestion des

connaissances », Actes des journées francophones d‟ingenerie

des connaissances IC2000, Toulouse, France, 2000.

[6] U.Fayyad and S.Piatetsky, « From data mining to knowledge

discovery in data bases », Artifical intelligence magazine, 1996.

[7] http://fr.wikipedia.org/wiki/Fouille_du_web#Fouille_de_la_stru

cture_du_web

[8] A. Bodnari, L. Deléger, B. Grau, C. Grouin, T. Hamon, T.

Lavergne, A. L. Ligozat, A. Névéol, X. Tannier, and P.

Zweigenbaum. Re “Making Sense of Medical Texts”. Forum

STIC Paris-Saclay 2013.

[9] M.Uschold and M.King, “Towards a methodology for building

ontologies”, Workshop on Basic Ontological Issues in

Knowledge, 1995.

[10] M.Gruninger and al, “The role of competency questions in

enterprise engineering”, In IFIP WG5.7 Workshop on

benchmarking, 1994.

[11] M.Fernandez-Lopez and al, “Methontology: from ontological art

towards ontological engineering”, In Proceedings of the

AAAI97 Spring Symposium, 1997.

[12] B. Bachimont, «Engagement Sémantique et Engagement

Ontologique : Conception et Réalisation D'ontologies En

Ingénierie Des Connaissances», In J. Charlet, M. Zacklad, G.

Kassel & D. Bourigault (Eds.), Ingénierie des connaissances,

évolutions récentes et nouveaux défis. Paris: Eyrolles.2000.

[13] N. Aussenac-Gilles and B. Biébow, «Modélisation du domaine

par une méthode fondée sur l‟analyse de corpus», actes de la

conférence IC 2000, journées francophones d‟ingénierie des

connaissances, 2000.

[14] https://www.projet-plume.org/fiche/rtemis.

[15] http://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/.

[16] http://www.reverso.net/orthographe/correcteur-francais/.

[17] P. Velardi and M. Missikoff, «Using text processing techniques

to automatically enrich a domain ontology ». In Proceedings of

ACM- FOIS, 2001.

[18] R. BENDAOUD, « Construction et enrichissement d'une

ontologie à partir d'un corpus de textes », RJCRI'06, 2006.

[19] M.A. HEARST, « Automatic acquisition of hyponyms from

large text corpora », Proceedings of 14th International

Conference on Computational Linguistics 2: 539., 1992.

[20] F. Baader and al, “The description logic handbook theory,

Implementation and Applications”, Cambridge University Press,

2003.

[21] http://protege.stanford.edu/

173 © IT4OD 2014

Page 180: IT4OD 2014 Proceedings

Le raisonnement sur la logique de description floue et décomposée

GASMI Mohamed Departementd’informatique

Université de M’sila-Algerie- [email protected]

BOURAHLA Mustapha Departementd’informatique

Université de M’sila-Algerie- [email protected]

ResuméPour satisfaire le besoin de représenter et raisonner avec les ontologies floues dans le contexte de web sémantique, et vu la nécessité de décomposer une ontologie floue en plusieurs sous-ontologiesafin d’optimiser le processus de raisonnementflou, un DF-ALC(Decomposingfuzzy ALC) est proposé dans ce papier. La contribution principale de ce travail est de décomposer les axiomes de l’ontologie en sous-axiomes selon un degré de certitude affecté aux concepts et rôles flous, définir la syntaxe et la sémantique, proposer un algorithme de tableau local et une façon d’utiliser les passerelles pour inférer entre les différentes TBox locales. Mots clés - Web Sémantique, Ontologie, Logiques de Description, logique floue, Inférence et raisonnement automatique 1. Introduction

La prise en compte de la sémantique est également primordiale dans la recherche d’informations et l’évaluation de requêtes sur le Web. De nombreux travaux émanant de la communauté du Web sémantique ont été réalisés pour décrire la sémantique d'applications par la construction d’ontologies. En effet, le Web Sémantique est un Web sur lequel les internautes et les chercheurs portent beaucoup d’espoirs, Que ce soit dans le domaine de la recherche d’informations, l’e-business, Competitive Intelligence, etc., il aura pour mission de donner une signification aux données et de permettre aux machines d’analyser et de comprendre les informations qui y circulent.

Avoir un sens passe avant tout par la description de ces informations (créer des méta-données), puis essayer de les relier entre elles grâce à des règles d’inférence et de déduction afin de construire des ontologies. Ces dernières sont alors centrales pour le Web sémantique qui, d’une part, cherche à s’appuyer sur des modélisations de ressources du Web à partir de représentations conceptuelles des domaines concernés et, d’autre part, il a pour objectif de permettre à des programmes de faire des inférences dessus.

”Tolérer l’incertitude et l’imprécision ne peut être fait que par les systèmes flous. Nous avons besoin d’un Web Sémantique qui peut nous fournir des garanties, et dans lequel on peut résonner en utilisantla logique.”[TIM98], tels sont les propos de Tim Berners-Lee, fondateur et président du World Wide WebConsortium. Ou il essaye de nous montrer que toutes ces méta-données sont créées par l’humain, et donc, elles devraient contenir beaucoup d’incertitudes et d’imprécisions, ce qui se répercutera sur la construction des ontologies.Parce que la logique floue

a été conçue pour trouver des solutions aux problèmes d’imprécisions et d’incertitudes de façon souple, les chercheurs ont eu l’idée d’intégrer cette logique dans le domaine duWeb Sémantique en général et de l’utiliser dans la construction des ontologies par la logique de description en particulier.

les logiques de description sont un bon modèle pour décrire la sémantique des données du Web par des restrictions qui sont nécessaires afin d’obtenir des algorithmes de raisonnement qui passent à l'échelle pour détecter des incohérences ou des corrélations logiques entre données ou sources de données, et pour calculer l'ensemble des réponses à des requêtes conjonctives, et d’un autre coté ils sont très faibles lorsqu'on veut modéliser un domaine dont les connaissances et les informations sont vagues et imprécises. Pour cette raison il y avait beaucoup de propositions pour étendre les logiques de description par des théories mathématiques qui traitent l'incertain et l'imprécis, et comme résultat, c'est la naissance des logiques de description floues.

Pour refléter nos objectifs, et après l’exposition de notre motivation, cet article est organisé de la manière suivante. La section 3 donne des concepts de base sur la DL ALC et des préliminaires sur la DL floue et DL distribuée. La section 4 présente notre logique de description proposée. La section 5 détaille la méthode de raisonnement sur une DL floue et décomposé ;et enfin l’article se termine par une conclusion et des perspectives.

2. Motivation

La logique de description floue ne cherche pas la précision dans les affirmations, mais au contraire, elle cherche la réponse des propositions vagues, nécessitant une certaine incertitude (un flou). Par exemple, en logique classique, à la question : Est-ce que cette personne est grande ? On ne peut répondre que par

174 © IT4OD 2014

Page 181: IT4OD 2014 Proceedings

vrai, si c’est le cas, ou faux dans le cas contraire. Avec la logique floue, on peut représenter les cas où la personne est très petite, moyennement petite, normale, pas très grande, grande, etc.

Cependant, les problèmes de raisonnement considérés sur les ontologies ont souvent pris une position secondaire dans les bases de connaissances floues, en l’occurrence dans la plupart des cas les chercheurs basent leurs efforts sur la méthode de représentation de connaissances incertaines en se concentrant sur les notions mathématiques et les théories des ensembles floues. Ces travaux existants, qui traitent le raisonnement dans les bases de connaissances floues, se contententde petites BC etencore sans donner d’importance à l’optimisation de l’algorithme de raisonnement.

Pour arriver à un traitement efficace pour les BC floues, on optera pour l’organisation des connaissances en catégories d’axiomes en fonction de certaines caractéristiques qui spécifient un sous domaine du domaine général de l’ontologie. Les catégories spécifiquesreprésentent des sous-ensembles des axiomes composés par des concepts (rôles) flous de l’ontologie.Cette structuration serareprésentée par la logique de description distribuée, tandis que le raisonnement sera parallèle sur ces sous-catégories d’axiomes, ce qui permettra de réduire l’espace de recherche d’une partet d’autre part réduira le temps relatif au raisonnement.

Dans notre contribution aussi, les axiomes peuvent être composé par des concepts (rôles) qui appartiennent à deux catégories différentes ; le flou sera représenté par une annotation liée à chaque concept et à chaque rôle, et sera traité par les notions des ensembles flous proposés par Zadeh.On noteraalors deux types d’axiomes, axiomes intra-catégories et inter-catégorie en utilisant la notion de pont.

3.Préliminaire

3.1 Logique de description

Les logiques de description [BAA07]; [BAA91]; [BAA99]; [BAA11] ;[NUT97] forment une famille de langages de représentation de connaissances qui peuvent être utilisés pour représenter les connaissances d’un domaine d’application d’une façon structurée et formelle. Une caractéristique fondamentale de ces langages est qu’ils ont une sémantique formelle. Les logiques de description sont utilisées pour de nombreuses applications.

Ils ont une base commune AL enrichie de différentesextensions : La logique de description ALC, objet du présent travail, rajoute la négationà AL et en fait ainsi une extension modale de la logique propositionnelle. D’autres extensionsrajoutent la

fermeture transitive de rôle, desrestrictions de nombres sur les rôles, la notion desous-rôle etc.

Les logiques de description utilisent les notions de concept, de rôle et d'individu. Les concepts correspondent à des classes d'individus, les rôles sont des relations entre ces individus. Un concept et un rôle possèdent une description structurée définie à partir d'un certain ensemble de constructeurs.

Dans les logiques de description on distingue deux niveaux de traitement:

• Niveau terminologique Tbox : le niveau générique (global) vrai dans tous les modèles et pour tout individu;

• Niveau assertionnelAbox : fournit des instances desconcepts et des rôles.

3.1.1. Syntaxe

Soit NC un ensemble de noms de concept et NR un ensemble de noms de rôle. L'ensemble d’ALC-concept est construit par induction selon la grammaire suivante:

C;D ::= A: Concept atomique Т: Le concept universel Top ⊥: Le concept vide Bottom ¬: Négation d'un concept atomique C ⊓ D: Conjonction de concepts C ⊔ D: Disjonction de concepts ∀r.C: Quantificateur universel ∃r: Quantificateur existentiel non typé

OùA∈NC et R∈NR.

3.1.2 Sémantique

Une sémantique est associée aux descriptions des concepts et des rôles: les concepts sont interprétés comme des sous-ensembles d'un domaine d'interprétation Δ I et les rôles comme des sous-ensembles du produit ΔI x ΔI

Une interprétation I est essentiellement un couple (ΔI; .I) où Δ I est appelé domaine d'interprétation et (.I) est une fonction d'interprétation qui associe à un concept C un sous ensemble CI de ΔI et à un rôle r un sous-ensemble rI de ΔI x ΔI

Т

. En notation mathématique, elle est définie commesuit:

I = Δ ⊥

I I

¬C = Δ= Ø

I - C (C ⊓ D)

I I = CI ∩ D

(∀r.C)I

I =x∈ΔI / ∀ y : (x,y)∈rI→y∈CI

(∃r.C)

I =x∈ΔI / ∃ y : (x,y)∈rI ⋀ y∈CI

3. 2 Logique de description floue

La logique floue est apparue en 1965 à Berkeley dans le laboratoire de Lotfi Zadeh [ZED65] avec la théorie des sous-ensembles flous. C’est une extension

175 © IT4OD 2014

Page 182: IT4OD 2014 Proceedings

de la théorie des ensembles classiques pour la prise en compte d'ensembles définis de façon imprécise. À l'inverse de la logique classique, la logique floue permet à une déclaration d'être en un autre état que vrai ou faux, la déclaration pourrait être vraie ou fausse pour un certain degré, qui est pris à partir d'un espace de vérité (ex. Mohamed est grand). On est incapable d'établir qu’une déclaration est vraie ou fausse complètement à cause de l'implication de vague concept, Comme "grand", qui n'a pas une définition précise.

Définition:Soit X un ensemble. Un sous-ensemble flou a de A est défini par une fonction d’appartenance FA sur X à valeurs dans l’intervalle [0,1].

Dans la logique floue, on distingue généralement trois logiques différentes: Lukasiewicz, Gödel, et la logique du produit; la logique populaire de Zadeh est une sous logique de Lukasiewicz. Ces logiques proposent différents opérateurs pour la conjonction, la disjonction, la négation et l'implication. Ils sont présentés dans le tableau 1.

Fonction x⋀y x⋁y x→y ¬x

Lukasiewicz max(𝑥𝑥+𝑦𝑦−1,0) min(𝑥𝑥+𝑦𝑦,1) min(𝑥𝑥+𝑦𝑦,1) 1−𝑥𝑥

Gödel Min(x,y) Max(x,y) 1 𝑖𝑖𝑖𝑖𝑥𝑥 ≤ 𝑦𝑦𝑦𝑦𝑦𝑦𝑖𝑖𝑦𝑦𝑦𝑦𝑦𝑦

1 𝑖𝑖𝑖𝑖𝑥𝑥 = 𝑦𝑦0 𝑦𝑦𝑖𝑖𝑦𝑦𝑦𝑦𝑦𝑦

Produit max(𝑥𝑥+𝑦𝑦−1,0) min(𝑥𝑥+𝑦𝑦,1) 1 𝑖𝑖𝑖𝑖𝑥𝑥 ≤ 𝑦𝑦𝑥𝑥/𝑦𝑦𝑦𝑦𝑖𝑖𝑦𝑦𝑦𝑦𝑦𝑦

1 𝑖𝑖𝑖𝑖𝑥𝑥 = 𝑦𝑦0 𝑦𝑦𝑖𝑖𝑦𝑦𝑦𝑦𝑦𝑦

Zadeh Min(x,y) Max(x,y) Max(1-x,y) 1-x

Les Logiques de description floues (FuzzyDLs) sont des extensions des logiques de description classiques, elles ont été proposées en tant que langages pouvant représenter et raisonner sur des connaissances vagues ou imprécises[BOB11],[STR13]. Ces extensions ont gagné une attention considérable ces dernières années, d'une part parce qu’elles sont indispensables pour les applications qui sont par nature imprécises, comme l’analyse multimédia, les applications géospatiales et bien plus d’autres, soit : d'autre part elles peuvent être appliquées aux applications du Web sémantique, comme la représentation des ontologies qui modélisent des domaines dont les connaissances sont imprécises.

Plusieurs extensions floues pour les logiques de description ont été proposées comme des formalismes capables de capter et de raisonner sur des connaissances imprécises et vagues [STO05] , [STR06]. Afin de supporter les services d'inférence de DL floue, différents algorithmes du raisonnement ont été proposés, tels que des algorithmes basés sur les tableaux [STO07] ,[STR01], ainsi que des techniques qui réduisent le raisonnement de DL floue à un raisonnement de DL classique [STR04] ,[STR06].

3.3 Logique de description distribuée

Borgida et Serafini proposent une Logique de Description Distribuée (LDD) [BOR03], qui généralise la logique de description, avec une sémantique à modèles locaux pour représenter les bases de connaissance (ontologies) dans les environnements distribués, ainsi que d’assurer un raisonnement sur ces KB .

En utilisant le même principe queDistributed First OrderLogics(DFOL), les logiques de description distribuées (DDL)permettent de relier et de raisonner avec de multiples ontologies sur le Web sémantique. Lespasserelles en logiques de description distribuées se restreignent aux relations entre concepts,rôles et individus d’ontologies différentes. Leur sémantique permetavant tout de déduire des relations de subsomption qu’une ontologie seule ne permet d’obtenir.

Syntaxe

Un réseau d’ontologies en DDL est composé de diverses bases de connaissances en logique de description, dont la syntaxe a été présentée ci-dessus. Par ailleurs, les ontologies sont reliées entre elles par le biais de passerelles. Celles-ci sont représentées, dans la syntaxe abstraite comme suit.

Définition : Soient Oi et Oj deux ontologies. Une passerelle de Oi vers Oj(i ≠ j), est une expression de l’une des formes suivantes :

– i :X⊑→j :Y estunerègle “intra” (into-bridge rule) ;

– i :X⊒→j :Y estunerègle “extra” (onto-bridge rule) ;

– i:a→ j:b est une correspondance d’individus(individualcorrespondence).

où i :X et j : Y sont soit des concepts soit des rôles de Oi et Oj respectivement et i : a est unindividu de Oi et j : b est un individu de Oj.

Sémantique

Dans un réseau d’ontologies en DDL, on affecte à chaque ontologie une interprétation en logique de description. A chaque nœud de réseau peut exister plusieurs logiques de description. Pour relier les connaissances de deux ontologies, DDL utilise les relations de domaines.

Définition : Soit Δ i et Δ j deux domaines d’interprétation. Une relation de domaine homogène rij de i vers j est un sous-ensemble de Δ iXΔj. Pour tous d∈ΔIi, on utilise rij(d) pour dénoter l’ensemble d’∈ΔIj| « d,d’ »∈rij, pour tout D ∈ΔIi, on utilise rij(D) pour dénoter l’ensemble Ud∈Drij(d) et pour tout R⊆ΔIiXΔijrij( R) dénoteU<d,e>∈Rrij(d)x rij

Une relation de domaines r

(e)

ij représente une manière possible d’apparier les éléments de Δ i avec des éléments de Δ j , selon le point de vue de j.Definition : Une relation de domaine rij satisfait une

176 © IT4OD 2014

Page 183: IT4OD 2014 Proceedings

passerelle homogène vis-à-vis de deux interprétations locales Ii et Ij (noté <Ii; rij ; Ij>= rp) si et seulement si:

• <Ii; rij ; Ij

si et seulement si rij(X> i :X⊑

→ j : Y Ii)⊆YIj

• <I,

i; rij ; Ij

si et seulement si rij(X> i :X⊒

→ j : Y Ii)⊇YIj

• <I,

i; rij ; Ij> i :a → j : b alors <aIj, bIj>∈ r

Une relation hétérogène indique une association entre un élément d’un concept et la réification d’une relation, donc elle associe un objet du domaine à une paire d’objets.

Définition :(Relations de domaine hétérogènes) Soient I

ij

i et Ij deux interprétations. Une relation de domaine concept-rôle crij de i vers j est un sous-ensemble de ΔiX∑ j . Une relation de domaine rôle-concept rcij de i vers j est un sous-ensemble de ∑ iXΔ j.

La relation rcij représente une manière possible de réifier des relations entre objets, tandisque la relation crij

Le raisonnement dans une large ontologie floue peut être réduit à quelques procédures du raisonnementdans les sous-axiomes de l’ontologie globale, en se basant sur lesservices d’inférencede l’algorithme de tableaux (satisfaisabilité, subsomption).

Notre approche sera appliquée sur la logique de description ALC.

Une décomposition de TBoxfuzzy-ALC est présentée avecles règles de formation suivantes :

• Un axiome est dans une des formes :

i : C

représente le processus inverse.

Dans notre travail nous allons introduire la notion du flou en se basant sur le formalisme des LDs floues.

Les LDs classiques sont interprétées grâce à des concepts ensemblistes classiques : ensemble, relation binaire, appartenance, etc. les extensions floues des LDs ont une sémantique exprimée grâce à la théorie des sous ensembles flous : Alors que dans la théorie des ensembles classiques, un élément appartient à un ensemble ou n y appartient pas, par contre en théorie des sous ensembles flous, un élément appartient à l’ensemble avec un certain degré. Plus formellement, soit X un ensemble d'éléments, un sous-ensemble flou A de X, est défini par une fonction d'appartenance μA (x), Cette fonction affecte tout x ∈ X à une valeur comprise entre 0 et 1 qui représente le degré dont lequel cet élément appartient à X.

Les LDs floues diffèrent entre elles principalement par le moyen par lequel elles introduisent le flou c'est-à-dire par les éléments syntaxiques (constructeurs, axiomes, assertions) pour lesquels l’interprétation classique s’avère insuffisante.

4. DF-ALC

4.1. Décomposition

L’explosion du nombre de sources d’informations accessibles via le Web multiplie les besoins de techniques permettant le raisonnement dans ces sources. La décomposition d’ontologies représente un thème de recherche très important dans les bases des connaissances floues puisqu’il permet une multi représentation de connaissances selon les degrés de certitude, la chose qui nous permet d’optimiser le raisonnement d’un autre coté.

x1⊑ Dx2 i : Cx1≡ Dx2 i : Rx1⊑Sx2

où C et D sont des expressions de concept, R et S sont des noms de rôle, x1,x2∈[0,1].

• Une expression de concept est dans une des formes :

i : CN|Т|⊥ |i :¬C |i : C U D |i : C ∩ D|i : ∀R.C| i : ∃R.C

• Une règle de pont est dans la forme :

i :Cx1 ≡ j : Cx2

• UneTbox est composée par des concepts et rôles atomiques.

/ x1,x2∈[0,1] ⋀ x2≥x1.

C une expression de concept.

Dans les sections suivantes, deux approches du raisonnement pour les ontologies décomposantesseront présentées avec plus de détail, les techniques sont parallèles et distribuées. Lesalgorithmes de tableaux seront appliqués sur des ontologies locales soit fusionnés dansle cas parallèle ou soit propagés dans le cas distribué.

4.2. TBox et ABox de DF-ALC

La plupart des logiques de description sont composées d'une TBox, qui représente la terminologie d'un domaine, et d'une ABox qui déclaredes individus particuliers dans ce domaine.Notre travail consiste aussi à introduire la notion du floue dans ces deux composantes, en y ajoutant un degré de certitude pour les axiomes terminologique (TBox) et d’autre part un degré d’appartenance des individus flous (ABox). Par ailleurs, la construction d’une logique de description devra prendre en considération les points suivant :

• Les concepts sont divisés en deux types : - Les noms de concept CN

- Les concepts de base C

qui apparaissent dans le côté gauche de l’axiome.

B

• Les noms de concept peuvent apparaitre une seule fois dans la partie gauche d’un axiome de la même sous-ontologie.

qui apparaissent dans le côté droit.

177 © IT4OD 2014

Page 184: IT4OD 2014 Proceedings

• Les concepts atomiques qui définissent les axiomes peuvent être imprécis.

• Les axiomes définis dans la logique de description ALC ne sont pas nécessairement justes dans DF-ALC

DF-ALC peut représenter l’imprécision des concepts atomiquespar une propriété floue qui prend une valeur dans l’intervalle [0,1], cette propriété ne nécessite pas une grande modification lors de l’extension de la syntaxe de la logique de description classique.

La théorie des sous-ensembles floues proposée par Zadeh qui est utilisée pour le calcul du degré de certitude des concepts d’une opération de conjonction, disjonction ou négation.

Plus laTBox floue proposée dans DF-ALC, l’imprécision apparait aussi dans ABox avec un degré d’appartenance de l’individu au concept (Ex : CI(x)=a / a∈[0,1]), de telle sorte que les assertions dans ABox peuvent être représentéessous la forme suivante : Ca(x)b

• Le concept «C» devrait être satisfait dans TBox.

tel que :

• L’instance «x» appartient au concept «C» dans ABox.

4.3. Syntaxe et sémantique de DF-ALC

Nous allons maintenant entrer dans les détails de la définition formelle de la logique de description DF-ALC: sa syntaxe et sa sémantique. Pour faciliter la lecture,soit respectivementA,C et R l’ensemble de concept atomique, concept complexe et Rôle.

Table:Syntaxe et sémantique des constructeurs DF-ALC

Constructor Syntax Semantics Top T ∆I

Bottom ⊥ Φ Atomic concept A Aa I

a⊑ ∆I Atomicrole R R a I

a⊑ ∆I x∆I Conjunction C a∩D (C∩D)b I

[ Min(a,b)] Disjunction C a UD (CUD)c I

[Max(a,b)] Negation ¬C C a I

[1-a] Universalquantification ∀Ra.C Infmax1-

Rb

a,Cb existential quantification ∃Ra.C SupminRb a,Cb

Une interprétation floue est une paire I = (ΔI, .I), où ΔIappelé domaine, tandis que .Iune fonction d’interprétation qui associeun concept/rôleflou à un sous ensemble AI de ΔI avec un degré d’appartenance C : ΔI→[0,1] / R : ΔI x ΔI→[0,1] . La fonction d’interprétation dans DF-ALC doit satisfaire les équations suivantes pour tout d∈ ΔI

ТI(d) = 1 ; ⊥Ι

C

(d) = 0;

I

(C ∩ D)(d) = µ(C(d));

I

(C U D)(d) = min(µ(C(d), µ(D(d));

I(d) = max(µ(C(d), µ(D(d)); ¬CI(d) = 1- µ(C(d)); ∀R.C(d) = Infd’∈Δmax1-µ(R(d,d’),C(d’); ∃R.C(d) = Supd’∈Δminµ(R(d,d’),C(d’).

Une collection des logiques de description, ou k est un ensemble non vide des index pour chaque k∈K, uneTboxҐk est présenté dans une concrète LDk. Afin de distinguer des descriptions dans chaque TboxҐk, nous mettons dans l’en tête des descriptions l’indice de leurs TBox. Par exemple k : Ca dénote un concept C deLDkk∈Kavec un degré de certitude « a ». Les morphismes sémantiques entre TBox sont présentés en utilisant les règles des ponts.

5. Le raisonnement avec DF-ALC

Les systèmes de LD fournissent aux utilisateurs plusieurs capacités d’inférence. Le raisonnement permet d’inférer des connaissances implicites à partir des connaissances explicites stockées dans la base de connaissances. L’inférence élémentaire sur les expressions de concepts dans la LD est la subsomption entre deux concepts qui détermine les relations de sous-concept / super-concept. L’inférence élémentaire sur les individus est de déterminer si un individu donné est une instance d’un certain concept. La recherche du raisonnement dans la LD DF-ALC est un nouveau défi pour les grandes bases de connaissances floues. Dans cette partie de l’article on va essayer de présenter quelques techniques de raisonnement pour une BC floue décomposée.

Les algorithmes de tableaux réduisent le problème de subsomption au problème de satisfaisabilité. En fait, on sait que C⊑ D si et seulement si C∩¬D est non satisfaisabilité. L’algorithme de tableau flou traite chaque sous axiome (chaque sous ontologie) d’une façon séparée, il commence à chaque fois par une ABox A’=Ca(x)b pour vérifier l’insatisfaisabilité de concept Ca.

5.1. Raisonnement pour uneTBox local

La méthode de tableau proposée dans notre travail suit le même processus déjà utilisé dans les travaux précédents et qui permettre d'établir si une description incluant les aspects assertionnels et terminologiques peuvent admettre un modèle.

Le tableau initial est construit comme suit. Pour tout fait du niveau assertionnel Ca(x)b,on ajoute dans le tableau T=Ca(x)b.

Nous construisons un arbre de tableaux. La racine appelée tableau initial est réduite à la formule elle-même. On construit des successeurs pour un tableau T à l'aide des règles présentées ci-dessous :

Les feuilles de cet arbre sont :

178 © IT4OD 2014

Page 185: IT4OD 2014 Proceedings

• soit des tableaux contradictoires : ils contiennent une paire de formules p et ¬p.

• soit des tableaux complets : ils ne sont pas contradictoires et aucune règle ne leur est applicable.

Règles Conditions Résultat ⊓-rule -(C a∩Db)(x)c∈ T

-Ca(x)c, Cb(x)c

T’=T U C ∉T

a(x)c, Cb(x)c

⊔-rule -(CaUDb)(x)c∈ T -Ca(x)c, Ca(x)c

T’=T U C ∉T

a(x)c ou T’=T U Ca(x)b

∃-rule -(∃Rb.Ca)(x)c∈ T -Rb(x,z)c, Ca(z)c∉T / z∈Δ

T’=T⊔RI

b(x,y)c,Ca(y)c

∀-rule -(∀Rb.Ca)(x)c,Rb(x,y)c T’ = T ⊔C∈ T -Ca (y)c∉T

a(y)c

La construction d'un algorithme de tableau local s'arrête soit lorsqu'on rencontre un tableau complet dans ce cas la formule est satisfaisable, soit lorsque toutes les feuilles sont des nœuds contradictoiresalors la formule n'est pas satisfaisable. Il s'agit alors de spécifier ce qu'est un tableau contradictoire. Les cas possibles sont :

• Le tableau contient une formule ⊥(x) ; • Le tableau contient une paire de formules C(x)

et¬C(x). Nécessairement C est un concept primitif. • Un conflit flou comme C0

Soit T un tableau complet, M[T] le modèle construit, on a:

(x)=a ;

ΔM[T] Soit x un élément, x

est l'ensemble des éléments apparaissant dans T M[T]

Soit A un concept primitif, x∈A = x

M[T]

Soit r un rôle primitif, (x,y)∈rssi A(x)∈T.

M[T]

La terminaison de cette méthode n'est pas garantie si on ne met pas en oeuvre une stratégied'application des règles. Pour cela nous introduisons quelques notations. Appelons père d'une variable x, un élément ytel que a

ssi a(x,y)∈T.

i(y,x) pour ai rôle atomique. A la création, une variable n'a qu'un seul père et parexamen des règles on vérifie qu'elle ne peut acquérir un deuxième père. Par examen des règles, la taille de la plus grande formule de concept d'une variable esttoujours strictement plus petite que la taille de la plus grande formule de concept de son père.De même la taille de la plus grande formule de concept d'un individu est toujours inférieureou égale à la taille de la plus grande formule de concept du tableau initial.

Enfin on remarque que toute formule de concept qui apparaît est une sous-formule d'uneformule du tableau initial.

Donc notre stratégie pour une sous ontologie est comme suit:

1. Appliquer une règle à une variable uniquement si aucune règle n'est applicable à cesancêtres.

2. Pour un élément, appliquer prioritairement les règles locales (R⋀ou R⋁

3. Pour un élément, appliquer la règle génératrice (R∃) si les règles locales nesont pas applicables.

).

4. Pour un élément, appliquer la règle de propagation (R∀) si les règles locales,génératrice ne sont pas applicables.

Le point 1 garantit que lorsqu'on applique une règle à une variable, cette variable nedisparaîtra plus du tableau. En effet, par examen des règles, nous vérifions qu'aucune d’entre elles n’estplus jamais applicable aux individus et à leurs ancêtres. Par conséquent lors de l'évolution dutableau seules les variables qui sont feuilles d'un arbre et sur lesquelles nous n'avons appliquéaucune règle peuvent disparaître.

Nous nous intéressons donc uniquement aux éléments définitifs du tableau puisque les autres ne sontpas sujet à une application d'une règle.

5.2. Raisonnement distribué

Dans cette section, nous introduisons un algorithme de raisonnement basé sur l’idée principalede la procédure de raisonnement distribué de Luciano Serafini, Andrei Tamilinet Lepham[SER04a], [SER04b],[TLP07] qui prend un concept complexe C comme entrée et retourne le résultat de son essaide (in)satisfaisabilité. Nous dénotons une TBox-décomposante par T = [Ti,B]. Une TBox distribuée se compose d’une TBox source et des TBox cibles. Toutefois, ceci peut être déterminé quand on exécute le raisonnement, c.-à-d, si une requête est posée sur la TBox composante Ti alors Ti est assignéà la TBox source et les autres deviennent les TBox cibles.

L’idée principale est d’abord de trouver la TBox locale source compatible avec la requête, et d’essayer de construire un arbre complet en suivant les étapes de l’algorithme du tableau défini dans la section 5.1. Une fois arrivéà la fin d’exécution de ces étapes, en parcourant les nœuds générés et en cherchant les branches ouvertes de Ts,nous devons vérifierl’existence des règles de ponts identiques entre Tset les autres TBox cibles. Notons que les règles de pont prennent une seule direction.

Si une règle de pont complet est trouvée, nous devons affecter les éléments de la branche ouvertde Tsà desTBox cibles, et nous devons à nouveau appliquer l’algorithme du tableau local et ainsi de suite.

Ceci signifie que nous pouvons initialement traiter une requête posée sur certaine TBox. Si nous commençons sur T1 , alors T1 est vu comme la TBox source et T2, T3 ….Tn

1. Soit T

les TBox cibles. Donc pour pouvoir détecter rapidement les contradictions locales, nous devons initialement exécuter sur les TBox ci-dessus cités. Nous obtiendrons les deux cas suivantes :

1(x) ou T2(x) ou …ou T n(x) est insatisfaisable (c-à-d tous les nœuds de feuille de

179 © IT4OD 2014

Page 186: IT4OD 2014 Proceedings

T1(x) ou T2(x) ou …ou T n

2. Soit tous les T

(x) sont des contradictions) alors nous concluons que x est également insatisfaisable par rapport a T générale.

i sont satisfaisables (C-à-d il existe au moins une feuille non contradictoire dans une Ti), alors nous appliquons l’algorithme de tableau sur T2,T3, …, T n pour les nœuds ouverts de T1

Pour appliquer une règle de pont identique le degré de certitude dans l’axiome de TBox cible est plus grand que le degré de certitude de l’axiome de TBox source.

6 .Conclusion

L’intégration de la notion de flou dans la logique de description nécessite l’extraction de sous axiomes de l’axiome général afin d’avoir un degré de certitude exact de concept définià partir des autres concepts atomiques ; Cette extraction conduit à un accroissement de la taille de base de connaissances, ce qui conduità une augmentation du temps d’exécution et à un gaspillage de stockage lors du raisonnement, pour cela nous avons pensé à proposer une décomposition des axiomes afin de garantir une présentation sure et un raisonnement performant.

Notre proposition peut servir de support à l’amélioration d’un raisonneur qui supporte la logique de description ALC, ce raisonneur va traiter deux choses à la fois, le flou du concept et le rôle d’un côté et les inférences inter et intra TBox de l’autre. Ce raisonneur peut optimiser aussi le raisonnement de la logique de description ALC classique si nous savons que le degré de certitude devra être toujours 1.

Les perspectives de ce travail sont doubles : La première est de finaliser le développement d’un raisonneur qui supporte ce genre de logique de description, la seconde c’est d’essayer de projeter ce travail sur les autres DLs les plus efficaces dans l’expressivité.

7. Références

[BAA91] Baader, F. et P. Hanschke. A schema for integrating concrete domains into conceptlanguages. In Proc. of the 12th Int. (IJCAI’91),1991

[BAA99]Baader, F. et U. Sattler. Expressive number restrictions in description logics.Journalof Logic and Computation 9(3), 1999.

[BAA01]Baader, F. et U. Sattler. An overview of tableau algorithms for description logics.StudiaLogica 69(1), 2001.

[BAA05] Baader, F., I. Horrocks, et U. Sattler. Description logics as ontology languages for thesemantic web.In Mechanizing Mathematical Reasoning, 2005.

en utilisant les règles des ponts identiques.

[BAA07] Baader, F., D. Calvanese, D. L. McGuinness, D. Nardi, et P. F. Patel-Schneider. TheDescription Logic Handbook : Theory, Implementation, and Applications. 2007.

[BAA11] Baader, F., What’s new in description logics. Informatik-Spektrum34 (5), 2011.

[BOR03] Borgida., A. et Serafini. L. "Distributed description logics: Assimilating information from peer sources". Journal of Data Semantics, Vol. 1, 2003.

[BOB11] Bobillo, F., Straccia, U. Fuzzy ontologyrepresentation using OWL 2.International Journal of Approximate Reasoning 52, 2011.

[KRÖ12] Krötzsch, M. OWL 2 profiles: An introduction to lightweight ontologylanguages. In: Eiter, T.,Krennwallner, T. Vol. 7487 of Lecture Notes in ComputerScience. Springer, pp. 112–183. [NUT97] Nutt,W., F. M. Donini, M. Lenzerini, et D. Nardi. The complexity of concept languages. Inf. Comput. 1997.

[SER04a] L. Serafini and A. Tamilin. Drago : Distributed reasoning architecture for the semanticweb. Technical Report T04-12-05,ITC-irst, 2004.

[SER04b] L. Serafini and A. Tamilin. Local tableaux for reasoning in distributed descriptionlogics. In Description Logics Workshop 2004, CEUR-WS Vol 104, 2004.

[STO05] Stoilos G. [et al.] Fuzzy OWL: Uncertainty and the semantic web. In Proc.of the InternationalworkshoponOWL: (OWLED). - 2005.

[STO07]Stoilos G. [et al.] Reasoning with very expressive fuzzy description logics.Journal of Artificial Intelligence Research. - Vol. 30- 2007.

[STR04] Straccia U Transforming fuzzy description logics into classical description logics.In Procof the 9th European Conference on Logics in Artificial Intelligence (JELIA-04), 2004.

[STR06] Straccia U Answering vague queries in fuzzy DL-Lite.In Proc of the 11th (IPMU-06). - 2006.

[STR13] Straccia, U., Foundations of Fuzzy Logic and SemanticWebLanguages.CRC Studies in Informatics Series. Chapman & Hall 2013. [TIM98] Tim Berners-Lee. ”Web design issues ; What a semantic can represent”. www.w3.org, 1998

[TLP07] T. L. Pham and N. Le-Thanh. Some approaches of ontology decomposition indescription logics. In Proceedings of the 14th ISPE, July2007.

[ZED65] ZADEH, Fuzzy sets [Revue] // Information and Control.. - Vol. 8. 1965.

180 © IT4OD 2014

Page 187: IT4OD 2014 Proceedings

Common-Knowledge, Communication andCooperation Management

– Epistemic Approach to Cooperative Management –

Takashi MatsuhisaInstitute of Applied Mathematical Research

Karelia Research Centre, Russian Academy of Science11, Pushkinskaya str. Petrozavodsk, Karelia, 185910, Russia

E-mail: [email protected]

Abstract—Issues of moral hazard and adverse selectionabound in each and every contract where one has a self interestand information that the other party does not possess. Whilethis is a fertile research area, there is still need for moreinformation on how you handle a party to a contract withmore information than you. The moral hazard is very often thebottleneck, and the buyer-supplier cooperation is an epitome. Thispaper re-examines the issue in the framework of a principal-agentmodel under uncertainty. It highlights epistemic conditions for apossible resolution of the moral hazard between the buyer andthe suppliers. We show that the moral hazard disappeared inthe principal-agent model under uncertainty if the buyer andsuppliers commonly know each agent’s belief on the others’efforts, or if they communicate their beliefs on the others’ effortsto each other through messages.

Keywords—Common-Knowledge; Effort level; Moral hazard;Formal and real authority communication; Principal-agent modelunder uncertainty.

I. INTRODUCTION

Issues of moral hazard and adverse selection abound ineach and every contract where one has a self interest andinformation that the other party does not possess. While this isa fertile research area, there is still need for more informationon how you handle a party to a contract with more infor-mation than you. The Global Financial Crisis is an epitomeof the moral hazard: managers and employees as agents andshareholders as principals. In fact, still perplexes bankers andshareholders alike: shareholders are still having problems withhow they can handle their agents, while on the other handinsurers and bankers are struggling to structure products thatwill reduce the impact of moral hazard. Such moral hazards arethe bottlenecks in buyer supplier cooperation, and the buyer-supplier management is another epitome.

The first formal analysis of the principal-agent relationshipand the phenomena of moral hazard was made by Arrow [2].The many sided moral hazard can arise when there are manyagents that affect gross returns and their individual actionsare not observed by each other, and especially, the treatmentof the principal-agent model with many sided moral hazardwas given by Holmstrom [6]. He formalized it as the issuein a partnership model whether there exist any sharing rulesthat both balances the budget and under which an efficientaction is a Nash equilibrium. Holmstrom [6] and Williams and

Radner [12] respectively analyzed the conditions for existingthe sharing rule such that some actions profile satisfies thefirst-order conditions for an equilibrium.

Recently, Matsuhisa [8] and Matsuhisa and Jiang [9]adopted a new approach to the many sided moral hazard fromthe epistemic model point of view developed by Aumann [3]and his followers in game theory, they analyzed the moralhazard as the disagreement on expected marginal costs betweenthe principal and agents in an extended model of principaland agents under uncertainty. He gave a neccesary conditionthat the moral hazard will not be appeared; that is, undersome technical assumptions, the principal and agent modelunder uncertainty disappears the moral hazard if the principaland agents could share fully information about their expectedmarginal costs in the following two cases: first they commonlyknown the marginal expected costs (Matsuhisa [8]), and sec-ondly they communicate the costs as long run (Matsuhisa andJiang [9]). However, in the papers they assume the existenceof decision function consistent to the technical assumptions,and it has not been guaranteed.

This paper aims to remedy the defect. We re-examine abuyer-supplier cooperation with moral hazard as a problemof the principal-agent relationship. We present an extendedprincipal-agent model under uncertainty, and we highlighthidden conditions for a possible resolution of the moral hazardbetween the buyer and the suppliers. For removing out suchmoral hazard in the buyer-supplier cooperation, our recom-mendation is that the principal and the agents should sharefully information about only their conjectures on the others’effort levels but not about expected marginal costs by makingcommon-knowledge on the efforts or by communicating theirbeliefs on these.

Let us consider that there are the buyer (as principal) andsuppliers (as agents) more than two: The buyer manufacturesthe productions made of parts supplied by the suppliers withpaying their costs, and he/she gets a profit by selling theproductions. Assume that the buyer and all suppliers aim tomaximize each gross return independently. The moral hazardarises that there is not the sharing rule so that the buyer makesa contract with every supplier such that the total amount ofall profits is refunded to each supplier in proportion to thesupplier’s contribution to the productions, i.e.; the expectedcosts are not equal between the buyer and the suppliers.

181 © IT4OD 2014

Page 188: IT4OD 2014 Proceedings

To investigate the phenomenon in detail we shall extendthe principal-agent model with complete information to theprincipal-agent model with incomplete information.

Now we assume each agent as well as the principal, k, hasthe below two abilities on knowledge:

T each k cannot know something when it does notoccurs;

4 each k knows that he/she knows something.5 If k cannot know something then he/she has to

know that he/she does not know it.

This structure is induced from a reflexive, transitive and sym-metric binary relation associated with the multi-modal logicS5.

We focus on the situation that the principal and the agentsinteract each other from sharing information on the below:

PR The refunded proportional rates to suppliers arefunctions of each supplier’s effort level;

CK Both the buyer and suppliers commonly knowneach agent’s belief on the others’ efforts;

CM The buyer and suppliers communicate each otherabout their beliefs on expected efforts of the othersas messages through the communication graph.

In this line we can show:

Theorem 1. Under the above conditions PR, if either CKor CM is true then all effort levels such that the expectedmarginal costs actually coincide for buyer and suppliers canbe characterised as the critical points of the refunded propor-tional rate function. Consequently, if the refunded proportionalrate is constant then all marginal costs have to coincide eachother; i.e., there is no moral hazard.

The paper is organized as follows: Section II reviews themoral hazard in the classical principal-agent model (i.e.: theprincipal-agent model with complete information) followingMatsuhisa [8]. Section III recalls the formal model of knowl-edge and common-knowledge, and presents the principal-agentmodel under uncertainty,. We give an illustrative exampleof our contract design problem in the principal-agent modelunder uncertainty. Section IV states Theorem 1 for CK withthe proof. Section treats the contract design problem withoutcommon-knowledge assumption. We present a communicationmodel, and give Theorem 1 for CM with proof. Finally weconclude remarks.

II. MORAL HAZARD

This section recalls a marl hazard in the the principal-agents model following Matsuhisa [8] (Section 2). Let usconsider the principal P and n agents 1, 2, · · · , k, · · · , n(n ≥ 1) in a firm. The principal makes a profit by selling theproductions made by the agents. He/she makes a contract witheach agent k that the total amount of all profits is refundedeach agent k in proportion to the agent’s contribution to thefirm.

Let ek denote the measuring managerial effort for k’sproductive activities, called k’s effort level or simply k’s effortwith ek ∈ R+. Let Ik(xk) be a real valued continuously

differentiable function on R+. Ik(xk) is interpreted as theprofit by k’s effort ek selling the productions made by the agentk with the cost c(ek). Here we assume I ′k(xk) ≥ 0 and thecost function c(·) is a real valued continuously differentiablefunction on R+. Let IP be the total amount of all profits:IP (x) = IP (x1, x2, · · · , xk, · · · , xn) =

∑nk=1 Ik(xk).

The principal P cannot observe these efforts ek, andshall view it as a random variable ek on a proba-bility space (Ω, µ); i.e., ek is a µ-measurable functionfrom Ω to R+. We introduce the ex-post expectation:Exp[IP (e)] :=

∑ξ∈Ω IP (e(ξ))µ(ξ) and Exp[Ik(ek)] :=∑

ξ∈Ω Ik(ek(ξ))µ(ξ). The optimal plan for the principal thensolves the following problem:

Maxe=(e1,e2,··· ,ek,··· ,en)Exp[IP (e)] −n∑

k=1

Exp[c(ek)].

Let Wk(ek) be the total amount of the refund to agent k:Wk(ek) = rkIP (e), with

∑nk=1 rk = 1, 0 ≤ rk ≤ 1, where

rk denotes the proportional rate representing k’s contributionto the firm. The optimal plan for each agent also solves theproblem: For every k = 1, 2, · · · , n,

MaxekExp[Wk(ek)] − Exp[c(ek)] subject to

n∑k=1

rk = 1, 0 ≤ rk ≤ 1.

We assume that rk is independent of ek, and the neccesaryconditions for critical points are as follows: For each agentk = 1, 2, · · · , n, we obtain ∂

∂ekExp[Ik(ek)] − Exp[c′(ek)] =

0 and rk∂

∂ekExp[Ik(ek)]−Exp[c′(ek)] = 0. in contradiction

to 0 rk 1 because c′(ek) = ∂∂ek

Exp[Ik(ek)] =rk

∂∂ek

Exp[Ik(ek)]

This contradictory situation is called a moral hazard inthe principal-agents model; i.e., there is no equilibrium effortlevel as a solution of the contract design problem.

III. THE MODEL

Let N be a set of finitely many agents and let k de-note an agent and P the principal. The specification is thatN = P, 1, 2, · · · , k, · · · , n consists of the principal P andthe agents N = 1, 2, · · · , k, · · · , n in a firm. A state-spaceΩ is a non-empty finite set, whose members are called states.An event is a subset of the state-space. We denote by 2Ω thefield of all subsets of it. An event E is said to occur in a stateω if ω ∈ E.

A. Information and Knowledge.

By partitional information structure, we mean〈Ω, (Πi)i∈N 〉 in which Πi : Ω → 2Ω satisfies the twopostulates: For each i ∈ N and for any ω ∈ Ω,

Ref ω ∈ Πi(ω);Trn ξ ∈ Πi(ω) implies Πi(ξ) ⊆ Πi(ω).Sym If ξ ∈ Πi(ω) then ω ∈ Πi(ξ).

The set Πi(ω) will be interpreted as the set of all the statesof nature that i knows to be possible at ω, or as the set of

182 © IT4OD 2014

Page 189: IT4OD 2014 Proceedings

the states that i cannot distinguish from ω. We call Πi(ω) i’sinformation set at ω.

Definition 1. The S5n-knowledge structure is a tuple〈Ω, (Πi)i∈N , (Ki)i∈N 〉 that consists of a partition informationstructure 〈Ω, (Πi)i∈N 〉 and a class of i’s knowledge operatorKi : 2Ω → 2Ω defined by KiE = ω | Πi(ω) ⊆ E .

The event KiE will be interpreted as the set of states ofnature for which i knows E to be possible. We record theproperties: For every E, F of 2Ω,

N KiΩ = Ω; K Ki(E∩F ) = KiE∩KiF ;T KiE ⊆ E; 4 KiE ⊆ Ki(KiE);5 Ω \ KiE ⊆ Ki(Ω \ KiE).

B. Common-Knowledge.

Let S be a subset in N . The mutual knowledge operatoramong a coalition S is the operator KS : 2Ω → 2Ω definedby the intersection of all individual knowledge: KSF =∩i∈SKiF, which interpretation is that everyone knows E.

Definition 2. The common-knowledge operator among acoalition S is the operator KS

C : 2Ω → 2Ω defined byKS

CF = ∩n∈N(KS)nF.

An event E is common-knowledge among S at ω ∈ Ω ifω ∈ KS

CE. The intended interpretations are as follows: KSCE

is the event that ‘every agent in S knows E’ and “every agentin S knows that ‘every agent in S knows E’,” and “‘everyagent in S knows that “everyone knows that ‘every agent inS knows E’,” ”’, and so on so on.

C. Principal-Agent Model under Uncertainty.

Let us reconsider the principal-agent model and let nota-tions and assumptions be the same as in the above section. Weshall introduce the extended principal-agents model.

Definition 3. By a principal-agent model under uncertaintywe mean s structure

M = 〈N , (Ω, µ), (ek)k∈N , (Ik)k∈N , IP , (rk)k∈N , (ck)k∈N ,

(Πk)k∈N 〉

in which

1) N = P, 1, 2, · · · , k, · · · , n where P is the principaland each k is an agent,(Ω, µ) is a probability space;

2) ek is a random variable on Ω into R+ with ek(ω) areal variable in R+;

3) Ik(xk) is an agent k’s profit function with Ik(ek)the profit by his/her effort ek, which is sufficientlymany differentiable on R+ with I ′k = 0, and IP (x) =IP (x1, x2, · · · , xn) =

∑nk=1 Ik(xk) is the profit

function of the firm (the total amount of all theagents’ profits);

4) rk is a proportional rate function in the contract,which is sufficiently many differentiable and weaklyincreasing on R+ with 0 < rk 5 1 for k =1, 2, · · · , n;

5) ck is the cost function for agent k, which is suffi-ciently many differentiable on R+ with I ′k = 0 withck(ek) interpreted as the cost of k for effort level ek;

6) (Πk)k∈N is a non-partition information structure sat-isfying the three postulates Ref. Trn and Sym.

For each ek ∈ R+ and e = (e1, e2, · · · , ek, · · · , en) ∈Rn

+ let us denote by [ek] the event of k’s effort [ek] = ξ ∈Ω| ek(ξ) = ek and by [e] the event of total efforts [e] =∩k∈N [ek]. For any non-empty subset S of N , we will denote[eS ] = ∩k∈S [ek], and [e−k] = ∩l∈N\k[el]

D. Bayesian approach.

According to this we have to assume that each agent kknow his/her own effort ek but k cannot know the others’effort ek, and also the principal P cannot know efforts for anyagents. The former assumption can be formulated as

KE [ek] j Kk([ek]) for every ek ∈ R+.

The later assumption means that the principal cannot have theexact knowledge on the agents’ effort levels e and also eachagent cannot have the exact knowledge on the others’s efforte−k ∈ Rn−1

+ .

E. Belief and Conjecture.

Following the interpretations we have to introduce thenotion of belief on the others’ effort level: By the principalP ’s belief on the agents efforts e we mean a probabilityqP (e) of e, and by an agent k’s belief on the other agentseffort e−k we mean a probability qk(e−k) of e−k. Theconjecture qP (e;ω) of the principal P for the agents’ effortek ∈ R (k ∈ N) is defined by qP (e;ω) = µ([e]|ΠP (ω)),and the conjecture qk(e−k; ω) of agent k for the other agents’effort e−k ∈∈ Rn−1

+ is qk(e−k; ω) = µ([e−k]|Πk(ω)). Bythe event of P ’s belief on the agents efforts e, we mean[qP (e)] := ξ ∈ Ω | qP (e;ω) = qP (e) , and by theevent of k’s belief on the other agents efforts e−k we mean[qk(e−k)] := ξ ∈ Ω | qk(e−k; ω) = qk(e−k)

It should be noted by KE that qk(e−k; ω) = qk(e;ω) andso [qk(e−k; ω)] = [qk(e; ω)].

F. Interim expectation.

By the interim expectation (or simply expectation ) of IP

we mean

Exp[IP (e)|ΠP ](ω)

:=∑ξ∈[e]

IP (e1(ξ), e2(ξ), · · · , en(ξ))µ(ξ|ΠP (ω))

= IP (e)qP (e;ω)

and by the interim expectation (or simply expectation ) of Ik

we mean

Exp[Ik(ek)|Πk](ω) := Ik(ek)qk(e−k; ω)

=∑

ξ∈[e−k]

Ik(ek(ξ))µ(ξ|Πk(ω))

and the interim expectation of agent k’s income Wk is

Exp[Wk(ek)|Πk](ω) := rk(ek)Exp[IP (ek, e−k)|Πk(ω)]

=∑

e−k∈Ek

rk(ek)IP (ek, e−k)qk(e−k; ω)

183 © IT4OD 2014

Page 190: IT4OD 2014 Proceedings

G. Contract design problem.

We will treat the maximisation problems as for the optimalplans for the principal and agents: To find out effort levelse = (e1, e2, · · · , ek, · · · , en) ∈ Rn

+ such that, subject to∑nk=1 rk = 1, 0 < rk ≤ 1,

PE Maxe=(ek)k=1,2,··· ,nExp[IP (e)|ΠP (ω)]

−∑n

k=1 Exp[ck(ek)];

AE MaxekExp[Wk(ek)|Πk(ω)] − Exp[ck(ek)].

Example 1. Let us consider the principal-agent model underuncertainty as follows;

• N = P, 1, 2:

• Ω = ω1, ω2, ω3, ω4, with each state is interpreted asthe two types of effort levels H, L for agent 1 andeffort levels h, l for agent 2 given by the table 1:

• µ is the equal probability measure on 2Ω; i.e., µ(ω) =14 :

• The information partition (Πi)i=P,1,2 are: The partition ΠP on Ω: ΠP (ω) = Ω. The partition Π1 on Ω:

Π1(ω) = ω1, ω2 for ω = ω1, ω2,

Π1(ω) = ω3, ω4 for ω = ω3, ω4.

The partition Π2 on Ω:

Π2(ω) = ω1, ω3 for ω = ω1, ω3,

Π2(ω) = ω2, ω4 for ω = ω2, ω4.

• ei : Ω → R+ with ei(ω) a real variable is defined by

e1(ω) = xh for ω = ωi(i = 1, 2),e1(ω) = xl for ω = ωi(i = 3, 4)

with xh = xl,

e2(ω) = yh for ω = ωi(i = 1, 3),e2(ω) = yl for ω = ωi(i = 2, 4)

with yh = yl,

and so [e1(ω)] = Π1(ω), [e2(ω)] = Π2(ω). Thismeans that agent 1’s effort at ω1, ω2 is higher thatthe effort at ω3, ω4, and agent 2’s effort at ω1, ω3 ishigher that the effort at ω2, ω4;

• I1(x) and I2(y) are profit functions and IP (x, y) =I1(x1) + I2(x2) is the total amount of the profits;

Under the situation we obtain that

E[W1|Π1](ω) = r1(xh)IP (xh, yj) (ω = ω1, ω2, j = h, l),E[W1|Π1](ω) = r1(xl)IP (xl, yj) (ω = ω3, ω4, j = h, l),E[W2|Π2](ω) = r2(yh)IP (xi, yh) (ω = ω1, ω3, i = h, l),E[W2|Π2](ω) = r2(yl)IP (xi, yl) (ω = ω2, ω4, i = h, l)

E[IP|ΠP](ω) =14

∑i,j=h,l

(I1(xi) + I2(yj)).

h lH ω1 ω2L ω3 ω4

e∗ yh ytxh ω1 ω2xl ω3 ω4

TABLE I. TYPES OF STATES AND VARIABLES

Then we can observe that there are no moral hazard if r1(e) =r2(e) ≡ 1

2 , hence any effort level can be a solution of the abovecontract problem PE and AE.

IV. MAIN THEOREM

For the beliefs qP , qk of the principal P and agent k, werefer the conditions:

BCK ∩k∈N [qk] ∩ KNC ([qP ]) 6= ∅

The interpretations of BCK is that all the agents commonlyknow the principal’s belief qP at some state where all agentsactually have their beliefs (qk)k∈N . Under the circumstanceswe can now restate Theorem 1 as follows:

Theorem 2. In the principal-agent model under uncertaintywith KE, assume that the principal P and each agent khave actually beliefs qP , qk. If all agents commonly know theprincipal’s belief qP then each solution ek(k ∈ N) of the thecontract design problem PE, AE must be a critical point of rk

for every k ∈ N ; i.e.; if BCK is true then r′k(ek) = 0. In thiscase the proportional rate rk is determined by the principalbelief: rk(ek) = qP (ek).

Before proceeding with the proof, we notice that Theo-rem 2 can explain the resolution of moral hazard of Example 1:In fact, since K

1,2C ([qP(e(ω); ω)]) = Ω, we can see that

[qP(e(ω);ω)] is common-knowledge everywhere among agents1, 2, and further, r1 and r2 are the constant with r1(e1(ω)) =qP(e1(ω);ω) = 1

2 , r2(e2(ω)) = qP(e2(ω);ω) = 12 . Hence the

resolution of moral hazard in Example 1 can be described byTheorem 2.

We shall turn to the proof of Theorem 2:

Critical points condition.

Partially differentiating the expressions in the parenthesesof the problems PE and AE with respect to xk yields theneccesary condition for critical points for every k ∈ N : FromPE we have,

Exp[I ′k(ek)|ΠP (ω)] = I ′k(ek)qP (e;ω) = Exp[c′k(ek)];

and from AE the condition is also that, subject to 0 < rk <1 and

∑k∈N rk = 1,

r′k(ek)Exp[Ik(ek)|Πk(ω)] + rk(ek)Exp[I ′k(ek)|Πk(ω)]= Exp[c′k(ek)] (1)

The below plays another central role to prove Theorem 2:

Proposition 1 (Decomposition theorem). Suppose that theprincipal P and each agent k have beliefs qP , qk with BCKin the principal-agent model under uncertainty with KE. Thenwe obtain that for every k ∈ N , qP (e) = qk(e−k)qP (ek) forany e = (e1, e2, · · · , ek, · · · , en) ∈ Rn

+.

Proof: Let M denote M = KNC ([qC ]), which is non-

empty by BCK, and so take ω ∈ M . For each k ∈ N andfor each e = (e1, e2, · · · , ek, · · · , en) ∈ Rn

+, we set Hk =[ek]∩M , and we can easily observe that both M or Hk satisfythe below properties:

184 © IT4OD 2014

Page 191: IT4OD 2014 Proceedings

(1) ω ∈ L ⊆ [qP (e;ω)] ⊆ [qk(e−k; ω)] for L =M and Hk;

(2) M is decomposed into the disjoint unions ofcomponents ΠP (ω) for ω ∈ M ;

(3) L is done into the disjoint unions of componentsΠk(ω) for ω ∈ L = M and Hk.

Therefore, on considering X = [e−k] it follows by (3) for L =Hk that µ([e−k]|Hk) = µ([e−k] | Πk(ω)) and µ([e−k]|Hk) =qk(e−k; ω). Dividing by µ(M) yields that

µ([e]|M) = qk(e−k;ω)µ([ek]|M) (2)

On considering X = [e] it follows by (2) for L = M thatµ([e]|M) = µ([e] | ΠP (ω)). Hence we can observe

µ([e]|M) = qP (e;ω). (3)

and thus

µ([ek]|M) = qP (ek; ω). (4)

It follows by Eqs. (2), (3) and (4) that qP (e;ω) =qk(e−k; ω)qP (ek; ω). Noting ω ∈ [qC(e)]∩[qk(e−k)], we haveshown that qP (e) = qk(e−k)qP (ek).

Proof of Theorem 2: Notations and assumptions are thesame in Proposition 1. On viewing Eqs.(1) and (1), it can beeasily observed that the former part of Theorem 2 follows fromProposition 1. Especially, if rk is a constant function, thenr′k = 0, and so the latter part also follows immediately.

In viewing the below example, we can see that Theorem 2cannot hold without BCK.

Example 2. Let us consider the principal-agent model underuncertainty M given by the same as in Example 1 onlyreplacing ΠP with ΠP (ω) = ω for ω ∈ Ω. It can be plainlyobserved that

E[IP|ΠP](ω) =

I1(xh) + I2(yh) for ω = ω1;I1(xh) + I2(yl) for ω = ω2;I1(xl) + I2(yh) for ω = ω3;I1(xl) + I2(yl) for ω = ω4;

[qP (e;ω)] = ω.

On noting that E[W1|Π1](ω) and E[W2|Π2](ω) are given inExample 1, it can be seen that K

1,2C ([qP (e; ω)]) = ∅ and

r1 = r2 = 1, in contradiction. Therefore there is no solutionof the contract design problem AE, PE when BCK does nothold.

V. COMMUNICATION.

We consider the situation that each agent will bargainindependently with his/her conjecture about the others’ effortsto the principal: The agent 1 communicates his/her conjec-ture q0

1(e−1, ; ω) on the others’ effort to the principal Pas message, and the recipient P refines her/his informationpartition Π1

P according to the message. She/he gets her/hisrevised conjecture q1

P (e, ;ω), and sends it to theagent 2. Theagent 2 refines his/her information partition Π2

2 according tothe message. He/she gets the revised conjecture q2

2(e−2, ; ω),and sends it back to the principal P . The recipient P refinesher/his information partition Π3

P according to the message, and

se/he gets the revised conjecture q3P (e, ; ω) and so on. The

principal refines his/her information partition ΠnP according to

the message from agent n−1. She/he revises his conjecture asqn

P (e, ; ω), and sends it to the agent n. The recipient n refinesher/his information partition Πn+1

n according to the message,and he/she gets the revised conjecture qn+1

n (e, ; ω) and so on.This protocol is illustrated as

Pr : 1 → P → 2 → P → 3 → P → 4 → P → · · ·→ n − 1 → P → n → P → 1 → P → 2 → · · ·

Under the circumstances we shall consider the maximisa-tion problems as for the optimal plans for the principal andagents: Find out effort levels e = (e1, e2, · · · , ek, · · · , en) ∈Rn

+ satisfying

PE∞ Maxe=(ek)k=1,2,··· ,nExp[IP (e)|Π∞

P (ω)]−

∑nk=1 Exp[ck(ek)];

AE∞ MaxekExp[Wk(ek)|Π∞

k (ω)] − Exp[ck(ek)]subject to

∑nk=1 rk = 1, 0 < rk ≤ 1.

Revision process through communication

We assume that the principal and agents communicateby sending messages. Let T be the time horizontal line0, 1, 2, · · · t, · · · . A protocol is a mapping Pr : T →N × N , t 7→ (s(t), r(t)) such that s(t) 6= r(t). Here t standsfor time and s(t) and r(t) are, respectively, the sender and therecipient of the communication which takes place at time t.We consider the protocol as the directed graph whose verticesare the set of all members in N and such that there is an edge(or an arc) from i to j if and only if there are infinitely manyt such that s(t) = i and r(t) = j.

A protocol Pr is said to be fair if the graph is strongly-connected; in words, every player in this protocol communi-cates directly or indirectly with every other player infinitely of-ten. It is said to contain a cycle if there are players i1, i2, . . . , ikwith k ≥ 3 such that for all m < k, im communicates directlywith im+1, and such that ik communicates directly with i1.The communications is assumed to proceed in rounds

By a revision process function we mean a correspondenceR assigning to each pair of partitions (P1,P2) of Ω a partitionR(P1,P2) of Ω.

Definition 4. A communication process π(M) with revisionsof the principal and agents’ conjectures (qt

i)(i,t)∈N×T accord-ing to a revision process function R is a tuple

π(M) = 〈M, Pr,R, (Πti), (q

ti)(i,t)∈N×T 〉

with the following structures:

1) M = 〈N , (Ik)k∈N , (ek)k∈N , (rk)k∈N , Ω, µ, (Πk)k∈N ,(ck)k∈N 〉 is a principal-agent model underuncertainty with a common prior µ on a state-space Ω,

2) Pr is a protocol among N , Pr(t) = (s(t), r(t)), isfair and it satisfies the conditions that r(t) = s(t+1)for every t and that the communications proceed inrounds;

3) R is a revision process function;4) Πt

i is the revised information structure at time tdefined as the mapping of Ω into 2Ω for i ∈ S.

185 © IT4OD 2014

Page 192: IT4OD 2014 Proceedings

If i = s(t) is a sender at t, the message sentby i to j = r(t) is M t

i . An n-tuple (qti)i∈N is

a revision process of individual conjectures for theothers’ effort. These structures are inductively definedas follows:

• Set Π0i (ω) = Πi(ω).

• Assume that Πti is defined. It yields the

distribution qti(e, ω) = µ([e = e]|Πt

i(ω)).Whence the message M t

i : Ω → 2Ω sent bythe sender i at time t is defined by M t

i (ω) =∩e−i∈E−i

ξ ∈ Ω |qti(e−i, ξ) = qt

i(e−i, ω)| .

Then:• The revised partition Πt+1

i at time t + 1 isdefined by Πt+1

i = R(Πti, M

ts(t)); and it

yields the revised conjecture: qt+1i (e; ω) :=

µ([e]|Πt+1i (ω)),

• i sends the information on the revised con-jecture M t+1

i (ω) to the recipient r(t + 1)according the protocol Pr.

The specification is that a sender s(t) at time t informsthe recipient r(t) his/her prediction about the others’ efforts.The recipient revises her/his information structure under theinformation received through message. She/he predicts theothers’ effort, and she/he informs her/his the predictions tothe other r(t + 1).

Convergence: Because Ω is finite there exists a sufficientlarge τ ∈ T a sufficient large τ ∈ T such that for all ω ∈ Ω,qτ

i (· ;ω) = qτ+1i (· ; ω) = qτ+2

i (· ; ω) = · · · , and we denoteτ ∈ T by ∞. Hence we can write qτ

i by q∞i .

VI. AUTHORITY

We shall focus on the two types of communications: Oneis the case that the principal has a formal authority, and theother is that she has a real authority.

In the case of P-formal authority, the principal has theformal authority called the “superior”, and she may overrulethe agent. But she never do indeed if she is informed andif the agent’s recommendation is not congruent. She alwaysaccept the agent’s recommendation and rubber stomps thisproposals, and the agent cannot be overrule by the principal.Then we actually say the agents have real authority. Thiscovers a constitutional monarchy, in which the principal is thequeen/king and the agent is the cabinet.

In the case of P-real authority, the principal has a realauthority. When she will is informed and if the agent’s recom-mendation is not congruent then she can refer the recommen-dation back to the agent for congruent with her prefer or hermaking decision. This covers an absolute monarchy.

Definition 5. By P-formal authority communication we meana communication process π(M) in Definition 4 satisfying:

1) the communication starts by sending message froman agent not from the principal; i.e., s(0) 6= P ;

2) the revision process function is given by

R(Pi,Pj) =Pi ∧ Pj if(i, j) = (s(t), P) for t ∈ T ;Pi ∨ Pj if not

where Pi ∧Pj is meant the finest common coarsening of twopartitions Pi and Pj , and Pi ∨Pj is the refinement of the twopartitions Pi and Pj .

Definition 6. By P-real authority communication we mean acommunication process π(M) in Definition 4 given by therevision process function

R(Pi,Pj) = Pi ∧ Pj for (i, j) = (s(t), r(t)) for t ∈ T.

Example 3. Let us consider the communication processπ(M) according the protocol Pr as below:

1) The principal-agent model under uncertainty M isthe same as in Example 2;

2) Pr : 1 → P → 2 → P → 1 → P → 2 → P → · · ·

Then we can observe:

P-formal authority communication: If the principal has theformal authority, the information structure is given as Π∞

P =Ω, Π∞

1 = Π1, Π∞2 = Π2, and in this case it can be shown

that there is no moral hazard.

P-real authority communication: On the other hand, if theprincipal has the real authority, the information structure isgiven as Π∞

P (ω) = Π∞1 (ω) = Π∞

2 (ω) = ω, and it is easilyobserved that that the moral hazard is still remained.

Remark 1. When the communication would be started bythe principal like as the below Pr, there also remain a moralhazard:

Pr : P → 1 → P → 2 → P → 1 → P → 2 → P → · · ·

VII. RESOLUTION BY COMMUNICATION

This section investigates the moral hazard problem in thecommunication model. Let notations and assumptions be thesame in Section V.

For a solution of the contract design problem PE∞, AE∞,we restate the rest of Theorem 1:

Theorem 3. In the principal-agent model under uncertaintywith KE, assume that the principal P and each agent kcommunicate according to the communication process π(M),and so they have conjectures q∞P , q∞k . Then for the the contractdesign problem PE∞, AE∞ we obtain that

(i) In the case of P-formal authority communication,every solution ek(k ∈ N) of the the contract designproblem PE∞, AE∞ must be a critical point of rk

for every k ∈ N ; i.e.: r′k(ek) = 0 after long run com-munication. Furthermore, the proportional rate rk isdetermined by the principal belief: rk(ek) = q∞P (ek).

(ii) In the case of P-real authority communication, thereis not solutions of the the contract design problemPE∞, AE∞ in general, and thus a moral hazard stillremains after long run communication.

Proof: (i) By the definition of P-formal authority it canbe plainly observed that Π∞

1 (ω) ∧ Π∞2 (ω) j [q∞

P (ω)], andit is verified that ∩k∈N [q∞k ] ∩ KN

C ([q∞P ]) 6= ∅. The part (i)follows immediately from Theorem 2. (ii) Example 3 gives acounter-example.

186 © IT4OD 2014

Page 193: IT4OD 2014 Proceedings

Remark 2. The above assertion (i) is true when the protocolis acyclic1 in the P-formal authority communication.

VIII. CONCLUDING REMARKS

A. Conclusion

This paper advocates a new approach to treat a moralhazard problem in principal-agent model focused on the beliefsof effort levels from the epistemic point of view. To highlightthe structure of sharing private information about their conjec-tures on effort levels by common-knowledge between principaland agents is capable of helping us to make progress in‘problematic’ of classical principal-agent models. In particular,common-knowledge on the conjectures play crucial role inremoving out the moral hazard in the classical principal-agentmodel. The moral hazard cannot be always disappeared at themaximal effort level of the refund function if the common-knowledge on the expectation of the others’ effort level holdsor if a adequate communication of the conjectures on theeffort levels among the principal and the agents ( e.g. P-formalauthority communication) can be achieved.

B. Discussion

We remark on our result and the assumptions of theprincipal-agent model under uncertainty.

Common-Knowledge : In viewing that the notion ofcommon-knowledge defined as infinite regress of mutualknowledge, the assumption seems to be very strong, and so wewould like to remove out it in our investigation. However, inthis paper the common-knowledge assumption plays a centralrole for solving our contract design problem. In fact, even inthe P-formal authority communication given in the resolutionof moral hazard technically depends on common-knowledgecase (Theorem 3.) Further this assumption is crucial in viewingExample 3. On these account we have to take a new approachto tackle our contract design problem for essentially removingout the common-knowledge in it.

Information Partition: We require each of the principaland agents has the information structure given by partitionof the state space. The structure is a class of informationfunction satisfying Ref, Trn and Sym or equivalently a class ofknowledge operators having the postulates K, 4 and 5. Amongothers the postulate Sym ( equivalently 5 ) is considered asa ‘problematic’ assumption ( Bacharach [4].) Especially, 5 iscalled Axiom of Wisdom, which is interpreted as that “i knowswhat he/she does not know.” Can we remove out some of thepostulates in our framework? In fact, Theorems 2 and 3 canbe verified without 5, but not the others. The detail will bereported elsewhere in near future.

Communication: We have shown Theorem 3 only for thecase of the particular protocol of P-authority communication.It will be plainly shown that the theorem is still be true forany acyclic protocol, and further it will be valid for any cyclicprotocol too. For communication in a principal-agent modeluncertainty it is not clear the relationship between a resolutionof moral hazard and the topology of the communication graph,and it remains to be discussed further. The notion of formal

1i.e.; it does not contain any cycles.

and real authority communication presented in this paper isinspired by Aghion and Tirole [1]. I hope the communicationmodel would be a useful tool in Political Economy.

Infinite state-space: This paper treats only the case of afinite state-space. How can we extend Theorems 2 and 3 inan infinite state-space? We can easily see that Theorem 2 isvalid in this case without any changes, but Theorem 3 is not.To make Theorem 3 be valid we have to impose additionalassumptions for convergence of the communication process.This issue also admits of further discussion.

Applications: We have not also analyzed any other appli-cations of the above presented model than the moral hazard.Can we treat the Global Financial Crisis by our framework?How about the extended agreement issues on TPP (Trans-Pacific Strategic Economic Partnership)? These are of coursean interesting and important challenge. Actually much morestill remains to be investigated further.

C. Appraisal

Finally it well ends in appraisal. Our results recommendthat for removing out the moral hazard in the buyer-suppliercooperation management, they (the buyer and suppliers) shouldshare fully information on only their conjectures on the oth-ers’ effort levels but not expected marginal costs by makingcommon-knowledge on the efforts or by communicating theirbeliefs on the efforts. This claim is not so fresh to us: Incooperative organization system, any concerned agents will,tacitly or consciously, share their information. We well knowthis is the first step towards to succeed our cooperation. Thepoint in this paper is to make it clear what kind of informationwe have to share: It is the information on the belief of on theothers’ effort levels but not our expected marginal costs.

REFERENCES

[1] Aghion, P. and Tirole, J. 1997. ‘Formal and Real Authority in Organi-zation,’ Journal of Political Economy Vol. 105(1) pp.1-29.

[2] Arrow, K.J. 1963. ‘Uncertanty and welfare economics of medical care’,American Economic Review Vol. 53, pp.941–973.

[3] Aumann, R. J. 1976. ‘Agreeing to disagree’, Annals of Statistics Vol.4, pp.1236–1239.

[4] Bacharach, M. 1985. ‘Some extensions of a claim of Aumann in anaxiomatic model of knowledge,’ Journal of Economic Theory Vol. 37pp.167–190.

[5] Binmore, K.: Fun and Games. D. C. Heath and Company, Lexington,Massachusetts (1992).

[6] Holmstrom, B. 1982. ‘Moral Hazard in Teams’, Bell Journal of Eco-nomics Vol.13, pp.324–340.

[7] Krasucki, P., (1993) ‘Protocol forcing consensus’, Journal of EconomicTheory Vol. 70, pp.266–272.

[8] Matsuhisa, T. 2012. ‘Moral hazard resolved by common-knowledge inprincipal-agent model’. International Journal of Intelligent Informationand Database Systems, Vol. 6, No. 3, pp.220-229.

[9] Matsuhisa, T. and Jiang, D.-Y. 2011. ‘Moral hazard resolved in commu-nication Network’. World Journal of Social Sciences Vol. 1 (3), pp.100-115.

[10] Parikh, R. and Krasucki, P. 1990 ‘Communication, consensus, andknowledge’, Journal of Economic Theory Vol. 52, pp. 178–189.

[11] Radner, R. 1986. ‘Repeated partnership games with imperfect monitor-ing and discounting,’ Review of Economic Studies Vol. 53, pp. 43-57.

[12] Williams, S. and Radner, R. 1989. ‘Efficiency in partnershipswhen the joint output is uncertain’, Discussion Paper No.76,Kellog School of Management, Northwestern University(http://kellogg.northwestern.edu/research/math/papers/760.pdf)

187 © IT4OD 2014

Page 194: IT4OD 2014 Proceedings

Topic 6: Artificial Intelligence and Multimedia

188 © IT4OD 2014

Page 195: IT4OD 2014 Proceedings

Application des Curvelets et Régression SVM pour la Compression d’Images

1Zikiou Nadia Laboratoire d’Analyse et de Modélisation des

Phénomènes Aléatoires (LAMPA), Département d’Electronique, Université Mouloud Mammeri

(UMMTO) Tizi Ouzou, Algérie [email protected]

2Lahdir Mourad Laboratoire d’Analyse et de Modélisation des

Phénomènes Aléatoires (LAMPA), Département d’Electronique, Université Mouloud Mammeri

(UMMTO) Tizi-Ouzou, Algérie [email protected]

3

[email protected]

Ameur Soltane Laboratoire d’Analyse et de Modélisation des

Phénomènes Aléatoires (LAMPA), Département d’Electronique, Université Mouloud Mammeri

(UMMTO) Tizi-Ouzou, Algérie

Résumé—Dans cet article, nous proposons un nouveau algorithme de compression d’images en utilisant la transformée en Curvelets Rapides Seconde Génération et la Régression SVM (Machine à Vecteur de Support). SVM est une méthode d’apprentissage développée sur la base de la Théorie de l’Apprentissage Statistique. Nous avons choisi d’utiliser le modèle ‘epsilon-SVR’ pour la régression SVM. La transformée en Curvelets permet de capturer les structures spatio-temporelles à une échelle et orientation données. Notre algorithme consiste à appliquer un apprentissage SVR sur des coefficients issues de la transformée en Curvelets de l’image à compresser. Les poids des vecteurs de support (SVs) sont ensuite quantifiés et codés en utilisant les codages par plages de zéros (Run Length Encoding, RLE) et Arithmétique. L’application de notre algorithme de compression sur un ensemble d’images tests a permis d’atteindre un rapport signal sur bruit crête (Peak Signal to Noise Ratio, PSNR) de 28,80 dB pour un rapport de compression (RC) de 25,22 sur l’image "Lena". La comparaison des résultats de notre algorithme, basé sur les Curvelets, avec ceux obtenus par les méthodes de compression utilisant la transformée en ondelettes, montre un gain d’environ 2 dB en faveur de la transformée en Curvelets. Les résultats obtenus montrent que notre algorithme permet d’atteindre des rapports de compression élevés avec une très bonne qualité des images.

Mots clés-Compression d’images. Transformée en Curvelets Rapides Seconde Génération. Transformée en Ondelettes. Régression à Vecteurs de Support (SVR). Codages RLE et Arithmétique.

I. INTRODUCTION

La compression des images consiste à r éduire la taille physique des blocs d’informations. L'objectif principal est de réduire à la fois les

redondances spatiale et spectrale pour permettre de stocker ou transmettre les données de manière appropriée. Plusieurs techniques sont utilisées afin d’atteindre cet objectif, dans cet article nous nous concentrons sur

Depuis leur introduction au début des années 1980, les ondelettes ont fait l’objet de beaucoup d’attention dans des domaines aussi diversifiés que le débruitage, la compression, le codage, l’imagerie médicale ou satellitaire. Cependant, il apparaît aujourd’hui clairement que les ondelettes ne sont pas optimales pour l’analyse d’objets anisotropes dans l’image (les lignes, les contours...). Depuis quelques années, de nouvelles transformées multi-échelles ont été développées comme les curvelets, contourlets et bandlets qui intègrent la notion de directionnalité et qui permettent de rechercher des objets de manière optimale.

la compression d'image avec perte utilisant deux transformées : Curvelets et Ondelettes [1].

Les curvelets ont été proposées par E. Candès et D. Donoho [2], constituent une nouvelle famille de frames d’ondelettes géométriques plus efficaces que les transformées traditionnelles, et qui sont conçues pour représenter de façon parcimonieuse les contours. Comparées aux ondelettes, la transformée en curvelets peut représenter un contour lisse avec moins de coefficients pour la même précision. La transformée de curvelets est une transformée multi-échelles, multi-directionnelles avec des atomes indexés par un paramètre de position, d’échelle et de direction [2, 3].

SVM (Machine à Vecteur de Support) est une méthode d’apprentissage développée sur la base de la Théorie de l’Apprentissage Statistique (Statistical Learning Theory) de Vapnik et Chervonenkis [4].

189 © IT4OD 2014

Page 196: IT4OD 2014 Proceedings

Elle permet de réaliser des estimations en classification (à deux classes ou plus) [5] ou en régression [6].

Dans cet article nous présentons un algorithme de compression d’images qui consiste à appliquer un apprentissage SVR sur des coefficients issues de la transformée en curvelets seconde génération de l’image à co mpresser. Les codages par RLE et arithmétique seront utilisés pour le codage des vecteurs des poids des SVs [7]. Certaines de ces sous-bandes ne contiennent pas une grande quantité d’énergie, donc elles ont peu d’effet sur la qualité de l’image, d’où elles sont directement écartées.

Cet article est structuré en plusieurs sections. Les deuxième et troisième sections présentent les principes de la transformée en curvelets et la régression SVM. La méthode de compression d’images choisie est présentée dans la quatrième section. Les résultats obtenus par l’application de la méthode sur plusieurs images tests seront calculés et discutés dans la cinquième section.

II. LES CURVELETS RAPIDES SECONDE GENERATION

Les Curvelets-99 se sont montrées très performantes en débruitage [8, 9] comme dans d’autres applications [10, 11], mais souffrent d’un certain nombre de défauts : leur construction par étapes successives est complexe, et elles possèdent un grand nombre de paramètres (deux d’échelle, trois de position, et un d’angle). De plus, elles sont très redondantes. Ces revers ont conduit à une construction d’un autre type de curvelets, ayant seulement trois paramètres, et avec une redondance plus faible. Cette nouvelle transformée, introduite par Candès et al. [2], s’implémente comme un pavage de l’espace de Fourier, considéré comme [−1,1]2.

A. La transformée continue

On définit la transformée continue à l’aide des fenêtres V et W, respectivement angulaire et radiale, qui agiront dans le domaine de Fourier : 𝑊𝑊(𝑟𝑟), 𝑟𝑟 ∈ [1/2,2] 𝑒𝑒𝑒𝑒 𝑉𝑉(𝑒𝑒), 𝑒𝑒 ∈ [−1,1].

Pour toute échelle j >j0, on définit une fenêtre

fréquentielle Uj par

𝑈𝑈𝑗𝑗 (𝑟𝑟, 𝜃𝜃) = 2− 3𝑗𝑗4 𝑊𝑊(2−𝑗𝑗 𝑟𝑟)𝑉𝑉(2𝑗𝑗2𝜃𝜃/2𝜋𝜋) (1)

On peut ainsi définir la curvelet à l’échelle j dans le domaine de Fourier,

𝜓𝜓𝑗𝑗 (𝑤𝑤) = 𝑈𝑈𝑗𝑗 (𝑤𝑤) (2)

Les autres pouvant en être déduites par rotations et translations. La curvelet à l ’échelle 2−𝑗𝑗 , d’orientation 𝜃𝜃𝑙𝑙 = 2𝜋𝜋2−|𝑗𝑗 /2|𝑙𝑙 , 𝑙𝑙 =0…2−|𝑗𝑗 /2|-1 et de position 𝑥𝑥𝑘𝑘

(𝑗𝑗 ,𝑙𝑙) = 𝑅𝑅𝜃𝜃𝑒𝑒−1(𝑘𝑘12−𝑗𝑗 , 𝑘𝑘22−𝑗𝑗/2), est donc

défini par :

𝜓𝜓𝑗𝑗 ,𝑙𝑙 ,𝑘𝑘(𝑥𝑥) = 𝜓𝜓𝑗𝑗 𝑅𝑅𝜃𝜃𝑒𝑒(𝑥𝑥 − 𝑥𝑥𝑘𝑘(𝑗𝑗 ,𝑙𝑙)) (3)

La décomposition en curvelets est obtenue par simple produit scalaire sur cette famille de fonctions 𝑐𝑐(𝑗𝑗, 𝑙𝑙, 𝑘𝑘) = ⟨𝑓𝑓,𝜓𝜓𝑗𝑗 ,𝑙𝑙 ,𝑘𝑘⟩ qui peut être défini dans le domaine fréquentiel par le théorème de Parseval :

𝑐𝑐(𝑗𝑗, 𝑙𝑙, 𝑘𝑘)

=1

(2𝜋𝜋)2 𝑓𝑓(𝑤𝑤)𝑈𝑈𝑗𝑗[−1,1]2

𝑅𝑅𝜃𝜃𝑒𝑒𝑤𝑤𝑒𝑒𝑖𝑖⟨𝑥𝑥𝑘𝑘

(𝑗𝑗 ,𝑙𝑙),𝑤𝑤⟩𝑑𝑑𝑤𝑤 (4)

Figure 1. P avage des curvelets continues : (a) en domaine fréquentiel (b) en domaine spatial [12].

B. La transformée discrète

Pour le passage en discret, il faut changer quelque peu la forme des fenêtres sur lesquelles vivent les curvelets pour les adapter à une grille cartésienne. Ainsi, le pavage du plan fréquentiel en anneaux circulaires concentriques (filtres passe-bande) se transforme en couronnes cartésiennes concentriques lorsque l’on applique les filtres sur les deux directions 𝑤𝑤1 et 𝑤𝑤2 indépendamment.

Soit ∅ une fonction à support dans [-2, 2] et valant 1 sur [-1/2, 1/2]. On pose ∅𝑗𝑗 (𝑤𝑤) =∅(2−𝑗𝑗𝑤𝑤1) ∅(2−𝑗𝑗𝑤𝑤1). On définit la famille de filtres passe-bande :

𝑊𝑊𝑗𝑗𝐷𝐷(𝑤𝑤) = ∅𝑗𝑗+1

2 (𝑤𝑤)−∅𝑗𝑗2(𝑤𝑤), 𝑗𝑗 ≥ 0 (5)

Les coefficients de la transformée en curvelets discrète sont obtenus par :

𝑐𝑐(𝑗𝑗, 𝑙𝑙, 𝑘𝑘)

= 𝑓𝑓 (𝑤𝑤)𝑈𝑈𝑗𝑗 𝑆𝑆𝜃𝜃𝑙𝑙−1𝑤𝑤𝑒𝑒𝑙𝑙⟨𝑆𝑆𝜃𝜃𝑙𝑙

−𝑇𝑇𝑏𝑏 ,𝑎𝑎𝑥𝑥 ⟩𝑑𝑑𝑤𝑤 (6)

Figure 2. Partitionnements spatial et fréquentiel engendrés par les curvelets discrètes [12].

190 © IT4OD 2014

Page 197: IT4OD 2014 Proceedings

III. REGRESSION SVM POUR LA COMPRESSION D’IMAGES

Dans leur origine, les SVMs ont été développées pour des problèmes de classification. Cependant, leur nature leur permet de résoudre également des problèmes de régression. La régression est un cas particulier de classification où les classes des exemples ne sont pas dénombrables c-à-d continues. Le problème consiste à trouver, en utilisant D=(𝑥𝑥1,𝑦𝑦1), . . , (𝑥𝑥𝑛𝑛 ,𝑦𝑦𝑛𝑛), une fonction 𝑓𝑓 : 𝑅𝑅𝑚𝑚 → 𝑅𝑅 qui rapproche le plus possible des yi, en d’autre terme qui minimise la différence entre les 𝑓𝑓 (𝑥𝑥𝑖𝑖) et les 𝑦𝑦𝑖𝑖 .

Souvent, 𝑓𝑓 est considérée comme fonction linéaire : 𝑓𝑓 = ⟨𝑤𝑤, 𝑥𝑥 ⟩ + b, où w est un vecteur et b est un scalaire. Le problème revient donc à trouver un hyperplan caractérisé par 𝑤𝑤∗et 𝑏𝑏∗ qui minimise l’écart global entre 𝑓𝑓 et les 𝑦𝑦𝑖𝑖 (équation (7)).

(𝑤𝑤∗, 𝑏𝑏∗)= 𝑎𝑎𝑟𝑟𝑎𝑎𝑚𝑚𝑖𝑖𝑛𝑛𝑤𝑤 ,𝑏𝑏 ∑ (𝑦𝑦𝑖𝑖 − ⟨𝑤𝑤, 𝑥𝑥𝑖𝑖⟩– 𝑏𝑏)2𝑛𝑛𝑖𝑖=1 (7)

Pour résoudre ce problème, les SVMs utilisent une astuce qui consiste à modéliser la fonction de régression par un hyperplan qui se situe au centre d’un hyper-tube de largeur 2𝜖𝜖 contenant tous les exemples d’entrainement (figure 3.).

Figure 3. Hyper-tube modélisant la fonction de régression [13]

Plusieurs hyper-tubes, de largeur 2𝜖𝜖 contenant tous les exemples d’entrainement, peuvent exister. L’hyper-tube optimal est celui qui minimise la distance entre les exemples d’entrainement et ses frontières, autrement dit, qui maximise la distance des exemples de l’hyperplan du centre (Figure 3.).

La détermination de l’hyper-tube optimal est semblable à la détermination de l’hyperplan optimal de marge maximale dans le cas de classification. On doit donc rechercher un hypertube de marge maximale avec tous les exemples d’entrainement à l’intérieur. Par une analyse similaire à ce lle du problème de classification, la solution du problème de régression est réduite à la résolution du problème dual d’optimisation quadratique de l’équation (8).

𝑀𝑀𝑎𝑎𝑥𝑥𝑖𝑖𝑚𝑚𝑖𝑖𝑀𝑀𝑒𝑒𝑟𝑟𝑎𝑎 ,𝑎𝑎 ′ −12

(𝛼𝛼𝑖𝑖 − 𝛼𝛼′𝑖𝑖)𝑛𝑛

𝑖𝑖 ,𝑗𝑗=1

𝛼𝛼𝑗𝑗 − 𝛼𝛼′𝑗𝑗 ⟨𝑥𝑥𝑖𝑖 ,𝑥𝑥𝑗𝑗 ⟩

− 𝜖𝜖(𝛼𝛼𝑖𝑖 − 𝛼𝛼′𝑖𝑖)𝑛𝑛

𝑖𝑖=1

+𝑦𝑦𝑖𝑖(𝛼𝛼𝑖𝑖 − 𝛼𝛼′𝑖𝑖)𝑛𝑛

𝑖𝑖=1

Sous contraintes ∑ 𝛼𝛼𝑖𝑖 − 𝛼𝛼′𝑖𝑖𝑛𝑛

𝑖𝑖=1 = 0

0 ≤ 𝛼𝛼𝑖𝑖 , 𝛼𝛼′𝑖𝑖 ≤ 𝐶𝐶 (8)

Où les 𝛼𝛼𝑖𝑖 et 𝛼𝛼′𝑖𝑖 sont les coefficients des exemples respectivement au dessus et au dessous de l’hyperplan et C est un paramètre pour leur pénalisation. La fonction de sortie 𝑓𝑓(𝑥𝑥)peut être donnée par l’équation (9).

𝑓𝑓(𝑥𝑥) = ∑ (𝛼𝛼𝑖𝑖 −𝑛𝑛𝑖𝑖=1 𝛼𝛼′𝑖𝑖)⟨𝑥𝑥𝑖𝑖 , 𝑥𝑥⟩ + 𝑏𝑏 (9)

Où b est calculé à partir d’un exemple dont 0 < 𝛼𝛼𝑖𝑖 < C (vecteur support) par l’équation (10).

b= 𝑦𝑦𝑖𝑖 - ⟨𝑤𝑤, 𝑥𝑥𝑖𝑖⟩– 𝜖𝜖 (10)

Utilisation des noyaux

Parmi les motivations les plus solides du développement des machines à v ecteur support pour la régression, est leur extension simple aux cas non linéaires, grâce à l’utilisation des noyaux.

En effet, d’une manière similaire au cas de classification, on fait une transformation d’espace ∅ pour se trouver toujours face à u ne régression linéaire. La transformation d’espace inverse ∅−1 permet de retourner à l ’espace d’origine après la résolution dans le nouvel espace (Figure 4.).

Figure 4. Utilisation des noyaux pour la résolution de la régression non linéaire [13].

La transformation ∅ et son inverse sont réalisées grâce à u ne fonction réelle K(𝑥𝑥𝑖𝑖 , 𝑥𝑥𝑗𝑗 ) appelée Noyau (Kernel). Le produit scalaire dans les équations (8) et (9) est remplacé par la fonction du noyau. Ces fonctions noyaux doivent satisfaire les conditions de Mercer, voici quelques exemples de noyaux :

1) Linéaire k(x, x’) = x . x’ (11) 2) Polynomial k(x, x’) = (𝑥𝑥. 𝑥𝑥 ′)𝑑𝑑 𝑜𝑜𝑜𝑜 (𝑐𝑐 + 𝑥𝑥. 𝑥𝑥 ′ )𝑑𝑑

(12) 3) Gaussien k(x, x’) = 𝑒𝑒−

|𝑥𝑥−𝑥𝑥 ′|2

𝜎𝜎 (13)

4) Sigmoïde k(x, x’) = tanh(𝛼𝛼0 𝑥𝑥. 𝑥𝑥 ′ + 𝛽𝛽0 (14)

IV. METHODE PROPOSEE

La méthode proposée est basée sur l’utilisation des SVR pour la compression des coefficients des curvelets seconde génération. Nous avons opté pour le modèle ‘epsilon-SVR’ et fixé le nombre de décomposition 𝑛𝑛𝑀𝑀𝑐𝑐𝑎𝑎𝑙𝑙𝑒𝑒 à 6. Le schéma suivant résume la procédure de l’algorithme proposé :

191 © IT4OD 2014

Page 198: IT4OD 2014 Proceedings

Figure 5. Schéma de l’algorithme de compression proposé

La procédure de l’algorithme de codage est donnée comme suit :

V.1. Application de la transformée en Curvelets

L’image originale est décomposée en utilisant la transformée en curvelets rapide seconde génération en trois niveaux : Grossier (Coarse), Détail (Detail) et Fin (Fine). Le niveau ‘Grossier’ contient les sous-bandes des basses fréquences, ce niveau sera donc codé en utilisant la modulation par impulsion et codage différentielle (Differential Pulse Code Modulation, DPCM) afin de préserver l’information pertinente de l’image. Quant au niveau ‘Fin’, il c ontient les hautes fréquences qui seront écartées lors du codage. Les fréquences intermédiaires sont attribuées aux ‘Détails’. Ces derniers vont subir un apprentissage SVR sur des coefficients issues de la transformée en Curvelets de l’image à compresser. Les poids des vecteurs de support (SVs) sont ensuite quantifiés et codés en utilisant les codages RLE et Arithmétique.

V.2. Quantification des coefficients par ‘Zone morte’ ou ‘Deadzone’

Il existe de très nombreuses valeurs autour de zéro, non-significatives, suite à la transformation de l’image par la transformée en curvelets qui pénaliseraient la suite du processus de codage. Typiquement, les valeurs comprises dans la zone morte sont quantifiées à zéro, et ne sont donc pas considérées par le codage entropique. En utilisant la quantification à zo ne morte, on quantifie les coefficients issus de la décomposition en curvelets. A partir des expériences, la taille optimale de la Zone morte est prise entre 0.6 et 0.75.

V.3. Codage des sous-bandes de basses fréquences

Les sous-bandes de basses fréquences sont codées en utilisant le codage DPCM (Differential Pulse-Code Modulation). Le codage DPCM permet de compresser de manière intelligente un plan comportant des valeurs homogènes. On considère ici que dans le niveau ‘Grossier’ (l’information homogène de l’image), la valeur d’un pixel est fortement corrélée à celles de ses voisins passés au travers d’un prédicteur. Le prédicteur est une simple matrice de coefficients permettant de pondérer les pixels voisins du pixel à coder. L’erreur obtenue entre le plan d’origine et le plan prédit est alors transmise, et le gain de cette solution repose sur le fait que l’on peut de manière générale coder cette erreur sur un nombre bien inférieur de bits par pixel.

V.4. Normalisation des coefficients de Curvelets Nous avons utilisé l’équation (15) pour la

normalisation des niveaux ‘Détails’.

𝑐𝑐′ =𝑐𝑐 − 𝑐𝑐𝑚𝑚𝑖𝑖𝑛𝑛

𝑐𝑐𝑚𝑚𝑎𝑎𝑥𝑥 − 𝑐𝑐𝑚𝑚𝑖𝑖𝑛𝑛 (15)

𝑐𝑐𝑚𝑚𝑎𝑎𝑥𝑥 et 𝑐𝑐𝑚𝑚𝑖𝑖𝑛𝑛 sont les valeurs maximale et minimale des coefficients de curvelets respectivement, c est le coefficient à normaliser et c’ est la valeur après normalisation [7].

V.5. Apprentissage des coefficients de Curvelets par les SVM

Pour l’apprentissage par SVM, il existe deux paramètres qui affectent l’efficacité de la compression : le type et les paramètres du noyau. En général les types de noyaux sollicités pour les SVM sont les noyaux : linéaire, polynomial et gaussien. La distribution des coefficients dans un bloc est approximativement considérée en tant que distribution gaussienne [14]. Ainsi nous avons choisis la fonction gaussienne comme type de noyau pour la régression SVM, et nous l’avons appliqué aux coefficients des niveaux ‘Détails’. La figure 6 montre un exemple des résultats de simulation SVR sur un bloc de 4*4.

Figure 6. Les résultats de simulation sur un bloc de 4*4 de l’image Lena avec la Régression SVM à noyau gaussien et les Curvelets.

Il existe deux versions de régression SVM couramment utilisées : ‘epsilon-SVR’ et ‘nu-SVR’. Epsilon ou nu sont seulement des versions différentes du paramètre de pénalité. Le même problème d'optimisation est résolu dans les deux cas [15]. Nous avons choisi d’utiliser ‘epsilon-SVR’ car c’était la formulation originale et c’est la forme la plus couramment utilisée.

V.6. Codage des coefficients On combine les vecteurs de support (SVs)

avec leurs valeurs (poids). On applique ensuite les codages RLE et Arithmétique pour ce vecteur. Les sous bandes des hautes fréquences seront écartées pour l’étape de la compression, mais elles seront rajoutées lors de la reconstruction.

V. RESULTATS ET DISCUSSION

L’algorithme est implémenté avec MATLAB (R2012a) et nous avons utilisé LIBSVM pour la régression SVM [16]. Pour la transformée en curvelets seconde génération nous avons utilisé celle proposée dans le Toolbox CurveLab [17]. La

192 © IT4OD 2014

Page 199: IT4OD 2014 Proceedings

comparaison des résultats de compression de l’algorithme proposé avec ceux des méthodes basées sur les ondelettes est donnée dans le tableau 1. TABLEAU 1. LES RESULTATS DES PSNRS DE NOTRE ALGORITHME COMPARES A CEUX BASES SUR LES ONDELETTES

Image RC

PSNR Ondelettes Curvelets

Bateau 256*256 24,66 27,06 28,10

Femme 256*256 24,19 26,7 27,35

TIGRE 256*256 23,54 27,78 28,90

Aerien 256*256 22,56 30,08 31,59

Lena 512*512 25,22 27,04 28,80

CITY 256*256 22,3 30,5 31,06

Les résultats montrent qu’on peut atteindre des taux de compression élevés avec des bons PSNR. Effectivement, nous avons atteint avec notre algorithme un PSNR allant jusqu’à 28,80 pour l’image "Lena" de taille 512 x 512 avec un noyau SVR Gaussien. On peut constater une amélioration typique du PSNR de l’ordre de 1dB pour les images : Femme et CITY, et de plus de 1dB pour les images : Bateau, TIGRE, Aerien et Lena avec ce même noyau. Ces figures montrent qu’il y a un gain important en terme de qualité visuelle dû au meilleur respect de la géométrie. Les résultats montrent clairement les bénéfices apportés par notre codeur en Curvelets pour la compression.

La figure 7 donn e un aperçu sur l’ensemble d’images tests utilisés et les figures 8, 10, 12, 14, 16 et 18 montrent des zooms sur les images originales. Sur les figures 9, 11, 13, 15, 17 et 19, on peut faire une comparaison visuelle entre les images des deux algorithmes. On peut observer une meilleure qualité pour les images utilisant l’algorithme en Curvelets. L’algorithme en Curvelets rapporte des arêtes très lissées et respecte mieux les contours.

Figure 7. Images tests. (a) Bateau, (b) Femme, (c) Tigre(d) Aerien, (e) City, (f) Lena.

Figure 8. Image originale Bateau (zoom).

a) b) Figure 9. Images Bateau reconstruites. (a) Avec la méthode des Ondelettes, (b) Avec la méthode des Curvelets.

Figure 10. Image originale Femme (zoom).

a) b)

Figure 11. Images Femme reconstruites. (a) Avec la méthode des Ondelettes, (b) Avec la méthode des Curvelets.

Figure 12. Image originale Tigre (zoom)

a) b)

Figure 13. Images Tigre reconstruites. (a) Avec la méthode des Ondelettes, (b) Avec la méthode des Curvelets.

193 © IT4OD 2014

Page 200: IT4OD 2014 Proceedings

Figure 14. Image originale Aerien (zoom)

a) b) Figure 15. Images Aerien reconstruites. (a) Avec la méthode des Ondelettes, (b) Avec la méthode des Curvelets.

Figure 16. Image originale City (zoom)

a) b)

Figure 17. Images City reconstruites. (a) Avec la méthode des Ondelettes, (b) Avec la méthode des Curvelets.

Figure 18. Image originale Lena (zoom)

a) b)

Figure 19. Images Lena reconstruites. (a) Avec la méthode des Ondelettes, (b) Avec la méthode des Curvelets.

VI. CONCLUSION

Dans cet article, nous avons proposé un nouveau algorithme de compression d’images en utilisant la Régression SVM et la transformée en

Curvelets Rapide Seconde Génération. Les résultats montrent un gain en PSNR, par rapport aux autres méthodes basées sur les ondelettes, pour un même RC avec une qualité d’images nettement meilleure. En perspectives, on peut faire une meilleure sélection des paramètres pour les noyaux des SVM afin de diminuer le nombre de vecteurs de support et améliorer le RC. Vu les premiers résultats qui montrent le potentiel de cette approche, on peut l’orienter vers plusieurs applications tels que : le biomédical, la biométrie, l’hyperspectrale et la détection des objets.

Bibliographies [1] D. Nilima Maske, V. Wani Patil, "Comparaison of Image

Compression using Wavelet for Curvelet transform and Transmission over Wireless Channel", in International Journal of Scientific and Research Publications, Vol 2, Issue 5 , May 2012.

[2] E. Candès et D. Donoho, "Curvelets: A Surprisingly Effective Nonadaptive Representation of Objects with Edges", in Curves and Surface, Vanderbilt University Press, Nashville, TN, 1994.

[3] E. Candès et D. Donoho, "New Tight Frames of Curvelets and Optimal representations of Objects with C2Singularities", in Department of Statistics, Stanford University, USA, November 2002.

[4] V. Vapnik, "The Nature of Statistical Learning Theory", Springer-Verlag, New York, 1995.

[5] C.J.C Burges, "A tutorial on Support Vector Machines for patterns recognition", in Data Mining and Knowledge Discovery, 1998.

[6] A.J. Smola and B. Schölkopf, "A tutorial on Support Vector Regression", in NeuroCOLT2 Technical Report Series, NC2-TR-1998-030, October 1998.

[7] S. Fazli, S. Toofan, Z. Mehrara, "JPEG2000 Image Compression Using SVM and DWT", in International Journal of Science and Engineering Investigations, Vol 1, Issue 3, April 2012.

[8] J.-L. Starck, E.J. Candès, and D.L. Donoho, "The curvelet transform for image denoising", in IEEE Transactions on Image Processing, June 2002.

[9] J.L. Starck, D.L. Donoho, and E.J. Candès, "Very high quality image restoration by combining wavelets and curvelets", in A. Laine, M.A. Unser, and A. Aldroubi, editors, SPIE conference on Signal and Image Processing : Wavelet Applications in Signal and Image Processing IX, San Diego, 1-4 August. SPIE, 2001.

[10] J.L. Starck, M.K. Nguyen, and F. Murtagh, "Wavelets and curvelets for image deconvolution : a combined approach", in Signal Processing, 2003.

[11] M. Elad, J.-L. Starck, P. Querre, and D.L. Donoho, "Simultaneous cartoon and texture image inpainting using morphological component analysis". Applied and Computational Harmonic Analysis, 2005.

[12] E.J. Candes, L.Demanet, D.L.Donoho, L.Ying, "Fast Discrete Curvelet Transforms", Stanford University Press Notes, July 2005.

[13] A. Djeffal. "Utilisation des méthodes Support Vector Machine (SVM) dans l’analyse des bases de données", in department of informatic, M ohamed Khider University, Biskra, 2012.

[14] Wang XL, Han H, and Peng SL, "Image Restoration Based on Wavelet-domain Local Guassian Model", Jorunal of Software, Vol 15, N°3, 2004.

[15] C.-C. Chang, C.-J. Lin, "Training support vector regression: Theory and algorithms", in Neural Computation, 2002.

[16] http://www.csie.ntu.edu.tw/~cjlin/libsvm/. [17] CurveLab Toolbox. http ://w w.curvelet.org/index.html

194 © IT4OD 2014

Page 201: IT4OD 2014 Proceedings

No-reference Image Quality Assessement forJPEG2000 Compressed Images Using Natural Scene

Statistics And Spatial Pooling

Dakkar Borhen eddineLaboratoire d’Automatique et de Robotique

Faculte des Sciences de la TechnologieUniversite Constantine1

Constantine, AlgerieEmail: [email protected]

Hachouf FellaLaboratoire d’Automatique et de Robotique

Faculte des Sciences de la TechnologieUniversite Constantine1

Constantine, AlgerieEmail: [email protected]

Abstract—A no reference image quality metric is proposedto assess the JPEG2000 compressed images, where the mainartefacts introduced by the JPEG2000 compression are the blurand ringing. The new metric is based firstly on the calculationof the natural scene statistics NSS, then because of the changein the monotone intensity is very sensitive to the presence ofblur we calculate the monotone changing (MC) over each block.Zeros crossing (ZC) are obtained via the Laplacian of Gaussianoperator. A spatial weighed pooling approach is adopted to obtainthe score of the perceived image, and to have a good correlationwith the human judgements the above calculations are performedin two scales; the original scale and a reduced one. Tests have beenconducted on the LIVE and IVC databases. Obtained results haveshown that the proposed measure performs better than the fullreference peak signal to noise ratio (PSNR) and it is comparableto the structural similarity index (SSIM).

Keywords—Image Quality Assessment(IQA),NaturalScene Statistics(NSS),Monotone changing(MC),ZeroCrossing(ZC),Spatial pooling

I. INTRODUCTION

In our live almost of us utilize new devices like phones,computers, tablets and many others. The most of them areequipped with high definition cameras and they are capable tocapture, store, transmit and view the images or videos captured.From what we have said all of these functions have an effecton the perceptual information contained in the images, bycausing some distortions that disturb the perceptual qualityof the viewed scene. The image affected by one or moredistortions will have a worse quality; because of this it’s ofbig interest to evaluate the quality of an image. In literaturethe field of image quality assessment (IQA) has attracted manyof researchers, where evaluating the quality of an image is abig task and it is very difficult issue. To evaluate the quality ofan image, one can do this in tow different ways subjectivelyor objectively. The subjective way means that the human isthe ultimate decider of quality, here several tests are conductedwhere a final score is finally obtained. This score indicates howthe quality is. In literature different methods exist, however themajor characteristic of the subjective tests are not practical;they are time consuming and they are very cost.In the other hand objective methods are algorithms which canautomatically predict scores of quality, where the main goal

is to be in agreement with human judgement. The objectivemethods can be classified to three different groups accordingto the presence of the reference or not.Full reference (FR) methods; where the reference (pristine)image is completely known and a comparison with the imageunder assessment is affected, for this group the problem is theavailability of the reference which not warranted all time, forthis full reference (FR) methods are not practical.Reduced reference (RR) methods; they utilize partial infor-mation of the pristine image, here the idea is extractingsome features from the original image, sending them with thereceived image and finally exploit them to design a metric.The third group of methods is the No-reference or blind (NR)metrics. They are different from the previous methods, wherenothing is provided except the image under assessment. Theyare more practical and till now there is no universal methodable to predict quality. In literature the majority of no-referencemetrics are distortion specification; where the distortion affectsthe image is previously known.In literature many of researchers have focused on the artefactsintroduced by the JPEG2000 compression standard. Wherethe main artefacts introduced by this compression are blurand ringing, Fig.1 presents an image who is compressedwith the JPEG2000, where Fig.2 presents a zoom of blurredregion and the effect of ringing. Blur in images is due to theattenuation of the high spatial frequency coefficients. Whereringing artefacts is caused by the quantization or truncation ofthe high frequency coefficients resulting from a coding basedon wavelet transform, it’s called the Gibbs phenomenon.The distortions introduced by the JPEG2000 have been studiedin many works in the literature. In [1] P. Marziliano presentstwo metrics one for blur (Full and No-reference) and anotherfor ringing (Full reference). They have a low computationalcomplexity, because they are based on the analysis of theedge and adjacent regions in an image. The main distortionsintroduced by the JPEG2000 are the blur and ringing due tothe wavelet compression, the proposed blur measure is basedon the calculation of the edge spread. For the Full referencethe edges are detected from the original image, but for theNo-reference, edges are obtained from the compressed imageand at this point the measure will depend on the amount ofcompression. The ringing metric is based on the blur measure.

195 © IT4OD 2014

Page 202: IT4OD 2014 Proceedings

Fig. 1. image from the LIVE database present the distortions introduced bythe JPEG2000 compression

Fig. 2. Zoom of fig.1, left image presents the ringing effect, right imagepresents the blur effect

The width of the ringing is computed on the left and onthe right of the edges. In [2] the authors have proposed ameasure based on natural scene statistics (NSS) to measurethe quality of the JPEG2000 compressed images. They startfrom the idea that the JPEG2000 compression disturbs thenon-linear dependencies contained in the natural scenes. Thendeviation quantification from the NSS model is used to predictthe quality of the image.

In [3] H.Liu et al have proposed a method which extractsthe ringing regions affected by the ringing artefact. Thenthe local visibility of ringing is estimated in these regions.In the next step they compare the quantified estimationsto the local background. The score for each local ringingregion is averaged to obtain a global score for the image.In reference [4] A neural network is used to assess theperceived quality. The neural network simulates the humanvisual system. The extracted features from the image andtheir corresponding subjective scores are used to learn therelationship between them. For the JPEG coded images, blockeffect is considered as the most relevant feature. While forthe JPEG2000 compression, blur is the most relevant feature.

In this paper we present a No-reference algorithm forassessing the quality of images compressed by JPEG2000compression. It provides tow significant distortions blur and

ringing. Firstly natural scene statistics (NSS) of Rodeman [6]are extracted. Using them to calculate the monotone changingover the horizontal and vertical directions. Then zero-crossingsare computed. To obtain the final score a spatial poolingapproach[7] is used. The rest of this paper is organizedas follows, section 2 describes the proposed measure, whensection 3 presents the experimental results and comparison, insection 4 we conclude this work.

II. PROPOSED METHOD

A. Natural Scene Statistics in the Spatial Domain

Using the distorted imageI(i, j), compute the normalizedluminances via local mean subtraction and divisivenormalization [6]:

I(i, j) =I(i, j)− µ(i, j)σ(i, j) + C

(1)

Where i ∈ 1, 2...M ; j ∈ 1, 2...N , are spatial indices.M,N are the image height and width respectively, C = 1 isa constant that prevents instabilities when the denominatortends to zero [8].µ and σ are given by

µ(i, j) =K∑

k=−K

L∑l=−L

wk,lIk,l(i, j) (2)

σ(i, j) =

√√√√ K∑k=−K

L∑l=−L

wk,l(Ik,l(i, j)− µ(i, j))2 (3)

Where w = wk,l|k = −K, ...,K, l = −L, ..., L is a 2Dcircularly-symmetric Gaussian weighting function. We utilizethe normalized luminances because they are homogeneous forpristine images and the signs of adjacent coefficients exhibita regular structure that can be affected in the presence ofdistortion [8].

B. Calculating of the monotone changing and zero-crossing

First the normalized luminances matrix resulting from thecalculation is decomposed into non-overlapping blocks. Thenthe horizontal difference between two adjacent pixels in theblock is computed as follows[5]:

DH(s, t) = I(s, t)− I(s, t− 1) (4)

Where s = 1, ..., S, t = 2, ..., T, and S,T are the blockheight and width respectively. The sign of adjacent differencesis calculated as :

SH(s, t) = DH(s, t) ∗DH(s, t+ 1) (5)

Where s = 1, ..., S, t = 2, ..., T − 1, and S,T are the blockheight and width respectively. Then the monotone changingare given by:

MC(s, t) = SH(s, t) > 0 (6)

196 © IT4OD 2014

Page 203: IT4OD 2014 Proceedings

The horizontal MC are related to the monotone intensitychange in its horizontal neighbourhood. Then we calculate thespread of a group of consecutive horizontal monotone changingMC starting at(i, j1) and ending at(i, j2) of the MC[5]:

MCS(k) = j2 − j1 + 3 (7)

k denotes a group of consecutive pixels. The constant 3is made to include the end of pixels. The MC are computedbecause each horizontal MC is sensitive to the change in themonotone intensity. The MC of the group is defined as theproduct of the spread of the horizontal MC and the numberof MC pixels (the number of MC pixels is the horizontal MCspread with subtracting the end of pixels), the MC of group isgiven by:

MCH(k) =MCS(k) ∗ (MCS(k)− 2) (8)

And finally the MC of the block is defined as the sum of allthe monotone changing. It is given by:

MCH =1

ST

B∑i=1

MCH(k) (9)

Where B is the number of blocks in the image.For the MC in the vertical direction, it is obtained usingthe same algorithm and transposing the image block. Aftercalculating the MC, the maximum of the vertical and horizontalMC is taken as the overall MC of the block.

MCB = maxMCH ,MCV (10)

Now, the ZC are determined using the Laplacian of Gaus-sian (Log) function. The choice of the Log is motivated by;the image will be smoothed with the Gaussian filter to removethe noise contained in the image, and the Laplacian operatoris used to detect the ZC in an image[9]. The resulting image isdecomposed into non-overlapping blocks. For each block ZCare computed as:

ZCB =S∑

s=1

T∑t=1

ZC(s, t) (11)

Where s = 1, ..., S, t = 2, ..., T, and S,T are the block heightand width respectively.Moving now from these characteristics to a global scoredescribing the quality of the image using spatial poolingapproach.

C. Final score via spatial pooling approach

A spatial pooling approach is adopted, transforming thespatial characteristics to a global score describing the imagequality. In [7], the authors have made a study of differentspatial pooling to obtain scores in IQA, we will take the LocalQuality/Distortion-Weighted Pooling, where the non-uniformquality distribution problem may also be solved more directlyby assigning spatially varying importance (weights) over theimage space. A general form of such a spatial weightingapproach is given by [7]:

M =

∑Ni=1 wimi∑Ni=1 wi

(12)

Where wiis the weight assigned to the i − th spatiallocation, and miis the local quality measure.In this work the final score is obtained as follows:

M =

∑Bi=1 ZCBMCB∑B

i=1 ZCB

(13)

With ZCB is the weight(wi), MCB is the local quality measure(mi)of each block and B is the total of blocks in the image.We perform our algorithm at two scales the original scale ofthe image, and at a reduced scale resolution, because imagesare naturally multi-scale and extracting multi-scale informationproduce better results in terms of correlation with humanperception. A reduction of the resolution is applied to theoriginal image using a low pass filter and down sampling byfactor of 2. Then the final score is obtained as the averageoriginal scale image score and its reduced version score.

finalscore =score1 + score2

2(14)

Where score1 and score2 are the scores obtained from theoriginal scale and the reduced scale respectively.

III. EXPERIMENTAL RESULTS

We have tested the proposed measure on the LIVE IQAdatabase [12], which consists in 29 reference images and779 distorted images, with the following distortion types:JPEG2000 (JP2K) and JPEG compression, additive whiteGaussian noise (WN), Gaussian blur (Blur), and a Rayleighfast-fading channel simulation (FF). Because the proposedmeasure treats the distortions introduced by the JPEG2000, theevaluation is performed only on the 169 images compressedby JPEG2000 standard. The subjective scores are in termsof Difference Mean Opinion Score (DMOS), they are scaledfrom 0 to 100, where the higher value of DMOS correspondsto the worse quality.A second database have been used to evaluate the performanceof the proposed metric that is the IVC database[13], it contains10 original images, where from 4 different distortions (JPEG,JPEG2000, LAR coding and Blurring) they have generated235 distorted images. We use only images that are corruptedby JPEG2000 (50 images).

Two operators are used to assess the quality performance,the Pearson linear correlation coefficient (CC) and thespearman rank ordered correlation coefficient (SROCC), butbefore calculating the CC the scores are passed through alogistic non linearity function as mentioned in [12].

Quality(x) = β1logistic(β2, (x− β3)) + β4x+ β5 (15)

logistic(τ, x) =1

2+

1

(1 + exp(τx))(16)

TABLE I. CC AND ROCC OVER DIFFERENT BLOCK SIZES USINGLIVE DATABASE

Block size CC ROCC5 0,908 0,8988 0,924 0,915111 0,917 0,910

197 © IT4OD 2014

Page 204: IT4OD 2014 Proceedings

The obtained results are tabulated in Table I, where differentblock sizes are used. It can be seen that the performance ofthe proposed measure change with the block size. When theblock size is decreased the performance will be questionable,but in the inverse case it will be stable.

Fig. 3. plot of DMOS versus quality scores computed by the proposedmeasure (LIVE database)

Fig. 4. plot of DMOS versus quality scores computed by the proposedmeasure (IVC database)

It is very clear that the block size of 8 gives good results.To show the performance of our metric results over other met-rics we have chosen two full reference metrics for comparison,the first is the PSNR (peak signal to noise ratio) and the secondis the SSIM (Structural Similarity Index Measure).Table II and III summarising the the obtained results, wherethe block size of the proposed measure is equal to 8, whileFig.3 and Fig.4 present a plot of DMOS versus quality scorescomputed by the proposed measure.

In Fig.3 (LIVE) and Fig.4 (IVC), it can be seen that mostpoints are closed to the fitted logistic curve, which means thatthe proposed measure satisfies the prediction of DMOS for thetested images.

TABLE II. COMPARISON OF THE PROPOSED MEASURE WITH PSNRAND SSIM USING LIVE DATABASE

Measures CC ROCCPSNR 0,903 0,899SSIM 0,969 0,963Proposed Measure 0,924 0,916

TABLE III. COMPARISON OF THE PROPOSED MEASURE WITH PSNRAND SSIM USING IVC DATABASE

Measures CC ROCCPSNR 0,847 0,850SSIM 0,932 0,929Proposed Measure 0,905 0,897

From Table II, it is very clear that the proposed measureperforms better than the full reference PSNR method, theSSIM measure gives results that are better than those of theproposed measure, but here we must keep in mind that the theproposed measure is no reference.In Table III results obtained from testing conducted on the IVCdatabase are presented, the proposed measure outperform thePSNR metric, while results are competitive to those obtainedfrom the SSIM measure.Now return above to the choice of our characteristics, thechoice of the monotone changing MC activity can be justifiedby its sensitivity to the monotone intensity change, as themonotone intensity change the spread of the MC change, itincreases and decreases , and this can be related to the presenceof blur. When the spread is long it means that the edges tendto be thin, which is equivalent to the presence of Blur andvice versa. For this reason MC activity is typical to measurethe presence of blur.Now for the ringing artefacts, it is well known that ringingoccur around contours and produce ZC activity reflect thestructural information of these contours. For this ZC is adoptedto measure the ringing artifacts.

IV. CONCLUSION

In this work a No-reference IQA measure for theJPEG2000 compressed images has been proposed. It isbased on the natural scene statistics. These statistics are usedto calculate the monotone changing and the zero crossingactivities. A spacial pooling approach has been used toget the global score. As natural images are multi scale, allcalculations are conducted over two scales. Consequently,the obtained results are satisfying, they are in agreementwith human judgements. Future works should be focusedon extending this measure to other types of image degradation.

REFERENCES

[1] P. Marziliano and F. Dufaux, Perceptual blur and ringing metrics:application to JPEG2000, r 2003 Elsevier 3rd ed. Harlow, England:Addison-Wesley, 1999.

[2] H. R. Sheikh and A. C. Bovik and L. Cormack, No-Reference Quality As-sessment Using Natural Scene Statistics: JPEG2000, IEEE transactionson image processing, vol. 14, NO. 11, November 2005.

[3] H.Liuand and N. Klomp, and I. Heynderickx , A No-Reference Metricfor Perceived Ringing Artifacts in Images, IEEE transactions on circuitsand systemes for video technology, vol. 20, no. 4, April 2010 .

198 © IT4OD 2014

Page 205: IT4OD 2014 Proceedings

[4] H. Liu et al , No-Reference Image Quality Assessment Based on LocalizedGradient Statistics: Application to JPEG and JPEG2000, Human Visionand Electronic Imaging XV, edited by Bernice E. Rogowitz, Thrasyvou-los N. Pappas Proc. of SPIE-IST Electronic Imaging, SPIE vol. 7527,75271F 2010.

[5] J.Zhang and Thinh M. Le, A New No-Reference Quality Metric forJPEG2000 Images ,IEEE transactions on consumer electronics, Vol. 56,No. 2, May 2010.

[6] D.Rudermant , The statistics of natural images,Netw. Comput. NeuralSyst, vol.5, no.4, pp. 517-548, 1994.

[7] Z.Wang and X.Shang, Spatial pooling strategies for perceptual imagequality assessment, ICIP, 2006.

[8] A.Mittal, A.Krishna Moorthy, and A.Conrad Bovik, No-Reference ImageQuality Assessment in the Spatial Domain,IEEE Trans.Image Process.,vol. 21, no. 12, December 2012.

[9] Rafael C. Gonzalez and Richard E. Woods , Digital Image Processing, 2002 by Prentice-Hall, New Jersey.

[10] M. Saad, A. C. Bovik, and C. Charrier, Blind image quality as-sessment:A natural scene statistics approach in the DCT domain,IEEETrans.Image Process., vol. 21, no. 8, pp. 3339-3352, Aug. 2012.

[11] Z. Wang, E. P. Simoncelli, and A. C. Bovik, Multiscale structural sim-ilarity for image quality assessmen,in Proc. Asilomar Conf. Signals,Syst.Comput., vol. 2. 2003, pp. 1398-1402.

[12] H. R. Sheikh, M. F. Sabir, and A. C. Bovik, A statistical evalua-tion of recent full reference image quality assessment algorithms,IEEETrans.Image Process., vol. 15, no. 11, pp. 3440-3451, Nov. 2006.

[13] A. Ninassi, P. Le Callet, F. Autrusseau,Pseudo No Reference imagequality metric using perceptual data hiding”, in SPIE Human Vision andElectronic Imaging, vol. 6057-08, San Jose, CA, USA, January 2006. .

199 © IT4OD 2014

Page 206: IT4OD 2014 Proceedings

A SYMMETRIC IMAGE ENCRYPTION SCHEME BASED ON DIAGONAL MATRICES AND THE

XOR OPERATION

Assia Beloucif Department of Computer Sciences

University of Batna Batna, Algeria

[email protected]

Lemnouar Noui Department of Mathematics

University of Batna Batna, Algeria

[email protected]

Abstract—In order to protect numerical images against unauthorized access, cryptography is the main solution which conceives to alleviate such problem. Due to the redundancy and correlation of the image information, conventional encryption methods designed for textual data are not appropriate for image encryption. In this paper we propose a simple fast and secure scheme for image encryption based on the use of sparse matrices according to diagonal matrices and the XOR operation. We describe our algorithm in detail and show its effectiveness, robustness and its resistance to statistical analysis, entropy analysis, key sensitivity attacks and known/chosen plain text attacks. Moreover the proposed method possesses large key space and resists brute force attacks and the implementation of the corresponding algorithm is easy and only integers are used.

Index Terms— Image encryption, confidentiality, Hill cipher, matrix transformation.

I. INTRODUCTION Nowadays, the exchange of information across the internet

has become an essential component in modern society, particularly with the enormous growth of the information technology network. An invaluable type of information that is typically involved in modern communication is that of numerical images which are used in several sensitive domains such as electronic commerce, military affairs and medical records. In order to protect sensitive information against unauthorized access, when they are stoked or transmitted across an insecure network, encryption is the main solution conceives to alleviate such feature.

Due to the redundancy and correlation of the image information, conventional encryption methods designed for textual data like RSA [1], the Data Encryption Standard (DES) and the Advanced Encryption Standard (AES) are not appropriate for image encryption. Hence special interest is needed while encrypting such data [2].According to Shannon [3] confusion (substitution) and diffusion (permutation) are the two primary methods to overcast such high redundancies and strong correlation.

The Hill cipher [4], [5] is a well known symmetric and polygraph cipher based on the modular multiplication of

matrices, where the key is a square and invertible matrix. If a bloc x of size n is the original text, and a square matrix K of size n × n is the secret key for which the determinant is prime with m. The substitution operation in Hill is to have a left multiplication modulo m of the bloc x with the square matrix K. In the decryption operation the ciphered text is multiplied with the inverse matrix K-1

To overcome these problems Sadeenia [8] proposed a method which requires the exchange of a master key matrix only once, which reduces the problem of computing inverse matrices, and tries to prevent known plaintext attacks by using a dynamic key matrix obtained by random permutations of columns and rows of the master key matrix. However it is still vulnerable to known-plaintext attacks [9]. Another Hill modification is proposed in [10], is based on the modification of each row of the matrix key by multiplying the current key by an initial vector, however the proposed algorithm is vulnerable to known/chosen plain-text attacks [11].In reference [12] the authors suggested the use of self-invertible matrices in a modified Hill encryption which resists chosen plaintext attacks. However the proposed scheme is slow. Another modification of the Hill cipher based on the use of a circulant matrix as a secret key and a non-singular matrix as a public key is proposed in [13]. However we have find that it is clear that this proposed scheme is vulnerable to known-plaintext attack with only one chosen plain-text by choosing the plain image of all-zero. Another Hill cipher modification based on pseudo-random-eigen Values have been proposed recently in [14]. The security of the scheme against the known/chosen plain text attacks is based on the use different key, for the encryption of each plaintext.

of the key K. Hill cipher can hide frequency information, thus it can resist statistical analysis, it has a large key space and it can resist brute-force attacks [6]. It is strong against a ciphertext-only attack, but it is easily broken with a known plaintext attack [7]. However the need to the generation of a large invertible key-matrix and calculate its inverse is another obstacle against the use of this cipher in practice.

Another category of image encryption is based on using the advantages of chaotic systems which have high amount of non-

200 © IT4OD 2014

Page 207: IT4OD 2014 Proceedings

linearity. Arnold cat map is often used to shuffle the positions of the pixels in many cryptosystems [15], [16], but the map has two weaknesses, one is that the iteration times are very limited, usually less than 1000 times. Many other chaos-based image encryption algorithms have been proven to have the security weakness by cryptanalysis [17], [18], [19], and [20]. For example, they are incapable to resist the chosen-plaintext attacks.

In this paper we propose a simple and fast algorithm for image encryption; our proposed algorithm is based on the use of matrix transformation and the XOR operation. We perform some security analysis to prove that the key space of the new algorithm is sufficiently large thus making the brute-force attack infeasible. Simulation results illustrate that suitable performances are achievable in our proposed algorithm. Results show that our image encryption algorithm out performs current image encryption algorithms in terms of security, sensitivity and speed. Hence, based on the achieved results, we can highly state that the proposed scheme best matches the real-time image encryption and transmission applications.

The rest of this paper is organized as follows. Section 2 presents the basic concepts. In Section 3 we give an overview of the proposed algorithm. In Section 4 we discuss and analyze the security enhancement of the proposed solution, we conclude the paper in Section 5.

II. BASIC CONCEPTS

A. Diagonal matrix Let D (D1, D2, … ,Dn) be an n × n matrix with entries in a

field K. D is defined as diagonal matrix if the diagonal entries D(i, i) are arbitrary chosen as D1, D2, … ,Dn, otherwise D(I, j) = 0. Thus a diagonal matrix can be written as:

B. Inverse of a diagonal matrix Since a matrix is invertible if its determinant is not null, and

the determinant of a diagonal matrix is the multiplication of the diagonal entries, then its sufficient to verify that none of the diagonal elements are zero. And D-1 (D1, D2, … ,Dn) the inverse of D (D1, D2, … ,Dn), can be written as:

III. PROPOSED ALGORITHM The detailed encryption algorithm is described below and

the block diagram for the encryption process is presented in Fig.1.

Step.1 Firstly, a diagonal matrix D(S) and its inverse D-1(S) are constructed, where S (S1, S2, … ,Sn

) of size n is a preferably random secret-key vector (having all entries odd).

Step.2 Let I be the original image of size n × n. Compute the pixel gray value in the cipher-image by a two point diffusion transmission:

(1)

Here the symbol ⊕ represents the exclusive OR operation bit by- bit. Step.3 The obtained image Í is multiplied left by the diagonal matrix D(S) and right by the matrix D-1

(S).

(2)

Step.4 Repeat step.2 one time using the obtained matrix C

IV. PERFORMANCE ANALYSIS A gray image Lena with 256 × 256 pixels is regarded as an

original image. Numerical simulations have been performed to verify the performance of the proposed encryption scheme. Moreover four comparable cryptosystems are also investigated, and the performance of these five image encryption schemes is compared. Figure 3 shows that the proposed algorithm can encrypt images that contain large areas of a single color.

A. Key space and sensivity analysis In the proposed cryptosystem, the vector S of size 256 is

used as secret key, where 256 × 256 is the size of the square original-image, and each odd value, of the vector, is coded on 7 bits. Then the key space can reach 27×256

In another side a robust image encryption scheme should be sensitive to the cipher key. To evaluate the key sensitivity analysis, tow slightly different keys are used in the test where the difference between them is 1 and they are used to encrypt the plain-image Lena using the different schemes. The two ciphered images, encrypted by the two slightly different keys, are compared in table 1.

. It is large enough to make any brute force attack ineffective.

There is a 99.62% difference between the two cipher-images. Moreover if a slightly modified key is used to decrypt the cipher-image, the decryption fails completely. The test results are shown in Fig.3.

B. Differential attack To find out the relationship between the original image and

the encrypted image an opponent makes a slight change of plaintext in order to test the influence of changing a single pixel in the original image on the encrypted image. This kind of attack is called differential attack. In order to test the

201 © IT4OD 2014

Page 208: IT4OD 2014 Proceedings

Fig. 1. The block diagram for the proposed algorithm.

Fig. 2. Original images (a, c) and the corresponding encrypted images (b, d) using the proposed algorithm.

TABLE I. KEY SENSITIVITY ANALYSIS USING THE DIFFERENT SCHEMES

Hill[4] Saeednia[8] Ismail[10] Reddy[13] Proposed algorithm

Difference (%)

0.7796 0.1953 0.1953 99.86 99.6201

influence of a one-pixel change on the cipher-image, two common quantitative measures are used: Number of Pixels Change Rate (NPCR) and Unified Average Changing Intensity (UACI) [21]. They are defined as follows:

(3)

(4)

Here W and H represent the width and the height of the image respectively. C1(i, j)and C2(i, j)are respectively the encrypted images before and after one pixel of the plain image is changed. For the pixel at position (i, j), if C1(i, j) ≠ C2(i, j), let f(i, j) = 1; else let f(i, j) = 0.

Two plain-images are used in the tests. The first image is the original plain-image Lena, and the other is obtained by changing the value of the last pixel with a difference of 1. Then the two images are encrypted with the same key to generate the corresponding cipher-images C1 and C2

C. Statistical analysis

, and average NPCR and UACI values, using the five algorithms, are listed in Tab. 2.

As can be seen from the simulation results, the proposed algorithm achieves a high performance and the proposed algorithm can resist the differential attack, however the other schemes cannot resist them.

1) Histogram analysis An image histogram illustrates the distribution of the pixels

values in an image. The result of the encryption of the image Lena with the proposed algorithm is performed, and then plots the histograms of plain-image and cipher-image as shown in Fig.3 (b) and (d), respectively. The histogram of the ciphered-image show the distribution uniform of the pixels value after the encryption hence it does not provide any useful information for the opponent.

2) Correlation between adjacent pixels analysis For a usual image, each pixel is highly correlated with its

adjacent pixels. An ideal encryption technique should produce the cipher images with no such correlation in the adjacent pixels. In this section, correlation coefficient of two adjacent pixels in original image and encrypted image is studied. We have analyzed the correlation between two vertically adjacent pixels, two horizontally adjacent pixels, and two diagonally adjacent pixels. 2000 pairs of two adjacent pixels (in horizontal, vertical, and diagonal direction) from plain-image Lena and its cipher-image were randomly selected and the correlation coefficients were calculated using the following equations:

(5)

202 © IT4OD 2014

Page 209: IT4OD 2014 Proceedings

Fig. 3. Histogram analysis. (a) histogram of Lena and (b) histogram of ciphered Lena.

TABLE II. NPCR AND UACI VALUES USING THE DIFFERENT SCHEMES

Hill[4] Saeednia[8] Ismail[10] Reddy[13] Proposed algorithm

NPCR (%)

0.1934 0.1945 0.1938 0.0517 99.6201

UACI (%)

0.0661 0.0641 0.0640 0.0335 33.4672

(6)

(7)

Where x and y are grey-level values of the two adjacent

pixels in the image. Table 3 lists the correlation coefficients of the image Lena and its cipher-image.

The results of the measured correlation coefficients of the plain-image are nearly 1 while those of the cipher-image are close to 0.This indicates that the proposed algorithm has successfully removed the correlation of adjacent pixels in the plain-image. Figure 4 shows the correlations of two diagonally horizontally and vertically adjacent pixels in the plain- image and cipher-image and it is clear that neighboring pixels in the cipher-image virtually have no correlation.

D. Information entropy analysis Information entropy is the most important feature of

randomness. Let m be the information source. The formula for calculating information entropy is:

Fig. 4. Horizontally, diagonally and vertically correlations of

two adjacent pixels in the plain-image and in the cipher-image: (a), (c), and (e) are for the plain-image; (b), (d), and (f) are for the cipher-image.

TABLE I. CORRELATION COEFFICIENTS OF TWO ADJACENT PIXELS USING THE PROPOSED SCHEME

Plain-image Cipher-image Horizontal 0.9680 0.0021

Vertical 0.9319 0.0014 Diagonal 0.9089 0.0030

(8)

For a truly random source emitting 2N

E. Resistance to known/chosen plain-text attacks

symbols, the entropy is H(m) = N. Therefore, for a ciphered image with 256 gray levels, the entropy should ideally be H(m) = 8. The entropy value of the ciphered-image, using our proposed method, is 7.9971. So the system can resist entropy attacks.

Generally, chosen plain-text attack is the most powerful classical attack. If a cryptosystem can resist this attack, it can resist the other types of classical attacks. In the proposed algorithm the attacker cannot obtain useful information by encrypting some special images, like All-zeros image and the image whose pixels represent the identity matrix, since the encryption of a pixel is related to the plain-images. There- fore, the proposed scheme can effectively resist known plain- text

203 © IT4OD 2014

Page 210: IT4OD 2014 Proceedings

and chosen plain-text attacks described for the Hill cipher in [7], [22].

V. CONCLUSION In this paper a new fast, simple image encryption algorithm

is proposed. The analysis shows that the proposed cryptosystem has a higher security against brute-force attacks due to an extremely large key space.

Simulation results show the effectiveness and the security of our proposed scheme; against statistical analysis, brute force attack and key sensitivity attacks and differential analysis. Hence, based on the achieved results, we can highly state that the proposed scheme best matches the real-time image encryption and transmission applications.

VI. REFERENCES [1] Ronald L Rivest, Adi Shamir, and Len Adleman, “A

method for obtaining digital signatures and public-key cryptosystems,” Communications of the ACM, vol. 21, no. 2, pp. 120–126, 1978.

[2] Andreas Uhl and Andreas Pommer, Image and video encryption: from digital rights management to secured personal communication, vol. 15, Springer, 2005.

[3] Claude E Shannon, “Communication theory of secrecy systems*,” Bell system technical journal, vol. 28, no. 4, pp. 656–715, 1949.

[4] Lester S Hill, “Cryptography in an algebraic alphabet,” The American Mathematical Monthly, vol. 36, no. 6, pp. 306–312, 1929.

[5] Lester S Hill, “Concerning certain linear transformation apparatus of cryptography,” The American Mathematical Monthly, vol. 38, no. 3, pp. 135–154, 1931.

[6] Jeffrey Overbey, William Traves, and Jerzy Wojdylo, “On the keyspace of the hill cipher,” Cryptologia, vol. 29, no. 1, pp. 59–72, 2005.

[7] William Stallings, Network and internetwork security: principles and practice, Prentice-Hall, Inc., 1995.

[8] Shahrokh Saeednia, “How to make the hill cipher secure,” Cryptologia, vol. 24, no. 4, pp. 353–360, 2000.

[9] Chu-Hsing Lin, Chia-Yin Lee, and Chen-Yu Lee, “Comments on saeednia’s improved scheme for the hill cipher,” Journal of the Chinese institute of engineers, vol. 27, no. 5, pp. 743–746, 2004.

[10] IA Ismail, Mohammed Amin, and Hossam Diab, “How to repair the hill cipher,” Journal of Zhejiang University SCIENCE A, vol. 7, no. 12, pp. 2022–2030, 2006.

[11] Y Rangel-Romero, R Vega-Garcıa, A Menchaca- Mendez, D Acoltzi-Cervantes, L Martınez-Ramos, M Mecate-Zambrano, F Montalvo-Lezama, J Barr´on- Vidales, N Cortez-Duarte, and F Rodrıguez-Henrıquez, “Comments on

how to repair the hill cipher,” Journal of Zhejiang University SCIENCE A, vol. 9, no. 2, pp. 211–214, 2008.

[12] Bibhudendra Acharya, Sambit Kumar Shukla, Saroj Ku- mar Panigrahy, Sarat Kumar Patra, and Ganapati Panda, “Hsx cryptosystem and its application to image encryption,” in Advances in Computing, Control, & Telecommunication Technologies, 2009. ACT’09. International Conference on. IEEE, 2009, pp. 720–724.

[13] K Adinarayana Reddy, B Vishnuvardhan, AVN Krishna, et al., “A modified hill cipher based on c irculant matrices,” Procedia Technology, vol. 4, pp. 114–118, 2012.

[14] Ahmed Mahmoud and Alexander Chefranov, “Hill cipher modification based on ps eudo-random eigenvalues.,” Applied Mathematics & Information Sciences, vol. 8, no. 2, 2014.

[15] Medina Ablikim, ZH An, JZ Bai, Niklaus Berger, JM Bian, X Cai, GF Cao, XX Cao, JF Chang, C Chen, et al., “Design and construction of the besiii detector,” Nuclear Instruments and Methods in Physics Research Section A: Accelerators, Spectrometers, Detectors and Associated Equipment, vol. 614, no. 3, pp. 345–399, 2010.

[16] Jun Wei, Xiaofeng Liao, Kwok-wo Wong, and Tao Xi- ang, “A new chaotic cryptosystem,” Chaos, Solutions & Fractals, vol. 30, no. 5, pp. 1143–1152, 2006.

[17] Rhouma Rhouma and Safya Belghith, “Cryptanalysis of a new image encryption algorithm based on hyper-chaos,” Physics Letters A, vol. 372, no. 38, pp. 5973– 5978, 2008.

[18] Xin Ge, Fenlin Liu, Bin Lu, and Wei Wang, “Cryptanalysis of a spatiotemporal chaotic image/video cryptosystem and its improved version,” Physics Letters A, vol. 375, no. 5, pp. 908–913, 2011.

[19] Chengqing Li, Shujun Li, Guanrong Chen, and Wolf- gang A Halang, “Cryptanalysis of an image encryption scheme based on a compound chaotic sequence,” Image and Vision Computing, vol. 27, no. 8, pp. 1035–1039, 2009.

[20] Hong Liu and Yanbing Liu, “Cryptanalyzing an image encryption scheme based on h ybrid chaotic system and cyclic elliptic curve,” Optics & Laser Technology, vol. 56, pp. 15–19, 2014.

[21] CK Huang and HH Nien, “Multi chaotic systems based pixel shuffle for image encryption,” Optics Communications, vol. 282, no. 11, pp. 2123–2127, 2009.

[22] Craig Bauer and Katherine Millward, “Cracking matrix encryption row by row,” Cryptologia, vol. 31, no. 1, pp. 76–83, 2007.

204 © IT4OD 2014

Page 211: IT4OD 2014 Proceedings

An Improved CUDA based Hybrid Metaheuristic for Fast Controller of an Evolutionary Robot

Nour EL-Houda BENALIA* LESIA Laboratory

Biskra University, Algeria n.benalia@ univ-biskra.dz

Nesrine OUANNES LESIA Laboratory

Biskra University, Algeria [email protected]

NourEddine DJEDI LESIA Laboratory

Biskra University, Algeria [email protected]

Abstract— Simulation of sophisticated biological models requires considerable computational power. Modern GPUs (Graphic Processor Units) enable widely affordable personal computers to carry out massively parallel computation tasks. These new devices opens up the possibility of developing more integrative, detailed and predictive biological models, while at the same time decreasing the computational cost to simulate those models. This work demonstrates that GPU algorithms represent a significant technological advance for the simulation of complex biological model. Our model is a hybridization of an EA (evolutionary algorithm) and RNN (recurrent neural network) that is developed and tested to generate optimal trajectories of an humanoid robot simulated using the library named ODE (Open Dynamic Engine), using GPU Accelerator at multiple levels, taking into consideration an effective utilization of GPU memory hierarchy, judicious management of parallelism, and some techniques of optimizations of GPU codes. The model was derived from our CPU serial implementation. This paper presents the implementation details of our proposal on a PC with 2 GTX 480 GPUs. Since EA and RNN are inherently parallel, the GPGPU computing paradigm leads to a promising speedup in the evolutionary phase with respect to the CPU based version.

Index Terms— Artificial life, Parallel Evolutionary Algorithms, Robotics, GPU.

I. INTRODUCTION The recent advances of the new programming for graphical

processing units (GPU) open up the possibility of developing more integrative, detailed and predictive bio-inspired and artificial life models while at the same time decreasing the computational cost to simulate those models.

A simulation modeling is continuously evolving in terms of constraints and objectives, and their resolution takes many hours or even days to execute tends to inhibit the exploratory nature of modeling just due to the limits of available time. This is heightened by the fact that these co mplex models can also have many additional parameters which must be considered for their role in the beha vior of the model. For t hese reasons, considerable effort is put into technologies, methodologies and theoretical advances in order to speed up execut ion without sacrificing model accuracy [1][9].

Nowadays, many algorithms are rewritten and redesigned for modern graphics cards (GPUs) [2] which have a SIMD massive parallelism. On the other hand, the availability of new appropriate development environments tends to further

simplify the development of parallel applications for this type of processors, which has been recently used to accelerate computations for various topics.

Researchers in biom echanics, robotics, and c omputer science work to understand human natural motion in order to reproduce it in other forms. The ai m of humanoid robotic researchers is to obtain robots that can imitate the human behaviors to collaborate, in the best way, with humans. An obvious problem confronting humanoid robotics is the generation of stable and effi cient gaits at a reasonable time. Thus, in order to address this problem, alternative, biologically inspired control methods have been proposed in [3], which do not require the specification of reference trajectories.

Researchers have exa mined alternative hardware A NN (Artificial Neural Network) solutions using FPGAs (Field-programmable gate array) and GPUs that deliver a fine-grained parallel architecture. The authors in [4], highlight that FPGA approaches have several limitations such as inefficient area utilization and a Man hattan style interconnect. However, [5] indicates that the proble m of accessing memory in a c oherent manner and l imited memory bandwidth, are major drawbacks for ANNs based on GPU platforms, but these drawbacks can be eliminated with the new architectures and optimization code techniques of NVIDIA as mentioned in the rest of paper.

Our new system brings different contributions and salient issues are dealt with the acc eleration of an already proposed method [3] which is the combination of an EA and a RNN which composes the brain of our robot. Evolutionary computation is perfectly well suited for efficient execution on massively parallel GPGPU card s. This paper shows how to implement using GPU algorithms an im proved technique to accelerate the process of the controller’s robot in GPUs that executes more times faster than conventional CPU co de. Furthermore, we provide a set of generi c guidelines for GPU programming that allow modelers to take advantage of GPUs while avoiding many pitfalls associated with the architecture.

The remaining of this paper is org anized as follows. Section 2 intr oduces GPU com puting using CUDA f ollowed by a descri ption of the type of t he neural network, the evolutionary algorithm used, t hen an e xplication about the sample of de monstration in Section 3. Our proposed and improved CUDA-based approach is detailed in Section 4 with experimental results described and analyzed in Section 5. And at last, Section 6 draws conclusions with some perspectives.

205 © IT4OD 2014

Page 212: IT4OD 2014 Proceedings

II. BACKGROUND AND RELATED WORK

A. CUDA Model Programming

Nowadays, user friendly APIs suitable for general-purpose GPU computing have been developed in order t o reduce programming difficulties. NVIDIA’s CUDA (Compute Unified Device Architecture) technology provides a parallel computing architecture on modern NVIDIA’s GPUs on which hundreds of streaming processors (SPs) are grouped into several streaming multiprocessors (SMs) with own fl ow control and on -chip shared memory units. All S Ms share a g lobal memory with high latency. The number of SMs, the size of global memory, number of SPs, the size of shared memory and the number of registers depend on GPU’s compute capability [7].

The sequential operations should be programmed as host functions that execute on t he CPU. Thus, pa rallelizable operations should be pr ogrammed as a kernel or device functions that execute on t he GPU. Both host and kernel functions will be wrapped and called via a main host function.

In CUDA environment, the basic unit of a paral lel code on CUDA is a thread, thousands of threads can run concurrently with a same instruction set. Each thread runs a sa me program called a “kernel”. A kernel can em ploy “registers “as fast access memory. The communication am ong threads ca n be performed with a shared m emory, which is a type of very fast memory that allows both read and write accesses.

A set of threads can be bundled into a grid of thread blocks with each block containing a fi xed number of threads. The blocks’ grid can have up t o three dimensions. Its size is denoted by a predefined struct variable gridDim with three fields x, y and z storing the block numbers in three dimensions respectively. Each block in a gri d can be i ndexed by a predefined struct variable blockIdx with three fields x, y and z storing the position of the corresponding block in the grid. The block can have up to three dimensions of threads with its size denoted by a predefined struct variable blockDim having three fields x, y and z storing the thread numbers in three dimensions respectively. Each thread in a bl ock can be i ndexed by a predefined struct variable threadIdx with three fields x, y and z storing the position of the corresponding thread in the block.

The communication between CPU and G PU can be do ne through global device memory, constant memory, or t exture memory on a GPU b oard. After compilation by the CUDA environment, a program runs as a “kernel” in a GPU. A kernel takes input parameters, conducts computations, and outputs the results to device memory where the result can be read by the CPU. Each thread must perform the same operation in the kernel, but the input data can be di fferent. With thousands of threads doing similar tasks simultaneously, the computation speed can be significantly improved. The CPU owns the host code that pre pares input data and accepts output values from the GPU. The intensive computation task is h andled by GPU kernels. The output data is written to global device memory in order to be ret rieved by a CPU program. For ful ly comprehensive description, the reader i s referred to CUDA C Programming Guide [17] and similar resources.

B. ANN: Serial vs parallel GPU-based

ANN has been part of an atte mpt to emulate the learning phase of the human nervous system. However, the main difference arises from the f act that the nervous syste m is massively parallel [10] while the computer processor remains significantly sequential. Since ANN requires a considerable number of vector and matrix operations to get results, it is very suitable to be im plemented in a paral lel programming model and run on GPUs. But few studies have appl ied CUDA to neural networks as this subject requires further investigation in applying the CUDA techn ology to neural computation and robotics research [11][12].

Various types of neu ral networks are used to generate walking behaviors and control design of humanoid robots. The majority of the proposed control algorithms have been verified by simulation, while there were little experimental verification on real biped and hum anoid robots. Our system is based on simulation of a recurrent neural network (RNN) system benchmark using the evolutionary algorithm for l ocomotion behaviors, for more details [3].

Evolution strategy is used as an opt imization process to evolve neural networks that prove to be r obust solutions to difficult real-world learning tasks without the need t o supply additional information or f or an external agent to direct the process. For this task, we must exploit a big recurre nt neural network to connect to simulated muscles as a prop rioceptive and a motor system in a humanoid robot with tens of degrees of freedom. The neu ral network must possess m ore than thousands of neurons because it is easier to extract and set the correct information for each join t [12]. More details about the parts of the RNN or of the ES which will be on the GPU will be in the next sections.

C. GPU-based Evolution Strategy (ES) as an ANN Training Process: Serial vs parallel GPU-based

EAs are ideal for their use on a parallel computing platform due to a multitude of reasons [13]: Since the evaluation of individuals is an independent

event, the evaluation task can be performed in a pa rallel manner.

Most EA operators involve one or two solutions, thereby making them ideal for a parallel implementation.

ES is one the most popular methods of the EA. In our case, it uses pop ulations of ca ndidate solutions to simultaneously explore the search space of ANN parameters.

Most works on the GPU are implemented with the CUDA development toolkit, which allows programming on GPUs in a more accessible C-like language. In their investigation, Arora et al. presented an im plementation based on CUDA toolkit for genetic algorithms [13]. The contribution associated with their work is to study the effect o f a set of para meters (e.g. th read size, problem size or popul ation size) on t he performance of their GPU implementation in reference to a sequential genetic algorithm (GA).

Pospichal et al. adopted a parallel GA with an island model for implementation running on GPU with 256 individuals in each island [14]. The authors' design based on mapping threads

206 © IT4OD 2014

Page 213: IT4OD 2014 Proceedings

to individuals, and usi ng the on-chip hardware scheduler in order to rapid exchange existing islands between multiprocessors to hide memory latency and shared memory within the multiprocessor is used to maintain populations. The authors report speedups up to 7000 times higher on GPU compared to the CPU sequential version of the algorithm. Oiso et al. [15] proposed a t echnique exploiting the parallelism between individuals and ge nes simultaneously. The prop osed implementation method yielded approximately 18 times faster results than a CPU implementation of t heir benchmark tests. Kromer et al. [16] proposed a t echnique using the same analogy with the previous one, b ut for the differential evolution. With the help of the CUDA toolkit, the fitness of the schedules was evaluated 2.2 - 12.5 fast er than on t he CPU using C code and 25 .2 - 2 16.5 times faster than on t he CPU using object oriented C++ code.

D. Sample of Demonstration: Humanoid Robot Model and Data Storage

Our demonstration is based on a model of robot that was created from primitives available in ODE sim ulation package, which deliver very controlled environment without obstacles.

A physically-based model of bipedal locomotion describes the nonlinear relationships between the forces, the moments acting at ea ch joint, the feet, th e position, velocity and the acceleration of each j oint angle. In addition to the geo metrical data, a dynamic model requires kinematical data mass, center of mass and inertia matrix for each link a nd joint, max/min motor torques and joint velocities) which are difficult to obtain and are often an overlooked source of simulation inaccuracy. All these data are co pied into Main memory of the GPU in order to make the largest possible computation on it.

To simulate interaction with the environment detection and handling of collisions as well as suitable models of foot ground contacts are required. For more information about the model of our legged robot, table 1 has more details.

TABLE 1. BODY PARAMETERS OF THE ROBOT

Body part Geometry primitive Dimension (m)

Head Sphere Radius: 0.188

Arm Caped cylinder 0.14 x 0.25 x 0.44

Torso Rectangular box 0.9 x 0.25 x 1.0

Thigh Caped cylinder 0.20 x 0.25 x 0.7

Shank Caped cylinder 0.20 x 0.25 x 0.7

Foot Rectangular box 0.4 x 0.5 x 0.1

III. GPU-EVOLUTIONARY ROBOT CONTROLLER DESIGN Over the past decade, physics-based simulation has become

a key enabling technology for different applications. It has taken a front seat role in computer games, animation of virtual worlds and robotic simulation. Physics engines are considered one of the most important of a m ultitude of com ponents requesting CPU time. While some areas require high accuracy, others speed o f simulation is more important. To at tend this demand of ac celeration, some physics engines are already

using GPU acceleration like rigid body colli sion detection and particle interaction.

In our proposal, we adopt ed the GPGPU architecture proposed by Zamith and al [18], where the GPU is used as a mathematics and physics coprocessor. The humanoid robot presented in this paper uses Elman Recurrent Neural Network for its biological plausibility and powerful memory capabilities. Furthermore, biological neural networks do not make use of back pr opagation for l earning. Instead, we use EAs t o evolve locomotive behaviors. In this work, we exploit the parallelism at a h igher level, so we form groups of threads to handle a si ngle chromosome which corresponds to each robot. In this paper, we focus on the technical details about the implementation of the EA, Other details about RNN and ODE on GP U is out of sco pe of this work.

Moreover, the initialization of the first population is done in parallel, which means that all th e RNNs are in itialized and activated in parallel. We should mention here that an efficient mapping of the population is very important because the occupation rate of t he graphics cards is a factor that directly affects the overall perform ance. In order to simplify kernel invocations, and saves memory bandwidth, EA parameters will be copied to the GPU constant memory.

Our EA population is laid out in main memory of GPU, as a two dimensional N x L matrix such that columns refer to chromosomes and rows correspond to genes within chromosomes, where N is population size and L is chromosome length, taking into consideration that storing variables of o ne individual sequentially in an array does not permit efficient memory access, so, to rea ch the coalescing memory, variables of one t ype and owned t o different individuals of the population are stored adjacently in buffers.

IV. TECHNICAL IMPLEMENTATION OF THE EVOLUTIONARY TRAINING PROCESS

The key, for an efficient im plementation of the genetic manipulation kernel, is a low divergence and enough data to utilize all the CUDA cores.

The purpose of the EA i s to optimize the weights of t he RNN which controls the humanoid robot. A sy nergistic relationship exists between the EA and t he RNN as shown in figure 1. The EA optimizes the RNN, and the RNN produces robot behavior that is then scored. At start-up, the population’s chromosomes are initialized to random with 1 gene per RNN weight. The n umber of conn ections represents the number of genes in the chromosome; a fl oating-point number represents each gene.

Our system is equipped with three modules as shown i n figure 2, where the first one is Simulation World Module which is responsible of simulation task i n ODE environment taking into consideration all physics laws required. The second one is Brain Module, which create the robot’s brain using the RNN. The last one i s the principle module of this paper (Evolution Module), where we try to implement all the EA phases on the GPU as kernels.

207 © IT4OD 2014

Page 214: IT4OD 2014 Proceedings

To find the best Parameter Configuration (Block shape, total number of threads) of our kernels, we apply an algorithm to find the best Parameter Configuration (Block shape, Total number of threads) of our kernels, we apply an al gorithm which measure the time of ea ch configuration to select at the end the most appropriate one and at the same time maximize the occupancy of the used card, analyze the performance of the algorithm is out of the scope of this work.

Next subsections are dedicated to describe the CUDA kernels and the techniques used in the implementation phase.

A. Random Number Generation

One of the factors which affect the p erformance of evolutionary algorithms is the generation of random numbers because theses algorithms are stochastic search processes.

However, CUDA libraries do not include any functions of a random number generator (RNG) at present, despite the fact that RNG is naturally necessary for executing GA processes. In order to generate random numbers in our application, we use Random123 library of “cou nter-based” random number generators (CBRNGs). The Random123 library can be used with the CPU (C and C++) and the GPU (CUDA and OpenCL) applications. This library is c hosen due to the fastness of its generator (three times faster than the standard C rand function and more than 10 tim es faster than the CUDA cuR and generator [19].

B. Population Initialization Kernel

As mentioned above, t he elements of each chr omosome represent the weights of the RNN, the operation of getting these values is fully parallelizable and all chromosomes are initialized at the same time. This phase is performed by block of thread for each chromosome, as shown in figure 3.

Fig.1. Configuration of RNN and EA with ODE on GPUs.

Fig.2. The main classes of the proposed model.

C. Selection and Evolutionary process kernel

Based on t he fitness values of the population members, population chromosomes will be sorted. We adopted two types of selection process Roulette Wheel selection and tournament selection performed by one thread in a block.

The crossover kernel used is a one poi nt crossover. These necessary exchanges between the two individuals. So, the number of bl ocks in the kernel is (PopSize/2). Each bl ock is kernel performs this process with two individuals to make the divided into two dimensions. The x di mension represents the genes of one chromosome, while the dimension Y represents the population of chromosomes. As t he previous one, the kernel allocates an individual to a block and gene to a thread. The same decomposition is used, so each thread corresponds to a gene and decides if this gene will be mutated or not.

D. Fitness function kernel

The fitness function is based on t he distance travelled by the robot within a fixed time period. The best one is the robot who is able to travel the largest distances in a given time. The same decomposition as t he evolutionary process i s used, where we copy each block to shared memory, in order to calculate the distance in the GP U. To do that, we need to transfer a buffer of the ini tial positions and the reached positions for the whole population to the global memory.

E. Replacement kernel

This phase uses Roulette Wheel selection over the parents and offspring to create the new parent population. The kernel parameters used is th e same as the previous phases with one modification which is that the dimensions of t he kernel are derived from the parent population size.

F. Statistics kernel

The last kernel in the evolutionary algorithm is that of statistics. The statistics of the population is used for t he selection process and for t he termination of the decision. The maximum and minimum values of the fitness, the average and the deviation constitute the structure of the statistical data.

Simulation World

GPU_Organism

GPU_Humanoid

GPU_Brain GPU_Neuron

Neural Net

GPU_Evolution

GPU_Parameters

GPU_ Individuals

GPU_Statistics

Brain

Evolution

ODE

CPU GPU

Start

End

PCI-Express

Kernels

Solutions

Kernel functions

RNN

EA

Sen

sors

Eff

ecto

rs

Terminate ?

Init & copy of rigid bodies on GPU (Global Memory)

Physic simulation & EA

EA Parameters Initialisation (Constant Memory)

RNN Activation Function kernel

Fitness Kernel

Evolutionary Process

Replacement Kernel

Statistical Kernel

Alg

orit

hm

of

Opt

imiz

atio

n T

rans

fers

A

lgor

ith

m o

f Th

read

sDis

tribu

tion

208 © IT4OD 2014

Page 215: IT4OD 2014 Proceedings

Fig.3. Block threads chromosome mapping.

V. EXPERIMENTS AND DISCUSSION We first pres ent the co mputational performance of our

algorithms for controller training, followed by the estimated evolution performance of the brain evolution.

The first goal of this study is to demonstrate the potential of using GPU devices for an Evol utionary Algorithm used t o evolve a recurrent neural network, which composes the brain of the humanoid robots simulated by the ODE physics simulator.

A. Experimental Setup and problem configuration

To evaluate the perform ance of our syste m, we compared the execution time of a seque ntial algorithm on a commodity CPU and an optimized algorith m on comm odity GPUs. Our objective was to estimate the speedup of our algorithm with respect to sequential without using the CPU's multiprocessing capabilities. Experimental hardware is shown in Table 2.

The present demonstration of the GPU-CPU differences in performance is to have a general idea to which GPUs outperforms CPUs. The res ults of t his Implementation are compared to the sequential one . The algorithms implemented using C/C++ and C UDA (4.0) and run experiments on t he Fermi architecture (GTX480).

B. Performance Results

Figure 4 shows the experimental results of t he GPU and CPU implementations on different phases of t he EA. The performance of this graph is the result of 25 trials. GPU with the proposed implementation method yielded a speedu p ratio of 4.68 - 11,36 times compared to the CPU im plementation method. It is notable that parallelizing the process of both chromosomes and their genes is more effective. This is due to the fact that the implementation enables the execution of more threads, and the execution of the most EA process can suppress the frequency of data transfer between the host and the device, which is the biggest challenge in any application on the GPU.

TABLE 2. Environment of experimentation.

Legend Label Hardware Clock Free RAM

OS

X86 Intel® Core (TM) i7-870 2.93 GHz 8.00 Go Windows7

GTX480 2 NVIDIA GTX 480 924 MHz 4.00 Go Windows7

Fig.4. CPU vs GPU time of EA phases.

After discussing the difference between the results of the GPU and CPU i mplementations, we will see the influence of some parameters on the entire perform ance. The occupation time and memory (shared memory or registers) of the Distance function is longer than the other Kernels in the two cases (n = 512) and (n = 1024), the reason behind this phenomenon is that the elements of calculating the Fitness kernel are coming from the physic simulation performed by The ODE.

Figure 5 sh ows the experimental results of t he GPU and CPU implementations on different generation of the EA. The global performance of our syst em increases, according to the augmentation of the number of individuals in the totality of the population.

1) Performance discussion in Terms of Efficiency and

Effectiveness For each step of the simulation on the physics sim ulator, a

trend mono-core CPU implementation, a C PU-GPU, and a CPU-GPU version using constant memory for savi ng ES parameters are considered. The average time has been measured for 25 trials. A verage values of the evaluation function have been collected and the number of successful tries is also represented. Since the computational time is exaggerated to 100 generations and more, the average expected time for the CPU implementation has been deduced fr om the base of two executions.

Generate and evaluate the chromosomes in parallel on GPU provides an efficient way to speed up the evolution and the search process in comparison with a single CPU. As shown in the figure, the GPU version has been already faster than the CPU one (order of accelerati on of 9X). As long as the population size increases, remarkable speedup is shown. Due to high misa ligned accesses to global memories, non- coalescing memory reduces the perform ance of the GPU implementation. To overcome the problem and to reach the coalescing memory, variables of one t ype and ow ned to different individuals of the population are stored a djacently in buffers. GPU keeps accelerati ng the hybrid evolutionary process as long as the size increases. Regarding the quality of solutions, in comparison with the sequential one, the obtained results by the proposed hybrid ES is quite competitive.

The conclusion from this experiment indicates that the use of GPU provides an efficien t way to deal with this kind of application where a lot of para meters are considere d (ex. simulator parameters, RNN parameters, and ES parameters).

209 © IT4OD 2014

Page 216: IT4OD 2014 Proceedings

Fig.5. Global system execution on CPU and GPU.

Fig.6. Global system execution speedup

So, implementing training on a GPU has allowed to exploit parallelism in such application improve the robustness/quality of provides solutions, and as this problem takes into account a bench of parameters, the order of acceleration achieved is very promising to go t hrow the optimization methods (using streams,…), tuning the parameters of t he EA o n the GPU device, using the multi-GPU,…etc.

VI. CONCLUSIONS AND FUTURE WORK The first o bjective of this study is to demonstrate the

potential of using GPU devices for an Evolutionary Algorithm used to evolve a recurrent neural network which composes the brain of the humanoid robots simulated by a physic simulator. Meanwhile, after analyzing the problem, we found that it will be more suitable if we implement some parts of the physic simulator and the RNN on the GPU.

This work has successfully performed the steps cited by implementing an optimized brain (c ontroller) that can distribute some of i ts processing between GPU and CPU, allowing the developer of an automatic mode to decide where to process the computations. As future work, we could improve the accuracy of our techniqu e by incorporating tuning parameters kernel methods and t esting another ANNs with other evolutionary training methods. Additionally, parallelization techniques of evolutionary algorithms involving multiple populations [8] may interact favorably with such type of applications. Separate populations (GPU-based evolutionary algorithm island model) may be trained on different subsets of the training data, allowing a more methodical search of the solution space presented by the training set.

VII. REFERENCES [1] S. Christely, B. Lee, X. D ai and Q. Nie.”Integr ative multicellular

biological modeling: a case st udy of 3D epidermal development using GPU algorithms”. In BMC systems biology Journal, Vol. 4, 2010.

[2] J. Liu, and L . Guo. “Implementation of N eural Network Backpropagation in CUDA”. In Ad vances in Intelligent Syste ms and Computing. Springer-Verlag, pp 1021-1027, 2013.

[3] N. Ouannes, N. Djedi, H. Luga, and Y.Duthen. “Gait Evolution for Humanoid Robot i n a Physically Simulated Environment”. In Intelligent Computer Graphics 2011, Studies in Computational Intelligence, Di mitri Plemenos Georgios Miaoulis (Eds.), Springer-Verlag, pp 157-175, 2012.

[4] L.P. Magure, T.M. McGinnity, B.Glackin, A.Ghani, A.Belatreche, and J. Harkin. ”Challenges f or large-scale implementations of spiking neural networks on FPGAs”. In Neurocompute Journal .Vol 71, pp 13-29, 2007.

[5] J.M. Nageswaran, N. Dutt, J.L. Krichmar, A.Nicolau, A. Veidenbaum.” Efficient simulation of large scal e Spiking Neur al Networks using CUDA graphics processors”. In IEEE International joint conference on Neural Networks, pp 2145-2152, Los Alamitos, 2009.

[6] T. V. Luong, N. Melab and E. Talbi. ”Parallel hybrid evolutionary algorithms on GPU”, In IEEE Congress on Evolutionary Computation (CEC), Barcelone, Spain, 2010.

[7] A. K. Qin, F. Raimondo, F. Forbes and Y. Soon Ong. “An improved CUDA-based implementation of differential evolution on GPU”. In Proceedings of the 14th annual conference on Genetic and evolutionary computation. pp 991-998, USA, 2012.

[8] J. Jaros. “ Multi-GPU island-based genetic algorithm for solving the knapsack problem”. In Proceeding of IEEE Congress of Evolutionary Computation (CEC), Brisbane, Australia, 2012.

[9] Y. Yang, P. Xiang, J. Kong, M. Mantor and H. Zhou. “A unified optimizing compiler framework for different GPGPU architectures”. In ACM Transactions on Architectur e and Co de Optimization (TACO), Vol 9, Issue 2, June 2012.

[10] R. D Pr abhu. “GNeuron: Parallel Neural Networks”, In 14th I EEE International Conference on High Per formance Computing ( HiPC 2007), Goa, India, 2007.

[11] M. Peniak, A. Morse, C. Larcombe, and S. Ramirez-Contla. ”Aquila: An Open-Source GPU-Accelerated Toolkit for Cognitive and Neuro-Robotics Research”, July 31 -Aug. 5 2011, San Jose, CA, 2011.

[12] P. G-Nalda and B. B-Cases. ”Topos 2: Spiking Neur al Networks for Bipedal Walking in Humanoid Robots”. In Hybrid Artificial Intelligent Systems Book. Proceedings, Part I, The 6th International Conference, HAIS, May 23-25, Wroclaw, Poland, 2011.

[13] A. Arora, R. Tulshyan, and K. Deb.” Parallelization of binary and real-coded genetic algorithms on GPU using CUDA”. In IEEE Congress on Evolutionary Computation, pp. 1-8, 2010.

[14] P. Pospichal, J. Jaros and J. Schwarz. “Parallel genetic algorithm on the CUDA architecture”. In Proceedings of the 2010 international conference on Applications of E volutionary Computation - Vol. Part I. Springer-Verlag, Berlin, Heidelberg, pp. 442-451, 2010.

[15] M. Oiso, Y. M atsumura, T. Yasuda and K. Ohkura.” Implementing Genetic Algorithms to CUDA E nvironment Using Data Parallelization”. In Japan T echnical Gazette, Vol 18 No. 4, pp 739-8527, 2011.

[16] P. Krömer, V. S nåšel, J. Platoš, and A. Abraha m. “Many-threaded implementation of differential evolution f or the CUDA platf orm”. In Proceeding GECCO '11 Proceedings of the 13th annual conference on Genetic and evolutionary computation, pp 1595-1602, 2011.

[17] NVIDIA: CUDA Toolkit 4. 0 CURAND Guide, 2011. [18] M. P. M. Zamith, E. W. G. Clua , A. Conci, A. Montenegro, R. C. P.

Leal-Toledo, P. A,. Pagliosa a nd L. Valente. “A Gam e Loop Architecture for the GPU Used as a Math Coprocessor in Real-Ti me Applications”. In Magazine Co mputers in Entertain ment (CIE) - SPECIAL ISSUE: Media Arts, Vol.6, 2008.

[19] J. K. Sal mon, M. A. Mor aes, R. O. Dror and D. E . Shaw. ”Parallel Random Numbers: As Easy as 1, 2, 3”. In Proceedings of International Conference for High Per formance Computing, Networking, Storage and Analysis, SC 2011. ACM Press, New York, USA, 2011.

210 © IT4OD 2014

Page 217: IT4OD 2014 Proceedings

Face Recognition Using Local Binary Patterns in One Dimensionnal Space and Wavelets

Amir Benzaoui and Abdelhani Boukrouche

Laboratory of Inverse Problems, Modeling, Information and Systems (PI: MIS) Department of Electronics and Telecommunication

University of 08 MAI 1945, P.O box 401, Guelma 24000, Algeria [email protected] [email protected]

Abstract—The popular Local binary patterns (LBP) have been highly successful in describing and recognizing faces. However, the original LBP has several limitations which must to be optimized in order to improve its performances to make it suitable for the needs of different types of problems. In this paper, we investigate a new local textural descriptor for automated human identification using 2D facial imaging, this descriptor named One Dimensional Local Binary Patterns (1DLBP), produces binary code and inspired from classical LBP. The performances of the textural descriptor have been improved by the introduction of the wavelets in order to reduce the dimensionalities of the resulting vectors without losing information. The 1DLBP descriptor is assessed in comparison to the classical and the extended versions of the LBP descriptor. The experimental results applied on two publically datasets, which are the ORL and AR databases, show that this proposed approach of feature extraction, based on 1DLBP descriptor, given very significant improvements at the recognition rates, superiority in comparison to the state of the art, and a good effectiveness in the unconstrained cases.

Keywords—biometrics; face recognition; Local Binary Patterns (LBP), One Dimensionnal Local Binary Patterns (1DLBP), Wavelets.

I. INTRODUCTION

Biometric systems have increasingly becoming important tool in the information and public security domains; this is because they provide an automatic identification or verification of the identity based on the analysis of physical or behavioral modalities of the human body. Several modalities have been used to recognize the human identity; we can cite fingerprint, voice, iris, palm-print, retina, computer keyboards, or signature [1, 2]… Especially, the automatic analysis of the human face has become an active research area in the artificial vision and patterns recognition domains, due to its important use in several applications such as electronic election, biometrics, forensics and video surveillance. The human face is dynamic entity, which changes under the influence of several factors as pose, size, occlusion, background complexity, lighting and the

presence of some components such as mustaches, beard, and glasses. So, the essential key for any facial analysis problem is on how to find an efficient descriptor to represent and to model the face in a real context?

The crucial step in any problem of face analysis is the phase of features extraction. In this phase, there are two major approaches, local and global approaches. Psychological and neuroscience studies have proved that the human visual system combines between local and global features to differentiate between persons [3]. Global approaches are based on pixel information; all pixels of the facial image are treated as a single vector; the vector size is the total number of the image’s pixels [4]. Most of the methods of this approach use another space of representation (subspace) to reduce the number of pixels and to eliminate the redundancies. Principal Component Analysis (PCA) [5], Linear Discernment Analysis (LDA) [6] and Independent Component Analysis (ICA) [7] are the most popular methods used to reduce the dimensions and to select the useful information. However, these approaches are not effective in the unconstrained cases, i.e., situation where occlusion, lighting, pose, and size of the face are uncontrolled.

Recently, the scientists concentrate on local approaches, which are considered as a robust approaches in the unconstrained cases compared with global approaches; in this case, the face analysis is given by the individual description of its parts and their relationships, this model corresponds to the manner of perception by the human visual system. The methods of this approach are based on the extraction of features from the facial image and the definition of an adequate model to represent the face [4]. Several methods and strategies have been proposed to model and classify faces essentially based on textures, normalized distances, angles and relations between eyes, mouth, nose and edge of the face. Local Binary Pattern (LBP) [8], Local Gabor Binary Pattern

211 © IT4OD 2014

Page 218: IT4OD 2014 Proceedings

(LGBP) [9] and Oriented Edge Magnitudes (POEM) [10] are the recent methods in this approach.

The specific contributions of this paper are:

• An automated biometric system using 2D face imaging is developed. This work is the continuation of our previous works [11, 12] and the objective is to improve the performances of recognition in the unconstrained situations.

• A new textural descriptor is proposed, this descriptor called: One Dimensional Local Binary Pattern (1DLBP). It is essentially inspired from the classical LBP, and projected in one dimensional space.

• The developed approach of feature extraction, based on 1DLBP, is characterized by a combination of the local and global features to analyze, describe, differentiate and recognize persons by using their faces.

• The performances of the realized system have been improved with the introduction of the 1D Wavelets as an efficient mathematical tool in dimensionalities reduction.

• The experimental results applied on two classical databases, the ORL and AR datasets, have showed that this proposed system has given very significant improvements at the recognition rates, superiority in comparison to well-known and classical feature extraction approaches, and a good effectiveness against deferent external factors as occlusion, illumination variation and noise.

This paper is organized as follows: in the next section, we describe the classical LBP, histogram features and the proposed descriptor 1DLBP. In Section 3, the proposed algorithm of feature extraction for face recognition is presented. For this purpose, chi-square distance is required to measure similarities between face templates. In Section 4, we present our experimental results by applying the proposed algorithm on ORL and AR databases. Finally, a conclusion related to this work is given in Section 5.

II. LOCAL TEXTURAL DESCRIPTORS

Texture based feature extraction methods play an important role in the fields of computer vision and image processing. Several algorithms of textural features extraction have been proposed during the past years, which can be divided mainly into statistical approaches and structural approaches. More recently, the local texture descriptors have received considerable attention and have been used in several applications such as texture classification, image retrieval or in object recognition. They are distinctive, robust to occlusion, illumination variation, weak lighting, and do not require

segmentation. The function of the local descriptor is to convert the pixel-level information into a useful form, which captures the most important contents but is insensitive to irrelevant aspects caused by varying environment. In contrast to global descriptors which compute features directly from the entire image, local descriptors, which have proved to be more effective in real world conditions, represent the features in small local image patches. In the following subsections, we separately discuss the description and the implementation of the LBP and 1DLBP in details.

A. Local Binary Patterns (LBP)

The LBP texture analysis operator, introduced by Ojala et al. [13], is defined as a gray-scale invariant texture measure, derived from a general definition of texture in a local neighborhood. It is a powerful mean of texture description and among its properties in real-world applications; we note its discriminative power, computational simplicity and tolerance against monotonic gray-scale changes. The original LBP operator forms labels for the image pixels by thresholding the 3 3 neighborhood of each pixel with the center value and considering the result as a binary number. The histogram of these 2 256 different labels can then be used as a texture descriptor for further analysis. This process is illustrated in Fig. 1.

Binary code: 11010011

LBP code: 211

Fig. 1 Calculation of the original LBP operator.

The LBP operator has been extended to use neighborhoods of different sizes. Using a circular neighborhood and bilinearly interpolating values at non-integer pixel coordinates allow any radius and number of pixels in the neighborhood. Each LBP label (or code) can be regarded as a micro-texton. Local primitives which are codified by these labels include different types of curved edges, spots, flat areas etc. The notation , is generally used for pixel neighborhoods to refer to sampling points on a circle of radius as shown in Fig. 2. Examples of LBPs applications with different mask are shown in Fig. 3. The calculation of the LBP codes can be easily done in a single scan through the image. The value of the LBP code of a pixel , is given by:

, , , – 2

1

!" #$%!&$# '": )1 !% * 0;0 -./$01!"$;2 2

5 9 1

4 4 6

7 2 3

1 1 0

1 1

1 0 0

Threshold

212 © IT4OD 2014

Page 219: IT4OD 2014 Proceedings

Where and , are respectively the values of the

central element and its 2D neighbors.

Fig. 2 Neighborhood set for different

Fig. 3 Examples of LBPs application with different masks.

The occurrences of the LBP codes in the image can be collected into a histogram. The classification can then be performed by computing histogram similarities. For an efficient representation, facial images are first divided into several local regions from which LBP histograms are extracted and then concatenated into an enhanced feature histogram for classification [14].

In Ref. [3], psychological and neuroscience studies have showed that the human visual system combines between local and global features to recognize and differentiate between peoples. In the other hand, the extend versions of LBP operators present a good results by capturing the local patterns and the micro features of the human face, but they are not performed for capturing the global patterns that can be considered as dominants structures in the image, which is in contradictory to the theory of recognition demonstrated in neuroscience and psychological sciences.

B. One Dimensinnal Local Binary Patterns (1DLBP)

The Projected Local Binary Pattern in One dimensional space (1DLBP) was introduced for the first time by et al. [15, 16]; it has been combined with wavelets to classify X-ray bone images for bone disease diagnosis. the 1DLBP method consists in a binary code describing the local agitation of a segment in 1D signal. It is calculated by thresholding of the neighborhood values value. All neighbors get the value 1 if they are greater or equal to the current element and 0 otherwise. Then, the resulting vector is multiplied by a weight according to its position (see Fig. 4.c). Finally, the current element is replaced

Original Image LBP (8,1) LBP (8,2)

the values of the

Neighborhood set for different , .

Examples of LBPs application with different masks.

The occurrences of the LBP codes in the image can be collected into a histogram. The classification can then be performed by computing histogram similarities. For an efficient representation, facial images are first divided into

from which LBP histograms are extracted and then concatenated into an enhanced feature

, psychological and neuroscience studies have showed that the human visual system combines between local

atures to recognize and differentiate between peoples. In the other hand, the extend versions of LBP operators present a good results by capturing the local patterns

, but they are not bal patterns that can be

considered as dominants structures in the image, which is in contradictory to the theory of recognition demonstrated in

One Dimensinnal Local Binary Patterns (1DLBP)

Binary Pattern in One dimensional space (1DLBP) was introduced for the first time by L. Houam

it has been combined with wavelets to classify ray bone images for bone disease diagnosis. The concept of

y code describing the local agitation of a segment in 1D signal. It is calculated by

neighborhood values with the central are greater or equal

otherwise. Then, each element of multiplied by a weight according to its

, the current element is replaced

by the sum of the resulting vector. This can be follows:

13 4

5 %6&7.!-& !"

Where 8 and 5 are respectively the values of the central element and its 1D neighbors. left to the right in the 1D string as shown in 1DLBP descriptor is defined by the histogram of the 1D patterns.

Fig. 4 Example of

III. PROPOSED

The proposed biometric system requires two phases of operations. The first phase is called the training which consists of recording faces features from each individual in order to create his own biometric template; this latter is stored in the database. The second phase is the test, which consists in recording the same features and compares them to the biometric templates stored in the database. If the recorded data match a biometric template from the database; the individual in such a case is considered idalgorithm used to extract information for recognition is described in the following recapitulation:

a. Preprocessing.

b. Multi-block decomposition of the image.

c. Projection of each decomposed block in one

dimensional space.

LBP (16,2)

resulting vector. This can be recapitulated as

5 – 825

8 3

!" #$%!&$# '" 2 are respectively the values of the central

. The index n increases from the left to the right in the 1D string as shown in Figure 4.c.The 1DLBP descriptor is defined by the histogram of the 1D

Example of 1DLBP Application.

ROPOSED APPROACH

The proposed biometric system requires two phases of operations. The first phase is called the training which consists

features from each individual in order to create his own biometric template; this latter is stored in the

e second phase is the test, which consists in recording the same features and compares them to the biometric templates stored in the database. If the recorded data match a biometric template from the database; the individual in such a case is considered identified. The proposed algorithm used to extract information for face description and recognition is described in the following recapitulation:

block decomposition of the image.

Projection of each decomposed block in one

213 © IT4OD 2014

Page 220: IT4OD 2014 Proceedings

d. Application of the proposed descriptor 1DLBP for

each projected block.

e. Concatenation of the resulting vectors from each

block in one global vector.

f. Dimensionalities Reduction of each global vector using 1D Wavelets.

A. Preprocessing

The objective of the preprocessing is the modification of the source’s image representation to facilitate the task of the following steps and to improve the rate of recognition. First, the facial image is converted into grayscale image. Next, every grayscale image is filtered by median filter to suppress noise. Lastly, the noise suppression image is then adjusted to improve the contrast of the image.

B. Image decomposition

Most LBP operators characterize the face texture distribution of each pixel with its neighborhood only. differences between two faces cannot only demonstratetexture distribution of each pixel with its neighborhood, but also by the relative connection with other pixels. With this intention, we have decomposed the original image into several sub-images (see Fig.5) to characterize better the relationships between all the image extracted histograms will be concatenated in one global vector in the next stages. With this technique, we can obtain the fine details and the relative connections between all pixels.

Fig. 5 The decomposition of the image into differents blocks.

C. 1D vertical Projection

The 1D projection of rows or columns of each level provides an effective mean to describe better the local and global patterns. Figure 6 presents an example of vertical projection. The objective of the projection is to validate the descriptor LBP in one dimensional space to find another mean for describing and analyzing better the human face’s texture.

D. 1DLBP Application and Histogram’s Concatenation

To project a block from two dimensional representations (matrix) in one dimensional space (vector), the average values

Application of the proposed descriptor 1DLBP for

Concatenation of the resulting vectors from each

Dimensionalities Reduction of each global vector

objective of the preprocessing is the modification of the source’s image representation to facilitate the task of the following steps and to improve the rate of recognition. First, the facial image is converted into grayscale image. Next, every

mage is filtered by median filter to suppress noise. Lastly, the noise suppression image is then adjusted to

Most LBP operators characterize the face texture distribution of each pixel with its neighborhood only. But, the

demonstrate by the texture distribution of each pixel with its neighborhood, but

connection with other pixels. With this the original image into several

better the details and the image pixels. Next, the atenated in one global vector

in the next stages. With this technique, we can obtain the fine details and the relative connections between all pixels.

The decomposition of the image into differents blocks.

The 1D projection of rows or columns of each level provides an effective mean to describe better the local and global patterns. Figure 6 presents an example of vertical projection. The objective of the projection is to validate the

in one dimensional space to find another mean for describing and analyzing better the human face’s texture.

1DLBP Application and Histogram’s Concatenation

To project a block from two dimensional representations tor), the average values

of all pixels from each column are calculated to create the projected vector. Next, the proposed descriptor 1DLBP is applied on all projected blocks of the decomposed image with the different resolutions, as presented in Figextracted vectors from each decomposed block will be concatenated in one global vector representing the template.

Fig. 6 Example of Vertical Projection in One Dimensional Space.

A problem of redundancies in information occurred due to the important size of the templates, which should contain essential information to make the classification task easier. For that purpose, we have used the one directional robust mathematical tool, in dimensionalities reduction without losing information; this can be viewed as: given dimensional vectors 9 ,find a representation in the lower: ;, ;<, … , ;>, where q<p

the original data as much as possible.

The Discrete Wavelet Transform (DWT) of a sequence consists of two series expansions, one corresponding to the approximation and the other to the details of the sequence. The formal definition of DWT of an ≤ N-1 is given by [17, 18]:

DWT BftE W

Where:

WØ j8, k √J ∑

WL j, k √J ∑

The sequence x [n], 0 ≤ n ≤the DWT coefficients Wφ and Wψ

of all pixels from each column are calculated to create the projected vector. Next, the proposed descriptor 1DLBP is applied on all projected blocks of the decomposed image with the different resolutions, as presented in Fig.6. Then, the extracted vectors from each decomposed block will be concatenated in one global vector representing the face’s

Example of Vertical Projection in One Dimensional Space.

A problem of redundancies in information occurred due to the important size of the templates, which should contain essential information to make the classification task easier. For that purpose, we have used the one directional Wavelets as a

tical tool, in dimensionalities reduction without losing information; this can be viewed as: given p-

<, … , , the objective is to

find a representation in the lower dimension q<p which preserves the content of

the original data as much as possible.

The Discrete Wavelet Transform (DWT) of a sequence consists of two series expansions, one corresponding to the approximation and the other to the details of the sequence. The

WT of an N-point sequence x [n], 0 ≤ n

WØ j8, k M WL j, k 4

Where:

∑ xPnR ØST,U PnR JV8 5)

∑ xPnR ΨS,U PnR, j * j8JV8 (6)

≤ N − 1 can be recovered from Wψ as given by:

1D Vertical Projection

214 © IT4OD 2014

Page 221: IT4OD 2014 Proceedings

xPnR

√J ∑ WØ U (j8, k) ØST,U PnR M

√J ∑ ∑ WL (j, k)U

XS ST

ΨS,U PnR

(7)

The wavelet’s analysis is the breaking up of a signal into a set of scaled and translated versions of an original (or mother) wavelet. The wavelet transform of a signal decomposes the original signal into wavelets coefficients at different scales and positions, as shown in Fig.7. These coefficients represent the signal in the wavelet domain and all data operations can be performed using just the; corresponding wavelet coefficients.

Fig. 7. Signal’s decomposion using the 1D discrete wavelets transform [17, 18].

Wavelets work by decomposing the signal (concatenated histograms in our case) into different resolutions or frequency bands, as shown in Fig.7. The extraction of the pertinent information is based on the concept of selecting a small number of approximated coefficients at a suitably chosen level and some detail coefficients can accurately represent regular signal components. Choosing a decomposition level for the DWT usually depends on the type of signal being analyzed or some other suitable criterion such as entropy. The level of decomposition and the type of wavelet that gives the best results in our experiments are: level 2 of decomposition and Haar Wavelets.

E. Template Matching

Matching is carried out after training the system, the aim of matching is to evaluate the similarity between the testing image and the stored templates; giving a new image ξ considered as a test example. First, we build its 1D representation (the template) using the feature extraction method proposed in this work. Next, we calculate the Chi-Square distance to classify the image ξ in the nearest neighbor class corresponding to a degree of similarities that exceed a fixed threshold. Chi-Square Distance between two vectors X and Y:

Distchi-square (X, Y) ∑(fg hg)i

fgj hg

kl (8)

Xi and Y i are the two bit-wise codes to be compared.

M is the size of the vector representing the template.

IV. EXPERIMENTAL RESULTS

To evaluate the performances of the proposed descriptor, we have carried out several tests on ORL and AR databases; we randomly selected half of samples for training set and the remaining samples for testing set. In all our experiments, we considered the average recognition rates of several random permutations (50 permutation with ORL database and 100 permutations with AR database), and we compared the obtained results (identification and false alarm rates) with other methods using the same testing protocols. Our experiments are implemented with Matlab 2010a, Windows 7, HP Core 2 Duo, 3 Ghz CPU with 2 Gb Ram.

A. ORL database

The ORL database contains 400 frontal images in different facial expression, conditions of illumination, hairstyles with or without beard, moustaches and glasses for 40 persons, 10 images for each person. Each sample is a 92×112 gray image, with tolerance for some tilting and rotation of up to 20° (see Fig. 8).

Fig. 8. Some Images from ORL Database.

B. AR database

The AR database was collected at the Computer Vision Center in Barcelona, Spain in 1998 [19]. It contains images of 116 individuals (63 men and 53 women). The imaging and recording conditions (camera parameters, illumination setting, and camera distance) were carefully controlled and constantly recalibrated to ensure that settings are identical across subjects. The resulting RGB color images are 768×576 pixels in size. The subjects were recorded twice at a 2–week interval. During each session 13 conditions with varying facial expressions, illumination and occlusion were captured (see Fig. 9).

Fig. 9. Some Images from ORL Database.

/8Pn &R

/Pn &R

2

2

/8Pn &R

/Pn &R

2

2

P &R

8P &R

P &R

88P &R

8P &R

215 © IT4OD 2014

Page 222: IT4OD 2014 Proceedings

C. Experiments

In the first test, we have applied the methods inspired from the LBP texture analysis in the two databases (classical LBP, extended LBP, and the one dimensional Local Binary Patterns 1DLBP). The performances of these methods are shown in Table 1.

TABLE I. COMPARATIVE RECOGNITION RESULTS OF THE ISPIRED LBP METHODS ON ORL AND AR DATABASES.

RR: Recognition Rate %. FAR: False Alarm Rate%.

ORL

RR %

AR

RR %

Average

RR %

Average

FAR %

LBP (8,1) 85,2 87,5 86,4 3,62

LBP (8,2) 86 89,4 87,7 3,1

LBP (8,3) 86,4 89,7 88,1 2,9

LBP (16,2) 86,1 89,2 87,7 3,2

LBP (8,1) + PCA 91,4 93 92,2 1,92

LBP (8,3) + PCA 92 93,2 92,6 1,8

LBP (8,1) + DWT 92,5 93,5 93 2,5

LBP (8,3) + DWT 92,9 94,3 93,6 2

1DLBP 92 92,6 92,3 2.36

1DLBP + PCA 95,8 97,9 96,9 1.44

1DLBP + DWT 96,1 98,3 97,2 1,1

We see that LBP(8,3) provides a good results than LBP(8,2) and LBP(8,2) provides a good results than LBP(8,1), which means that the descriptors of the large scale sizes can capture more information and details than the descriptors of short sizes. Also, we can see that projected LBPs in one dimensional space (1DLBP), shows a good performances than LBPs in the two dimensional space with different extensions.

The results of the experiments clearly showed that the projected Local Binary Pattern with dimensionalities reduction using DWT enhances the recognition performance in all configurations, presents a very good improvement and significant results in recognition rate, false alarm rate against other variants of LBPs and an improvements in comparison to our previous works [11, 12] where we have used the PCA in the dimensionalities reduction.

We also conducted tests comparing our method against recent and classical state-of-the-art approaches (like PCA, LDA, POEM and LGBP) using the similar protocols under more challenges and scenarios. The results, shown in Table 2,

indicate clearly the effectiveness of our approach which outperforms all other methods.

TABLE II. COMPARAISON WITH OTHER STATE OF THE ART APPROACHS.

ORL

RR %

AR

RR %

Average

RR %

Average

FAR %

PCA 85 81,2 83,1 5,12

LDA 82,4 84,7 83,6 5,36

POEM 90,9 89,4 90,2 2,6

LGBP 94,1 96,2 95,2 1,87

LBP (8,3) + DWT 92,9 94,3 93,6 2

1DLBP + DWT 96,1 98,3 97,2 1,1

The facial images are taken with ORL database which is considered as a stable database in the unconstrained cases, and the AR database which presents a very good variation, in lighting, occlusion and facial expression, to measure the performances of the approach in the difficult situations. The comparison results presented in Table2 shows that our proposed approach presents very good results with AR database which indicates that this approach has an important effectiveness against to the variations in different factors like: partial occlusion and illuminations variation.

V. CONCLUSION

In our investigation, we have successfully developed a new feature extraction approach for automated 2D face description and recognition. We have introduced the use of the 1DLBP as a local textural descriptor, which is inspired from the classical LBP and produces a binary code. In contrast to the earlier approach (LBP) where the descriptor is applied directly on the original image, the 1DLBP is applied on projected vectors, in 1D signal, from the original image. A series of experimental evaluations on ORL and AR databases show that this proposed approach of feature extraction, based on 1DLBP descriptor, given very significant improvements at the recognition rates, superiority in comparison to the state of the art, and a good effectiveness in the unconstrained cases.

REFERENCES

[1] A. Jain, P. Flynn, and A.A. Ross, “Handbook of Biometrics (1st eds),” Springer-US, 2008.

[2] A. Jain, A.A. Ross, and K. Kandakumar, “Introduction to Biometrics (1st eds),” Springer-US, 2011.

[3] A.J. O'Toole, D.A. Roark, and H. Abdi, “Recognizing moving faces: A psychological and neural synthesis,” Trends in Cognitive Science, Vol.06, No.06, pp.261-266, June 2002.

[4] R.S. Kathavarayan and M. Karuppasamy, “Identification of Untrained Facial Image in Combined Global and Local Preserving Feature Space,” International Journal of Biometrics and Bioinformatics (IJBB), Vol.04, No.01, pp.1-12, March 2010.

216 © IT4OD 2014

Page 223: IT4OD 2014 Proceedings

[5] Matthew Turk and Alex Pentland, “Eigenfaces for recognition,” Journal of Cognitive Neuroscience, Vol.03, No.01, pp.71-86, 1991.

[6] P.N. Belhumeur, J.P Hespanha and D.J. Kriegman, “Eigenfaces vs Fisherfaces: Recognition using class specific linear projection,” IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 19, No.07, pp.711-720, July 1997.

[7] A. Hyvarinen and E. Oja, “Independent component analysis: Algorithms and applications,” Neural Networks, vol. 13, no. 4-5, pp. 411–430, 2000.

[8] T. Ahonen, A. Hadid, and M. Pietikainen, “Face Description with Local Binary Pattern: Application to Face Recognition,” IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol.28, No.12, pp.2037-2041, 2006.

[9] H.V. Nguyen, L. Bai, and L. Shen, “Local Gabor Binary Pattern whitened PCA: A novel approach for face recognition from single image per person,” Springer: Proceeding of the 3rd IAPR/IEEE International Conference on Biometrics (ICB), Vol.5558, pp.269-278, Alghero, Italy, June 2-5, 2009.

[10] N.S Vu and A. Caplier. “Face recognition with patterns of oriented edge magnitudes,” Springer: Proceeding of the 11th European Conference on Computer Vision (ECCV), Vol.6311, No.01, pp.313-326, Heraklion Crete, Greece, September 5-11, 2010.

[11] A. Benzaoui and A. Boukrouche, “1DLBP and PCA for Face Recognition”, Proceeding of the 11th International IEEE Symposium on Programming and Systems (ISPS’11), , Algiers, Algeria, April 22-24, 2013.

[12] A. Benzaoui and A. Boukrouche, “Face Recognition using 1DLBP Texture Analysis”, Proceeding of the 5th International IARIA Conference

on Future Computational Technologies and Applications (Future Computing’5), , Valancia, Spain, May 27 - June 01, 2013.

[13] T. Ojala, M. Pietikainen and D. Harwood, “A comparative study of texture measures with classification based on featured distribution,” Elsevier: Pattern Recognition, Vol.29, No.01, pp.51-59, January 1996.

[14] T. Ahonen, A. Hadid and M. Pietikainen. “Face Recognition with Local Binary Pattern,” Springer: Proceeding of the 8th European Conference on Computer Vision (ECCV), Vol.3021, No.01, pp.469-481, Prague, Czech Republic, May 11-14, 2004.

[15] L. Houam, A. Hafiane, R. Jennane, A. Boukrouche and E. Lespessailes. “Trabecular Bone Anisotropy Characterisation Using 1D Local Binary Patterns,” Springer: Proceeding of the 12th Conference on Advanced Concepts for Intelligent Vision Systems (ACIVS), Vol.6474, No.01, pp.105-113, Sydney, Australia, December 13-16, 2010.

[16] L. Houam, A. Hafiane, A. Boukrouche, E. Lespessailes, and R. Jennane, “One Dimensinal Local Binary Pattern for Bone Texture Characterization,” Springer: Pattern Analysis and Applications, Vol. 17, No.01, pp.179-193, 2014.

[17] R. C. Gonzalez and R. E. Woods, “Digital Image Processing (2nd eds.)”, Prentice Hall, Upper Saddle River, NJ, 2002.

[18] K. S. Thyagarajan, “Still Image and Video Compression with Matlab (1st eds.)”, A John Wiley & Sons, Inc., Publication, 2011.

[19] A.M. Martinez and R. Benavente. “The AR face database”, CVC Technical Report, 24, 1998.

217 © IT4OD 2014

Page 224: IT4OD 2014 Proceedings

Seeded selection for 2D medical image segmentation based on region growing algorithm: a survey

Ahlem Melouah Badji-Mokhtar Annaba University P.O.Box 12, 23000,

Annaba, Algeria. [email protected]

Aicha Tameur Badji-Mokhtar Annaba University P.O.Box 12, 23000,

Annaba, Algeria. [email protected]

Abstract—In medical image processing, image segmentation has been and is still a relevant research area due to its wide spread usage and application. The general image segmentation problem involves the par titioning of a given image into a number of homogeneous regions according to a given cr iter ion. Seeded Region Growing (SRG) is very attractive for semantic image segmentation by involving the high-level knowledge of image components in the seed selection procedure. However , the SRG algor ithm suffers from the problems of automatic seed generation and pixel sor ting orders for labeling. A seed point is the star ting point for region growing and its selection is very impor tant for the segmentation result. If a seed point is selected outside the region of interests (ROIs), the final segmentation result will be definitely incor rect. In this work, var ious seed placement methodologies are reviewed. The main goal of this study is to build a solid platform to automate the initial seed placement in r egion growing.

Index Terms— Seed selection; medical image; region growing; segmentation

I. INTRODUCTION The number of medical images has grown significantly in

the recent years. Various medical imaging modalities such as X-ray, computer tomography (CT) and magnetic resonance imaging (MRI) are widely available and used in routine clinical practice.

Medical images bring very important and useful information about the anatomical structure of the human body. These images are very important for clinical diagnosis, localization of pathology, study of anatomical structure, treatment planning, evolution of therapy, computer integrated surgery, surgical planning, post surgical assessment, abnormality detection and so on. It has been generally agreed that visual interpretation of such images is very important. But, medical images are noisy and more complex to be understood so it is important to represent them in a simple format or in a manner which is easier and meaningful for analysis. As a result, there is a great need for image processing techniques that must be applied on medical images to assist the pathologists and radiologists for easier and better diseases diagnosis.

Segmentation is one of the most difficult and important tasks in medical image processing. This active field of research over the last 20 years helps in making a simple format of medical image as well as specifying a region of interest (ROI). Automatically, detecting ROI and extracting their boundaries in medical images is difficult because of their specular nature and their variance in shape and appearance of sonographic lesions.

There are many segmentation algorithms available, but few are able to perform with the accuracy required in the medical domain. Seeded region growing (SRG) that is introduced by Adams [1] and improved by Mehnert [2] is robust, rapid and free of tuning parameters. Segmentation of medical images using seeded region growing technique is increasingly becoming a popular method because of its ability to involve high-level knowledge of anatomical structures in seed selection process [3]. However, the SRG algorithm suffers from the problems of automatic seed generation and pixel sorting orders for labeling [2, 4]. Some seeded region growing methods focused on the region growing process while most others discussed how to select a seed point automatically.

A seed point is the starting point for region growing and its selection is very important for the segmentation result. If a seed point is selected outside the region of interests (ROIs), the final segmentation result will be definitely incorrect. Due to the low quality of medical image, most of the seeded region growing methods require the seed point to be selected manually in advance. But the obvious way to improve the SRG technique is to automate the process of seed selection.

In this work, some state-of-the-art methodologies for seed placement are reviewed. The motivation of this research is to provide an overview of the most recent trends for seed selection in medical image segmentation. This survey focuses on the various techniques used for seed selection with their success and weaknesses.

The organization of the rest of this paper is as follows: Section 2 includes a brief review on seeded region growing principal. S ection 3 exposes the most used criteria for automatic seed selection. Section 4 discusses the researchers work contributed in automatic seeded region growing method for 2D medical image segmentation by region growing algorithm. Finally, Section 5 presents concluding remarks.

218 © IT4OD 2014

Page 225: IT4OD 2014 Proceedings

II. SEEDED REGION GROWING: BRIEF REVIEW Segmentation of medical image is a difficult problem

because of the large variety of their characteristics. Hence, numerous segmentation methods have been proposed but, region growing algorithm, is the most used one.

Region growing is based on the following principles [1]: suppose that we start with a seed pixel located somewhere inside the suspected lesion and wish to expand from that pixel to fill a co herent region. Local pixels around the seed are examined to determine the most similar ones. So the next 4- or 8-neighboring pixels are checked for similarity so that the region can grow. The region continues to grow until there are no remaining similar pixels among the 4- or 8-neighbors.

In practice, two problems are related to SGR method: the first one is the choice of the similarity criteria of pixels in regions and the second problem and more difficult is seeds selection which affects directly the quality of segmentation [5].

Seeded Region Growing (SRG) is very attractive for semantic image segmentation by involving the high-level knowledge of image components in the seed selection procedure [6]. But region growing result is sensitive to the initial seeds consequently, the accurate seed selection is very important for image segmentation [7]. A poor starting estimate of region seeds or bad pixel sorting orders may result in an incorrect segmentation of an image [2, 4].

III. SEED SELECTION CRITERIA To answer the question “how to choose seeds which can be

relevant to the interesting objects?” Some authors put criteria for automatic seed selection, the most used are:

1) Seed’s position: f or Li et al. [7] seed should be inside the region and can’t fall on noise points or edge points. This condition is very general and doesn’t give any information about the exact seed location in the region. Wu et al. [8] put two conditions for seed position. (i) seed must be located inner homogenous objects; (ii) seed should be near the center of the region. Wu el al. give more information about seed location which must be the region center but, they doesn’t specify how to determine this center. Li and wan [7] give a definition of a region centre; it is the region centroid point which must have minimum distance from the nearest edge greater than a d istance threshold. For Abdelsamea [9], we just have to make sure that the seed point candidate is not on the boundary of two regions and/or not outlier.

2) Seed’s neighbors: The distances from the seed pixel to its neighbors should be small enough to allow continuous growing [8]. So, seed pixel must have high similarity with its neighbor [10, 7].

3) Seed by region: For an expected region, at least one seed must be generated in order to produce this region; Seeds for different regions must be disconnected [10].

IV. AUTOMATIC SEED PLACEMENT BACKGROUND Several papers have discussed automatic seed selection for

region growing segmentation in medical images. The commonly used automatic seed selection techniques can be classified into three categories: Region extraction based techniques, edges extraction based techniques and features extraction based techniques. Other different seed selection techniques have been proposed by some researchers.

A. Seeded selection based on region extraction techniques Based on region extraction, automatic seed selection

approaches extract regions then select seeds inner these regions.

Shan et al. [11] applied a binarization technique to extract region. The threshold is chosen using an iteratively principal based on the histogram. The center of the winning region is considered as a seed point.

k-means was used by Mustafa et al. [12] to extract a region. The seed is the centroid of the region calculated from a random position by application of term of zero order moment and first order moment.

After applying the PSO image clustering, Qusay et al. [13] ranked the clusters’ intensities in ascending order. Subsequently, the cluster which has the highest intensity would be chosen. Then the centre of the chosen cluster region is selected as the initial seed.

In order to extract ROI, Abdelsamea [9] applied Otsu segmentation method; to remove outliers points and points located on the boundary of ROIs, he used RXR neighborhood mask, the remaining pixels are the seeds points.

Saad et al. [14] performed region splitting and merging technique for region detection. Then, they calculated the histogram and acquired an optimal threshold. Seed pixels are automatically selected from the pixels that are higher than the set optimal threshold value.

Seed selection based on region extraction approaches verifies criterion 1 and criterion 3 and ignores criterion 2. Ignoring seed neighbor’s similarity is the weakness of those methods.

A summary of the work done by the researchers is listed below in Table 1.

TABLE 1. AUTOMATIC SEED SELECTION APPROACHES BASED ON REGION EXTRACTION

Reference Years Technique Used 11 2008 Binarization technique 12 2009 k-means is used to extract region 13 2011 PSO clustering technique for region

extraction 9 2011 Otsu segmentation method

14 2012 Region splitting and merging technique

B. Seeded selection based on edges extraction techniques Automatic seed selection researches based on edges

extraction techniques applied edge detection techniques like gradient calculation, active contour and so on, to prepare seed point choose.

219 © IT4OD 2014

Page 226: IT4OD 2014 Proceedings

Pohle et al. [15] considered the smallest gradient value as a

seed point. It is the way to be sure that the seed point is always located within a region.

First, Li et al. [7] estimated the average size of interesting objects. Then, they detected edges by using the canny operator and computed the minimal distance of each pixel from edges. The seed is the point with the bigger minimal distance from edges and the smaller gradient-level.

Alattar et al. [16] selected the seed points at equi-angles on the estimated interior contour. Active contour model was used for interior contour estimation.

For Francis et al. [17] seed pixels were automatically chosen as local gray value extrema of the image where the gradient remained small.

Table 2 gives a resume of works done in this category.

TABLE 2. AUTOMATIC SEED SELECTION APPROACHES BASED ON EDGES EXTRACTION

Reference Years Technique Used 15 2001 Gradient 7 2010 Detect edges by using the canny

operator 16 2010 Active contour model 17 2013 Gradient

Seed selection based on edge extraction techniques needs a

pre-processing step to eliminate all bad edges and close them. They may induce over-segmentation problem because edges may be over-detected for the texture images and thus result in redundant seeds.

C. Seeded selection based on features extraction techniques Automatic seed selection approaches by features extraction

techniques use two steps: the first one for the features extraction and the second one for the classification.

Chang et al. [18] proposed a simple approach with only features extraction. In this approach seed selection was determined from the peaks found in image histogram.

Poonguzhali et al. [19] selected seed point automatically from the abnormal region based on textural features such as co-occurrence features and run length features.

Wu et al. [8] extracted 2D Co-occurrence texture feature, Gabor texture feature, and both 2D and 3D Semi-variogram texture features from the image. Then, they applied seeded region growing algorithm on these feature spaces. The seed is the point of ROI that minimized a cost function built by adding three sub-functions corresponding to three criteria: (i) the spatial distance from the pixel to the center point of the ROI, (ii) the Euclidean distance on feature space from the pixel to the centroid of the ROI and, (iii) the sum of the Euclidean distance on feature space from the pixel to its neighbors.

For Meenalosini et al. [20, 21] seeds are Alarm threshold determined by histogram analysis.

As a part of seed selection, Yuvarai et al. [22] initialized a mask. Statistical features are extracted for the regions within the mask. If the extracted features match with the predefined

features of mass then, the seed is fixed. The initial pixel of the mask can be taken as the seed.

A list of automatic seed selection approaches based on features extraction is done in table 3.

These methods are expensive in matter of time and need a classification technique which can affect their seed selection result.

TABLE 3. AUTOMATIC SEED SELECTION APPROACHES BASED ON FEATURES EXTRACTION

Reference Years Technique Used 18 1994 Histogram feature 19 2006 co-occurrence features 8 2009 2D Co-occurrence texture feature,

Gabor texture feature, and both 2D and 3D Semi-variogram texture features are extracted

20 2012 Histogram feature 21 2012 Histogram feature 22 2013 Statistical features

D. Seeded selection based on other techniques

Madabhushi et al. [23] developed a quantitative mathematical formula τCx based on join probability and distance to the centre of the image. The point which maximizes τCx

Senthilkumar et al. [24] used Harris corner detect theory to auto find growing seeds and the seeded region growing rule for regions development. The same principal is adopted by Noorul et al. [10].

is the tree seed from random selected points.

Table 4 gives a resume of these works.

TABLE 4. AUTOMATIC SEED SELECTION OTHER APPROACHES Reference Years Technique Used

23 2003 Formula based on probability 24 2010 Harris corner detect theory 10 2012 Harris corner detect

V. CONCLUSION 2D medical image segmentation is the process of

partitioning an image into several regions according to specific rules. The purpose of segmentation is using these regions for ROI detection to identify any abnormalities or lesions. Quality of segmentation determines the eventual success or failure of the analysis or diagnosis.

There are several potential approaches to improve seed selection for medical image segmentation by region growing algorithm. These approaches can be subdivided to three categories. The first one is based on region extraction. The second one uses edges extraction. The last category applies features extraction. Some other works are also proposed.

Most researches affirm that SRG segmentation results are dependent on the choice of seeds. They also assure that noise in the image can be the main cause in poorly placing seeds. In another way, they suppose that if the seed selection is from the center of the region, segmentation becomes more effective and efficient. However, it is still difficult to obtain accurate seeds automatically from image [6, 25].

220 © IT4OD 2014

Page 227: IT4OD 2014 Proceedings

REFERENCES [1] R. Adams and L. Bischof, “ Seeded region growing,” IEEE

Trans. Pattern Anal. Machine Intell, vol. 16, pp. 641–647, 1994.

[2] Mehnert and P. Jackway, “An improved seeded region growing algorithm,” Pattern Recognition letters, vol 18(10), pp. 1065-1071, 1997.

[3] B. Senthilkumar, G. Umamaheswari and J. Karthik, “A novel region growing segmentation algorithm for the detection of breast cancer,” In IEEE International Conference on Computational Intelligence and Computing Research, pp.1-4, 2010

[4] F. Jianping, D. K.Y. Yau, A.K. Elmagarmid and W.G. Aref, “Automatic image segmentation by integrating color-based extraction and seeded region growing,” IEEE Trans. Image Process, vol. 10 (10), pp. 1454–1466, 2001

[5] M. Fahd, H. Mohiy, K. Mostata, and A. Khalid, “A new image segmentation method based on particle swarm optimization,” The international Arab Journal of Information Technology, vol.9(5), 2012

[6] F. Jianping, Z. Guihua, and M. Body, “Seeded region growing: An extensive and comparative study,” Pattern Recognition Letters vol.26(8), pp.1139–1156, 2005

[7] G. Li and Y. Wan, “Adaptive Seeded Region Growing for Image Segmentation Based on Edge Detection, Texture Extraction and Cloud Mode,” R. Zhu et al. (Eds.): ICICA 2010, LNCS 6377, pp. 285–292

[8] J. Wu, S. Poehlman, M. D. Noseworthy and M. V. Kamath, “Texture feature based automated seeded region growing in abdominal MRI segmentation,” J. Biomedical Science and Engineering, ,vol. 2, pp. 1-8 2009

[9] M. M Abdelsamea, “An Enhancement Neighborhood Connected Segmentation for 2D-Cellular Image,” International Journal of Bioscience, Biochemistry and Bioinformatics, vol.1(4), 2011

[10] D. M. Noorul Mubarak, M.M. Sathik, S.Z. Beevi and K. Revathy, “A hybrid region growing algorithm for medical image segmentation,” International Journal of Computer Science & Information Technology (IJCSIT), vol. 4(3), 2012

[11] H. D. Juan Shan and Y. W. Cheng, “A novel automatic seed point selection algorithm for breast ultrasound images,”. In 19th International Conference on, 8-11 Dec. 2008, Tampa, FL, pp 1-4, Pattern Recognition, ICPR

[12] N. Mustafa, N.A. Mat Isa and M.Y. Mashor, “Automated Multicells Segmentation of ThinPrep® Image Using Modified Seed Based Region Growing Algorithm,” Biomedical Soft Computing and Human Sciences, vol. 14(2) pp. 41-47, 2009

[13] A.Q. Al-Faris, N. Umi Kalthum, N.A. MatIsa, and I.L. Shuaib, Breast MRI Tumour Segmentation using Modified Automatic Seeded Region Growing Based on Particle Swarm Optimization Image Clustering, Springer-Verlag Berlin Heidelberg, 2011

[14] N. M. Saad, S.A.R. Abu-Bakar, M. Sobri Muda and A.R.A. Mokji, “Automated Region Growing for Segmentation of Brain Lesion in Diffusion-weighted MRI,” Proceeding of the international MultiConference of Enginneers an Computer Scientists, vol. 1, IMECS 2012, March 14-16, Hong Kong

[15] R. Pohle and K. D. Toennies, “A New Approach for Model-Based Adaptive Region Growing in Medical Image Analysis,” Computer Analysis of Images and Patterns, Lecture Notes in Computer Science vol. 2124, pp. 238-246, 2001

[16] M. A. Alattar, N. F. Osman and A. S. Fahmy, “Myocardial Segmentation Using Constrained Multi-Seeded Region Growing,” A. Campilho and M. Kamel (Eds.): ICIAR 2010, Part II, LNCS 6112, pp. 89–98

[17] D. Francis, V. Peter and P. Wilfried, “Image segmentation with adaptive region growing based on a polynomial surface model,” Journal of Electronic Imaging, vol. 22(4), 2013

[18] Y.-L. Chang and X. Li, “Adaptive Image Region-Growing,” IEEE transaction on image processing, vol 3(6), 1994

[19] S. Poonguzhali and G. Ravindran, “A complete automatic region growing method for segmentation of masses on ultrasound images,” In Biomedical and Pharmaceutical Engineering International Conference on, pp. 88-92, 2006.

[20] S. Meenalosini and J. Janet, “Detection of Malignancy in Mammograms using Region Growing and GLCM Features,” In International Conference on C omputing and Control Engineering (ICCCE 2012), 12-13 April

[21] S. Meenalosini, J. Janet and E. Kannan, “Segmentation Of Cancer Cells In Mammogram Using Region Growing Method And Gabor Features,” International Journal of Engineering Research and Applications (IJERA) vol 2(2), pp. 1055-1062, 2012

[22] K. Yuvaraj and U.S. Ragupathy, “Automatic Mammographic Mass Segmentation based on Region Growing Technique,” In 3rd International Conference on Electronics, Biomedical Engineering and its Applications (ICEBEA'2013) April 29-30, Singapore

[23] Madabhushi and D. N Metaxas, “Combining low-, high-level and empirical domain knowledge for automated segmentation of ultrasonic breast lesions,” Medical Imaging, IEEE Transactions on, vol 22(2), pp. 155-169, 2003

[24] Senthilkumar, G. Umamaheswari and J. Karthik, “A novel region growing segmentation algorithm for the detection of breast cancer,” IEEE International Conference on Computational Intelligence and Computing Research, pp.1-4, 2010

[25] Z. Pan and J. Lu, “A Bayes-Based Region-Growing algorithm for medical image segmentation,” Computing in Science and Engineering, vol. 9, pp. 32–38, 2007.

221 © IT4OD 2014

Page 228: IT4OD 2014 Proceedings

Topic 7: Poster

222 © IT4OD 2014

Page 229: IT4OD 2014 Proceedings

A New Moving Object Detection Method for Visual Surveillance

Djoudi KERFA, Mohamed. F. BELBACHIR

Signal, Systems and Data Laboratory (LSSD), University of Science and Technology of Oran-Mohamed Boudiaf (USTO-MB),BP 1505 El M'Naouer 31000 ORAN, Algeria.

Abstract-This paper presents an efficient real time moving object detection algorithm on video sequences obtained from a stationary camera. It is based on motion estimation and compensation using block-matching algorithm to detect a moving object. It consists of the following steps: the first consists to estimate the motion vectors between successive frames using Diamond search algorithm. In the second step, the blocks that had motion vector in the frames are compensated with the white pixels value and those with zero motion that is the stationary are compensated by black pixels value. In the third step, the morphological opening and closing filters are used for refining the object detected. Real video sequences were used for object detection with utilization our algorithm. A set of experimental results show that our method is robust and accurate in video surveillance.

Keywords-component; motion estimation and compensation;mathematical morphology; moving object detection.

I. INTRODUCTION Detection the motion objects from a video sequence is a key

in many vision applications such as surveillance, traffic monitoring, augmented reality, vehicle navigation [1]. The efficiency and accuracy of these applications depend on the results of moving objects detecting methods implemented in there. In the last decade, many methods for moving object detection from video sequences have been proposed. We classify these methods into three types; distribution-based method, contour-based method and orientation based method.

The distribution-based approach or the background subtraction, it consists to estimate a background frame of the scene based on pixel distribution, thus, the object(s) in the current frame can be detected by subtracting the current frame with the background frame. [1] Proposes a parametric method that consists to build a model as a Mi xture of Gaussians (MOG) updated on-line, it employs statistics by using a Gaussian model for each pixel, every Gaussian model maintain the mean and the variance of each pixel, the assumption then is that the pixel value follows a Gaussian distribution. Along this approach, other similar approaches have been proposed in [3][4][5]. However, there is one problem in background modeling methods that it needs high computational cost for estimating the background image model. Furthermore, since MOG assumes all pixels are

independent and spatial pixel correlation is not considered, the background model based on individual pixels is sensitive to illumination and noise. When the density function is complex, these parametric approaches may fail. [6] Introduces non-parametric model of the background, the advantage is that it can achieve better accuracy in similar computational cost, another advantage of this approach is the incorporation of spatial constrains into the construction of foreground classification. The model is robust and can handle the situations where the background of the scene is cluttered. Several other nonparametric background model algorithm are presented in [7][8][9]. However, the parametric methods are more efficient then the nonparametric methods and it is computationally relatively.

The contour-based approach; can efficiently detect moving objects with different sizes and shapes, and seem to be insensitive to illumination variations [10]. However, these methods are computationally expensive. Allows these methods we quote level sets [11], active contours [12] and geodesic active contours [13].

The orientation-based approach uses optical flow as approximation of the object motion it c onsists to estimate motion vectors for each pixels in image sequences, so it changes the image into another space of motion object field. [14,15] propose motion detection methods based on optical flow , these methods can accurately detect motion in the direction of intensity gradient, but the motion which is tangential to the intensity gradient cannot be well represented by the fields. Moreover, optical flow based methods also suffer from the illumination problem, high sensitivity to noise and high computational cost; it is not ready for applications requiring real time.

In order to overcome the limitations on existing orientation-based approaches to achieve object motion detection in real time. We propose in this paper an efficient algorithm to moving object detection based on the motion estimation and compensation using block-matching algorithm, that are usually used by most video coding standards (H.264 and MPEG4 [16]) and the mathematical morphology to detect a moving object. It consists of the following steps: the first consists to estimate the motion vectors between successive frames using Diamond Search algorithm (DS). In the second step the blocks that had motion vector in the frames are compensated with white pixels

223 © IT4OD 2014

Page 230: IT4OD 2014 Proceedings

value and those with zero motion that is the stationary are compensated by black pixels value. The third the morphological opening and closing filters are used to connect components to remove noise for refining the object detected. Hence, we can say that the moving objects have been detected from the stationary background.

The proposed algorithm is tested on several image sequences. This paper is organized as follows. Section 2 presents different phases and the explanations of the proposed algorithm. Section 3 describes the implementation of the new proposed scheme of moving object detection. Before concluding (section 5) a key results and discussion are given in section 4.

II. PROPOSED METHOD

In this paper, we propose an efficient algorithm for moving object detection based on motion estimation and compensation using block-matching algorithm with thresholding and mathematical morphology to detect a moving object. It consists to estimate the motion vectors and compensated the blocks had motion vector in the frames by white (1) pixels value and those with zero motion that is the stationary by black (0) pixels value. Finally, the morphological opening and closing filters are used to connect components to remove noise for refining the object detected. The following sentences put more information about the proposed algorithm.

A. Motion estimation using block matching algorithms

The motion objects between two frames are detected by subdividing a frame in blocks of identical size and supposing that all the pixels of the same block have same displacement. For each block, the vector of displacement is searched in a window (see figure 1) in such a way that it minimizes the selected criterion. The most used criterion of matching is the SAD (Sum Absolute Difference) defined as follows:

( ) )1()dj,di(f)j,i(fd,dSADT

1i

T

1jyx1kkyx ∑∑

= =− ++−=

With T size of block and the search window for size ± 7 pixels. In other words, the selected vector corresponds to the smallest error ( )yx d,dSAD in search window with

7d7 x ≤≤− and 7d7 y ≤≤− .

We define by )j,i(f k the intensity of the pixel )j,i( of the frame k of the sequence and )dj,di(f yx1k ++−

is the intensity

of the pixel )dj,di( yx ++ of the preceding frame k-1.

Fig.1. Illustrative scheme of block matching with size of TxT in a search

window . For a given block, the method Full Search (FS)[17]

calculates all the SAD, The smallest SAD (SADmin) corresponds to the searched motion vector (see figure. 2). This method carries out an exhaustive search; it thus ensures optimality, however it has a high computational cost. In order to reduce the complexity of method FS several methods were proposed [18]-[23], most known is the method Diamond Search DS [21].

It searches in two search patterns (see Figure 2). The first, called LDSP (Large Diamond Search Pattern) calculates nine points. The second SDSP (Small Diamond Search Pattern) carries out five points.

(a) (b)

Fig.2.The Diamond Search Algorithm is consisted LDSP (Large Diamond Search Pattern) in (a) followed by a search SDSP (Small Diamond Search

Pattern) in (b).

The algorithm DS is summarized as fallow:

Stage I: LDSP carries out the calculation of nine points (central point CP corresponds to the zero motion).

If SADmin corresponds to CP go to III

Else

Stage II: The point corresponding to SADmin becomes the center of a new LDSP. If new SADmin is in the center, we continuous with the third stage. If not, the second phase is repeated.

continue

Identify applicable sponsor/s here. (sponsors)

Frame k

Motion vector

Position of the block (TxT) in the frame k-1

Block TxT

Position of the block (TxT) in the

frame k

Search Window

Frame k-1

224 © IT4OD 2014

Page 231: IT4OD 2014 Proceedings

Stage III: The model LDSP is changed with model SDSP and the points is tested. SADmin obtained in this stage represents the final solution of the motion vector block.

The algorithm DS, compared to the other algorithms, is the most powerful lookout complexity/quality.

(a) (b)

(c)

Fig.3. Motion vectors in (c) estimated between two frames (a) and (b) of sequence ‘sofa’ using Diamond search algorithm with block of size 8x8 pixels

and search window for size ± 7 pixels.

From the Figure 3 of the results of the motion vectors we

note that the stationary block has a vector of movement with the indices dx = 0 a nd dy

B. Motion Compensation

= 0. However, the blocks in movement have indices different from zero.

The motion vectors are used to predict a frame by motion compensation, there are two approaches for motion compensation: forward and backward. The forward predict the next frame in a v ideo sequence from the current frame by computing the motion vectors for the current frame and construct the prediction with current frame and these motion vectors. This may cau se t he p redicted f rame t o h ave some discontinuities in spaces between blocks. The backward approach is to estimate motion vectors for the next frame from the first frame and construct the predicted frame from the first frame.in the proposed scheme we compensated backward the blocks had motion vector in the frames by white (1) pixels value and those with zero motion that is the stationary by black (0) pixels value. Hence, the compensated frame has been constructed with black and white value see figure 3 a.

C. Mathematical morphology At the third step of the proposed scheme, the mathematical

morphology is used to clear the noise and to connect moving blocks as following: Open filter: the erosion of a frame, which followed by dilation, obtains it. It is useful for removing small objects in the given frame as following:

F S = (F ⊖ S) ⊕ S (2)

Where F is image, S structuring element 7x7. Close filter: to rebuild the area of surviving components that was lost in opening is the following:

F • S = (F⊕ S) ⊖ S (3)

Where S structuring element of size 9×9 pixels. Then search of all contours is carried out. Then it tosses the contours that are too small and approximate the rest with polygons. Close filter: It is obtained by the dilation of an image which is then followed by erosion. It is used to remove small dark regions in frame. The closing filter connects together objects wrongly fragmented into smaller portions, while the opening filter removes the small blocks introduced by image noise [24].

III. THE IMPLEMENTATION OF THE PROPOSED SCHEME FOR MOVING OBJECT DETECTION.

In the first step the motion vectors are estimated by

diamond search algorithm using thresholding to eliminate the less plagued motion by noise effects. The SAD of blocks that have known zero motion vectors must be exclusively a result of any noise in image sequence. The mean and standard deviation of the resulting collection of SAD is computed, and some number of average deviations above the mean represents a threshold value. In all following motion vector calculations, only the SAD that fall below this threshold can be considered true non-zero motion vectors. This method relies on the assumption that a large number of zero-motion regions can be found before considering noise.

In the compensated step, the blocks that had motion vector in the frames are compensated with black pixels values and those with zero motion that is the stationary are compensated by zero values. Hence, we can say that the moving objects have been detected from the stationary background.

The choice of the block size will have a great impact on results. A smaller block size will tend to produce more false motion vectors despite any noise estimation, but will result in finer edge definition in the resulting detected image. Larger block sizes have coarser edges. The principal phases of detection scheme can be summarized as follows:

• Extraction of two successive images from the input video.

• Finding the moving objects for consecutive frames using Diamond search algorithm of motion estimation and compensation using thresholding operation of noise.

• Enhancing step of the detected result using morphological operations.

• Highlighting the multiple objects finding using edge or green boxes around over centroid.

225 © IT4OD 2014

Page 232: IT4OD 2014 Proceedings

Figure.4 presents an example of proposed motion detection scheme in different phases.

(a)

(b)

(c)

(d)

Fig. 4. Motion vectors estimated between two successive frame using diamond search algorithm with thresholding , block of size 8x8 pixels and the search window for size ± 7 pixels in (a),the reconstructed frame after motion compensated in (b), the filtering result using morphological operations in (c), moving object detection result in Sofa video sequences in (d).

IV. RESULTS AND DISCUSSION

The proposed algorithm has been evaluated using data set publicly available at the web address http://wordpress-jodoin.dmi.usherb.ca/dataset2012/.Test video sequences contain a moving people, moving transport , and also a number of video sequences without any motion[25]. Detection results for some of the test sequences are presented in the following figure 5. Processing time of a current frame depends on the blocks sizes and changes occurring in a background. If the background is stable and few blocks are detected, then processing time decreases. The object has been found successfully out on all test video. We can see that our proposed method can effectively detect moving objects with different sizes and shapes.

(a) Tram stop video sequences

226 © IT4OD 2014

Page 233: IT4OD 2014 Proceedings

(b) Street light video sequences

(c) Abandoned Box video sequences

(d) sofa video sequences

Fig.5. Moving object detection result in different real videos sequences

If at first a strongly rarefied object moves slowly, then it is gradually included into the background. Therefore, in this case, we cannot directly find out an object. The performed

experiments have shown that the algorithm quickly finds out objects on a c omplex dynamic scene. Mo ving object detection is achieved practically in real time.

V. CONCLUSIONS AND FUTURE WORKS We have presented in this paper an algorithm designed to

detect a moving object based on motion estimation and compensation by Diamond search algorithm of block-matching methods and mathematical morphology. Our algorithm consists of the following steps: the first consists to estimate the motion vectors between successive frames using Diamond Search Algorithm, in the second step the blocks that had motion vector in the frames are compensated with ones values and those with zero motion that is the stationary are compensated by zero values. In the third step, the morphological opening and closing filters are used for refining the object detected. Hence, we can say that the moving objects have been detected from the stationary background. The advantages of the proposed scheme are its simplicity to implement and its accuracy. However, the choice of the block size will have a great impact on results and in the case that the object moves slowly it is gradually included into the background. The efficiency of our approach is illustrated and confirmed by our experimental videos. In this paper, the new real time detection scheme is more suitable for coding surveillance video sequences in real time. Our future work will focus on how to extend the proposed algorithm to sequences that have more complex background and true physical motion.

REFERENCES [1] Zhou J., Gao D., Zhang D., “Moving Vehicle Detection for Automatic

Traffic Monitoring,” Vehicular Technology, IEEE Transactions on Volume 56, Issue 1, Jan. 2007 Page(s):51 – 59.

[2] Stauffer, C., Grimson, W.: Adaptive background mixture models for real-time tracking. In: Computer Vision and Pattern Recognition, vol.2, pp.246-252 (1999).

[3] L. Li, W. Huang, I.Y. Gu, Q. Tian, Foreground object detection in changing background based on color co-occurrence statistics, in: IEEE Workshop on Applications of Computer Vision, Orlando, Florida, 2002, pp. 269–274.

[4] P. KaewTraKulPong, R. Bowden, An improved adaptive background mixture model for real-time tracking with shadow detection, in: European Workshop on Advanced Video Based Surveillance Systems, Kluwer Academic, 2001

[5] Rongbo Zhu, “Efficient fault-tolerant event query algorithm in distributed wireless sensor networks,” International Journal of Distributed Sensor Networks, vol. 2010, Article ID 593849, pp. 1-7, 2010

[6] Elgammal, A., Harwood, D., Davis, L.: Non-parametric model for background subtraction. In: European Conference of Computer Vision, pp. 751–767 (2000).

[7] H. Askar, X. Li, Z. Li, Background clutter suppression and dim moving point targets detection using nonparametric method, in: International Conference on Communications, Circuits and Systems and West Sino Expositions, vol. 2,2002, pp. 982–986

227 © IT4OD 2014

Page 234: IT4OD 2014 Proceedings

[8] D. Thirde, G. Jones, Hierarchical probabilistic models for video object segmentation and tracking, in: International Conference on Pattern Recognition, vol. 1, 2004, pp. 636– 639

[9] Rongbo Zhu, “Intelligent Collaborative Event Query Algorithm in Wireless Sensor Networks,” International Journal of Distributed Sensor Networks, vol. 2012, Article ID 728521, pp.1-11, 2012.

[10] V. Ferrari, T. Tuytelaars, L.V. Gool, Object detection by contour segment networks, in: European Conference on Computer Vision, 2006, pp. 14–28.

[11] T.Brox,A.Bruhn,J.Weickert, Variational motion segmentation with level sets, in: European Conference on Computer Vision,2006,pp.471–483.

[12] M. Yokoyama, T. Poggio, A contour-based moving object detection and tracking, in: IEEE International Workshop on Visual Surveillance and Performance Evaluation of Tracking and Surveillance, 2005, pp. 271–276.

[13] W. Fang, K.L. Chan, Using statistical shape priors in geodesic active contours for robust object detection, in: International Conference on Pattern Recognition, 2006, pp. 304–307.

[14] A.A. Stocker, An improved 2d optical flow sensor for motion segmentation, Proceedings of IEEE International Symposium on Circuits and Systems 2 (2002) 332–335.

[15] S.P.N. Singh, P.J. Csonka, K.J. Waldron, Optical flow aided motion estimation for legged locomotion, in: IEEE International Conference on Intelligent Robots and Systems, 2006, pp. 1738–1743.

[16] I.E.G. Richardson,’’ H.264 and MPEG-4 Video Compression” John Wiley &Sons, 2003.

[17] L. DE Vos and M. Stegherr, ‘’Parametirizable VLSI Architectures for the Full-Search Block-Matching Algorithm’' IEEE Trans. Circ. and Syst., vol. 36, No. 10, pp. 1309-1316, Oct. 1989.

[18] R. Li, 8. Zeng and M. L. Liou, "A new three-step search algorithm for block motion estimation," IEEE Trans. Circuits Syst. Video Technol., vol. 4, no. 4, , pp. 438-442, Aug. 1994.

[19] Hasanul A. Basher’’Two Minimum Three Step Search Algorithm for Motion Estimation of Images from Moving IR Camera’’Proceedings of IEEE Southeastcon,pp. 384-389,March 2011

[20] L. M. Po and W. C. Ma, "A novel four-step search algorithm for fast block motion estimation ," IEEE Trans. Circuits Syst. Video Technol. , vol. 6, no. 3, pp. 313-317, June 1996.

[21] S. Zhu and K. K. Ma, “A new diamond search algorithm for fast block-matching motion estimation,” IEEE Trans. Image Processing, vol. 9, no. 2, pp. 287-290, Feb. 2000.

[22] Xuzhi Wang, Wanggen Wan, Jinyuan Zhang, Yanru Ma’’Research on the Motion Estimation with a Novel Octagon Cross Diamond Search Algorithm’’Asia Pacific Conference on Postgraduate Research in Microelectronics and Electronics (PrimeAsia), pp.89-92,Sept. 2010

[23] R. A. Manap S. S. S. Ranjit A . A. Basari and B. H. Ahmad’’Performance Analysis of Hexagon-Diamond Search Algorithm for Motion Estimation ’’ 2nd International Conference on Computer Engineering and Technology,vol.3,pp.155-159.2010.

[24] Zhu,Weigang, Hou,Guojiang & Jia,Xing. (2002). A study of locating vehicle license plate based on color feature and mathematical morphology. Signal Processing. vol.1,pp.748-751.

[25] http://wordpress-jodoin.dmi.usherb.ca/dataset2012/.

228 © IT4OD 2014

Page 235: IT4OD 2014 Proceedings

CRYPTANALYSIS OF DISCRETE LOGARITHMS BASED CRYPTOSYSTEMS USINGCONTINUED FRACTION AND THE LEGENDRE’S RESULT

Karima DJEBAILI 1 Lamine MELKEMI2

Department of Computer Science, University of Batna, Batna, [email protected] [email protected]

ABSTRACT

The security of many cryptographic methods relies on the in-tractability of solving some mathematical problems such thatthe discrete logarithm problem. In this paper, we research theissues of this problem to be able to provide a cryptanalytic at-tack to solve it. This attack makes use of an algorithm basedon continued fractions and Legendre’s result which finds thenumerator and denominator of a fraction in polynomial timewhen an appropriate countermeasures are not used. The al-gorithm based on continued fractions uses to reveal the secretkey if we are given an approximation of non-negative integerx with additive error at most 1

4p12 , where p is the order of a

finite filed Zp . Also we implement our algorithm to recoverthe encryption-key of some popular cryptosystems, then wedisplay that the whole encrypted-message can be decrypted.

Index Terms— Cryptography, cryptanalysis, public-keyencryption, discrete logarithm problem, continued fraction.

1. INTRODUCTION

Cryptography is a process of concealing an interaction froman attacker using some mathematical techniques. The crypt-analysis is the study of these techniques for trying to defeatinformation security services if proper countermeasures arenot used [1].

The discrete logarithm problem (DLP) is a main prob-lem in modern cryptography. The security of diverse cryp-tosystems and protocols (such as Diffie-Hellman key ex-change protocol [2], ElGamal cryptosystem, ElGamal signa-ture scheme [3], DSA, cryptosystems and signature schemesbased on elliptic and hyper-elliptic curves) relies on the pre-sumed computational difficulty of solving the DLP. See [4]for background on this area.

There are a few well-known generic algorithms to solvethe DLP. The baby-step giant-step method due to Shanks [5]is a deterministic generic algorithm that can solve the DLPin time O(p1/2log p) using space O(p1/2log p). This algo-rithm is based on a time-memory trade off technique. Therho method due to Pollard [6, 7] is a probabilistic genericalgorithm that can solve the DLP in expected running timeO(p1/2) (under certain assumptions) using only O(log p)

amount of space (requiring the storage of a constant numberof group elements). For an excellent survey of the state of theart in these two methods, the reader is referred to [8, 9].

In this paper we consider the cryptanalysis of a class ofcryptosystems based on DLP as follows:Firstly find an approximation of non-negative integer x dawnto some error of size 1

4p12 and compute the continued fraction

and the Legendre’s result to restore a corresponding plain-textfrom the obtained cipher-text.It is always possible to adapt Shanks baby step giant-step al-gorithm to perform the search in the remaining possible key-space; However the memory requirements could make thisapproach impractical. For example, if 100 bits remain to beidentified, computing to the order of 250 group operations canbe considered reasonable, but storing a table of 250 entries ismuch more problematic. To avoid this issue, we can use ourmodel, which has a lower memory requirement.

This paper is organized as follows. Section 2 gives somebasic terminology and concepts. In Section 3, the proposedscheme is introduced with it’s performance analysis. an illus-trative example of the proposed scheme is described in Sec-tion 4. Section 5 detecting the secret key and the massage ofsome known cryptosystem using our model. Finally, Section6 gives the conclusion.

2. BACKGROUND

2.1. Discrete logarithm Problem

Several important algorithms in public-key cryptography basetheir security on the assumption that the DLP has no efficientsolution [10].

Definition 1. DLP is given a prime p, a generator α of Z∗p,

and an element β ∈ Z∗p, find the integer z, 0 ≤ z ≤ p − 2,

such that αz ≡ β (mod p).

α ,β and p are public information and z is the secret in-formation.It is also possible to define the DLP on groups whose orderp is not a prime number. However, we will focus on the casewhen the order of the group is a prime number.

229 © IT4OD 2014

Page 236: IT4OD 2014 Proceedings

2.2. Public-key Encryption

Let Ee : e ∈ K be a set of encryption messages, and letDd : d ∈ K be the set of corresponding decryption mes-sages, where K is the key space. Consider any pair of asso-ciated encryption/decryption messages (Ee, Dd) and supposethat each pair has the property that knowing Ee it is computa-tionally infeasible, given a random cipher-text c ∈ C, to findthe message m ∈ M such that Ee(m) = c. This property im-plies that given e it is infeasible to determine the correspond-ing decryption key d. This is unlike symmetric-key cipherswhere e and d are essentially the same[1].

2.3. Continued Fraction and the Legendre’s Result

In different mathematical applications, it is interesting to con-sider the representation of a rational number A

B , where A andB two non-negative integers such that gcd(A,B) = 1, interms of continued fractions[11]. That is the construction of afinite sequence [a0, a1, ...ak−1] of non-negative integers suchthat:

A

B= a0 +

1

a1 +1

a2...+1

ak−1

(1)

These integers aj can be calculated using successive Eucldiandivisions in the following way :

A = a0B + C2

B = a1C2 + C3

C2 = a2C3 + C4

· · ·Ck−1 = ak−1Ck

(2)

Since A and B are coprime,Ck = 1. On the other hand,truncating the expansion presented in (4) leads to the rationalnumbers:

Aj

Bj= a0 +

1

a1 +1

a2...+1

aj−1

; j = 2 : k (3)

commonly referred to as convergents of AB .To compute the Aj

and Bj , one may use the well known recurrences below:

A0 = 1, B0 = 0;A1 = a0, B1 = 1

Aj = aj−1Aj−1 +Aj−2; j = 2 : k

Bj = aj−1Bj−1 +Bj−2; j = 2 : k

(4)

By a simple manipulation one inductively checks that:

AjBj−1 −Aj−1Bj = (−1)j (5)

from which one deduces that gcd(Aj , Bj) = 1. We are inter-ested to the time necessary to compute the integers aj as wellas the convergents Aj

Bjof A

B . In this respect we expose theresult below:

Theorem 1. Let T denote the time necessary for computingthe integers aj and the convergents Aj

Bjof A

B and assume thatmax(A,B) ≤ p. Then there exist small constants α and γsuch that T ≤ α(log2 p)

γ .

Proof. It is obvious that the multiplication and Euclidian di-vision of two positive integers less than p can be computedusing less than (log2 p)

2 bit operations. The addition uses(log2 p) bit operations in the worst case behavior and thenumber k of the Euclidian divisions in (4) is at most (log2 p)so that the determination of the integers aj can be realizedusing at most (log2 p)

3 bit operations. Similarly the recur-rences (6) allows us to conclude that the covergents Aj

Bjof A

B

can be computed using at most 2(log2 p)3 + 2(log2 p)

2 bitoperations. The claim in the theorem is directly derived fromthis complexity analysis.

Extending the classical Legendre’s result, which givessufficient conditions for a rational number A

B to be a conver-gent to a given g

h :

Theorem 2. Let A,B, g, h ∈ Z with B ≥ 1,1 ≤ h ≤ B,gcd(A,B) = 1, gcd(g, h) = 1 if:

|AB

− g

h| < 1

2h2(6)

then AB is a convergent of g

h .

Remark 1. This important result has known different im-provements where the right hand side 1

2h2 of (6) is replacedby c

h2 with c constant. With such a modification the claim ofthe Theorem is modified but is so similar that it can be posi-tively exploited.As the arguments and results based on (6) remain, up to slightmodifications, valid for the case of c

h2 , we will be satisfiedwith the Legendre’s Theorem in our study for the sake of clar-ity.

2.3.1. Examples of Continued Fractions and Convergents

Example 1. What is the continued fraction expansion of−19971 ? We have:

−199 = 71 · (−3) + 14.

71 = 14 · 5 + 1.

14 = 1 · 14 + 0.

so −19971 = [−3, 5, 14].That is 199

71 =−3 + 15+ 1

14

2.4. The Discrete Logarithm Problem in Cryptography

In this section we present two cryptographic primitives whichare considered to be public-key cryptography. Each basic al-lows two events, Alice and Bob, with no before associate toexecute two different tasks: Securely exchange a secret keyover an insecure channel, encrypt and decrypt messages forconfidential communication.

230 © IT4OD 2014

Page 237: IT4OD 2014 Proceedings

2.4.1. Diffie Hellman Key Exchange

Diffie and Hellman suggested an algorithm which allows twoparties to safely a secret key over an insecure channel, thesecurity of which relies on the problems of computing DLP.Briefly, the algorithm , as implemented by two parties Aliceand Bob, is as follows:

1. Alice and Bob use the insecure channel to agree overZ∗p, and a primitive element α ∈ Z∗

p.

2. Alice and Bob each select a random integer, x and y re-spectively, from 2, ..., p−2 which they keep to them-selves.

3. Alice and Bob compute αx and αy respectively andsend these to each other over the insecure channel.

4. Alice computes (αy)x and Bob computes (αx)

y .

At the end of this protocol, both parties now share the groupelement αyx = αxy. This can be used to derive, say, a sharedsecret key for a private key cryptosystem. An eavesdropperEve knows only αx and αy . It is clear that she must learneither x or y to obtain the shared secret. This can only beaccomplished from the information she knows by computinglogα(α

x) or logα(αy). Thus, if the DLP in Z∗p is infeasible

then the security of the key exchange is assured.

2.4.2. Elgamal Cryptosystem

Elgamal proposed a public key cryptosystem and a signaturescheme, the security of both of which depends upon the dif-ficulty of computing DLP. Today the Elgamal cryptosystemis the default public key cipher for the widely-used GNU Pri-vacy Guard (GPG) cryptographic software suite. Briefly, thecryptosystem, as used by Alice to communicate confidentiallywith Bob, is as follows:

1. key generation

(a) Bob selects a finite field Z∗p and a primitive ele-

ment α of this field.

(b) Bob selects a random integer x from 2, ..., p−1.This is his private key.

(c) Bob computes β = αx and publishes the valuesZ∗p, α, β. This is his public key.

2. Encryption

(a) Alice encodes the message she wishes to sendBob as an element of Zp, m, using a public en-coding scheme.

(b) Alice selects a random integer y from 2, ..., q −1. This integer should be kept secret and usedfor only one encryption session.

(c) Alice computes c1 = αy and c2 = βy ·m( α andβ are known from Bobs public key).

(d) Alice sends Bob the cipher-text (c1, c2).

3. Decryption

(a) Bob receives the cipher-text (c1, c2).

(b) Bob computes c−x1 c2 = (αy)

−xβym

= α−xyαxym = m.

(c) Bob decodes the message from m, according tothe public scheme used by Alice.

It is clear that an Eavesdropper requires knowledge of the pri-vate key x in order to decrypt the message. To extract x fromthe information she has requires computing logα(β). Thus,if the DLP in Z∗

p is infeasible, the privacy of Alice and Bobscommunication is assured.

2.5. Side Channel Attacks

A side channel attack on cryptography is an attack that fo-cuses on the physical implementation of the algorithm not onthe specification of the algorithm. An attacker can observethe events that occur in the processor and make correlationsbetween this last and the data being processed. A side channelattack based on two known versions [12] : timing and poweranalysis.

3. OUR MODEL FOR DETECTING THE SECRETKEY

3.1. Assumptions Related to the Approximating of the In-formation

Let x be the non-negative integer satisfying the following be-zout relation where z is the secret key:

xz = 1 + tp (7)

3.1.1. Assumption 1.

The value x approximating x satisfies x ≤ x < x + 14p

12 .

Concerning Assumption 1, one may claim that it can be re-vealed by physical techniques. Let assume that:

x = [d0d1...d2s−1] =

2s−1∑j=0

dj2j (8)

is the binary representation of x and that by the side channelattack one is aware of the bits d0d1..d2s1 We can state theresult below:

Theorem 3. Let x =∑2s−1

j=s−3 dj2j .Then x ≤ x ≤ x +

14p

12 .That is Assumption 1 is fulfilled.

231 © IT4OD 2014

Page 238: IT4OD 2014 Proceedings

Proof. let e = x− x =∑s−4

j=0 dj2j .It is straightforward that:

2s− 1 ≤ log2 x < 2s and s− 4 ≤ log2e < s− 3

from which we deduce that:

s−2 ≤ log2 4e < s−1, log2(4e)2 < 2s−2 < log2 x

so that:

x− x = e < 14x

12 ≤ 1

4p12 .

exactly as claimed.

3.2. Algorithm for Detecting the Secret Key and the Mes-sage

The new algorithm is described as fellows:

Algorithm.1

INPUT: Integers (p, x, c) where p is the order of a finitefiled Zp ,x obtained from section 3.1, and c is the encryptionmessage.

OUTPUT: Integers (m, z) where z < p14 is the secret key

and m is the decrypted message using the secret key z.

BEGIN

1. Compute the continued fraction expansion of xp .

2. Checking each denominator in turn.

3. the secret key is given by the last z < p14 .

4. Dz(c, z) = m

END

Proof. Let z and t be integers such that (1) is fulfilled. UsingAssumption 1, it is not hard to see that:

| px− z

t| = |z(x− x)− 1

tx| < 1

t

1

x(x− x)z

< 21

t

1

x(x− x)z

(9)

On the other hand one may check from Assumption 1 andAssumption 2 that

(x− x) <p

4p12

<p

4z2(10)

Combining these two estimates, one finds out:

| px− z

t| < 2

1

t

p

4xz<

1

2t

p

1 + tp<

1

2t2(11)

so that the hypothesis in Theorem 3 are satisfied. As a conse-quence the rational number z

t is a convergent of px .

Let expose for the sake of generality the following theo-rem claiming the same result as in Theorem 4:

Theorem 4. Under the model described in subsections 2.1and 2.2 and the two assumptions below:

(1) |x− x| ≤ r(2) z < 1

2

√pr

where r ≥ pλ, λ > 0, our model finds the message mand the secret key x using a reasonable time (according toDefinition 1).

Proof. We have

| xp− t

z| = | (x− x)z − 1

pz

≤ | x− x

p|+ 1

pz≤ r

p+

1

pz

Our goal is to show that rp +

1pz ≤ 1

2z2 which is equivalentto

2rz2 + 2z − p ≤ 0

It is readily seen that because of rp ≥ 16

z <1

2

√p

r≤ −1 +

√1 + 2pr

2r

from which one deduces that | xp − tz | <

12z2 thereby t

z isa convergent of x

p

4. AN ILLUSTRATIVE EXAMPLE

let as assume that: p = 465573521363, x = 218042042816,and the secret key z = 521.Using continued fraction we calculate x

p :

[0,1

2,7

15,15

32,22

47,37

79,207

442,244

521,6063

12946]

Checking each denominator in turn we see that the secret keyis given by the last z < p

14 is equal to 521 is exactly the right

secret key.

5. DETECTING THE SECRET KEY AND THEMESSAGE OF ELGAMAL CRYPTOSYSTEM

The security of Elgamal public-key cryptosystem is in accor-dance with the intractability of the DLP.

The encryption process requires two modular exponentia-tion, namely

(1) y1 = αk (mod p)(2) y2 = (αx)k ·m (mod p)

232 © IT4OD 2014

Page 239: IT4OD 2014 Proceedings

where x is private key and m is the message where the entityA would to encrypt. So to decrypt the message m the entityB should calculate this equation:

m = y−x1 · y2(mod p)

Without knowledge of the secret key x no one (cryptana-lyst) can find the secret key and decrypt the message m butif proper countermeasures are not used our model can find it.

Example 2. Let as assume that p = 770557, g = 104220,x = 17, k = 20, and m = 100, the public key is (p, g, gx)and the secret key is (x) the two modular exponentiation are:

(1) y1 = αk (mod p) = 628181(2) y2 = (αx)k ·m (mod p) = 176518

The entity A sends (628181, 176518) to the entity B.Assume that x = 407869 using our model we calculate x

p :

[0, 1,1

2,9

17,325

614,659

1245,2302

4349,5263

9943]

we can find the secret key x = 17 so we can decrypt the mes-sage as follows:

m = y−x1 ·y2 (mod p) = 628181−17 ·176518 (mod p) = 100

is exactly the secret message.

There are many cryptosystems can be quite vulnerableagainst the attack developed in this paper (such that Diffie-Hellman and the cryptosystem proposed by David Naccacheand Jacques Stren [13]......).

6. CONCLUSION

We have considered in this paper the cryptanalysis of the DLPbased cryptosystems. Our model can find the secret key anddetect the secret message using the continued fraction ap-proach and the Legendres Result if an approximation of non-negative integer x dawn to some error of size 1

4p12 is given.

We applied our model to detect the secret key and the se-cret message of Elgamal cryptosystem where its protection isin accordance with the intractability of the DLP.

Not only the Elgamal cryptosystem there are many cryp-tosystems based on DLP can be quite vulnerable against theattack developed in this paper

Although we were able to reduce the search time andspace complexity and develop better algorithms in compar-ison with exhaustive search method and Shanks Baby-StepGiant-Step method.

7. REFERENCES

[1] Alfred J Menezes, Paul C Van Oorschot, and Scott AVanstone, Handbook of applied cryptography, CRCpress, 1996.

[2] Whitfield Diffie and Martin E Hellman, “New directionsin cryptography,” Information Theory, IEEE Transac-tions on, vol. 22, no. 6, pp. 644–654, 1976.

[3] Taher ElGamal, “A public key cryptosystem and a signa-ture scheme based on discrete logarithms,” in Advancesin Cryptology. Springer, 1985, pp. 10–18.

[4] Andrew Odlyzko, “Discrete logarithms: The past andthe future,” in Towards a Quarter-Century of Public KeyCryptography, pp. 59–75. Springer, 2000.

[5] Daniel Shanks, “New types of quadratic fields havingthree invariants divisible by 3,” Journal of Number The-ory, vol. 4, no. 6, pp. 537–556, 1972.

[6] John M Pollard, “Monte carlo methods for index com-putation (),” Mathematics of computation, vol. 32, no.143, pp. 918–924, 1978.

[7] John M Pollard, “Kangaroos, monopoly and discretelogarithms,” Journal of cryptology, vol. 13, no. 4, pp.437–447, 2000.

[8] David Freeman, Michael Scott, and Edlyn Teske, “Ataxonomy of pairing-friendly elliptic curves,” Journalof cryptology, vol. 23, no. 2, pp. 224–280, 2010.

[9] K Gopalakrishnan, Nicolas Theriault, and Chui Zhi Yao,“Solving discrete logarithms from partial knowledge ofthe key,” in Progress in Cryptology–INDOCRYPT 2007,pp. 224–237. Springer, 2007.

[10] Christof Paar and Jan Pelzl, Understanding cryptogra-phy: a textbook for students and practitioners, Springer,2010.

[11] Manfred Schroeder, Number theory in science and com-munication: with applications in cryptography, physics,digital information, computing, and self-similarity,vol. 7, Springer, 2008.

[12] Huang Qun Sheng and Joshua Siao Shao Xiong, “Anexamination of various side channel attacks on cryp-tographic systems,” CS2107-Semester IV, 2012-2013,p. 23.

[13] David Naccache and Jacques Stern, “A new public-key cryptosystem,” in Advances in CryptologyEURO-CRYPT97. Springer, 1997, pp. 27–36.

233 © IT4OD 2014

Page 240: IT4OD 2014 Proceedings

1

Fusionof Finger-Knuckle-Print & Finger-Vein-Printfor PersonalIdentificationUsing Principal

Component AnalysisMohammed.Saigaa1, Abdallah.Meraoumia1, Salim.Chitroub2, and Ahmed Bouridane3

1 Universite Kasdi Merbah Ouargla, Laboratoire de Genie Electrique.Faculte des Sciences et de la Technologie et des Sciences de la Matiere, Ouargla, 30000, Algerie2Signal and Image Processing Laboratory, Electronics and Computer Science Faculty, USTHB,

P. O. Box 32, El Alia, Bab Ezzouar, 16111, Algiers, ALGERIA.3School of Computing, Engineering and Information Sciences, Northumbria University

Pandon Building, Newcastle upon Tyne, [email protected], [email protected], [email protected], [email protected]

Abstract—The single biometric system may be inadequate forpassive authentication either because of noise in data samplesor because of unavailability of a sample at a given time. Inorder to overcome the limitation of the single biometric, amultimodal biometric are used. In this paper, we propose amultimodal biometric system for person identification using FKP(Finger Knuckle Print) and FVP (Finger vein Print)modality.This work describes the development of a multimodal biometricpersonal identification system based on features extracted byPCA technique. The outputs of each subsystems are combinedusing the concept of data fusion at matching score level andfeature level. The experimental results showed that the designedsystem achieves an excellent identification rate and provides moresecurity than uni-modal biometric system.

Index Terms—Biometrics, Identification, multimodal, FKP,FVP, PCA, Data fusion.

I. INTODUCTION

In our day, we are frequently being asked for verificationof our identity. Normally, this is done through the use ofpasswords when pursuing activities like public security, accesscontrol and surveillance, application log-on, etc. The problemof traditional system security entails the protection of systemelements (passwords, ID carte); therefore, this security canbe easily breached when a password is divulged or a cardis stolen. Furthermore, most people use the same passwordacross different applications; an impostor, upon determininga single password, can now access multiple applications.Simple passwords can be easily guessed whereas difficultpasswords may be hard to recall, and passwords can also bebroken by simple dictionary attacks [1]. The need for reliableuser authentication techniques has increased in the wake ofheightened concerns about security and rapid advancementsin networking, communication, and mobility. These limitationsassociated with the use of passwords can be ameliorated bythe incorporation of better methods for user authentication.Biometrics technology has proven to be an accurate andefficient answer to the problem. Biometrics is an emergingfield of research in recent years and has been devoted to theidentification of individuals using one or more intrinsic phys-ical or behavioral traits (also known as traits or identifiers).

Among these biometric technologies, hand-based biometrics,including fingerprint, two-dimensional and three-dimensionalpalmprints, hand geometry or hand shape, finger-vein-print,fingerknuckle-print.

Unimodal biometrics systems (based on a single biometrictrait) are often not able to meet the desired performancerequirements for large user population applications due toproblems such as noisy sensor data, nonuniversality or lack ofdistinctiveness of the biometric trait, unacceptable error rates,and spoof attacks. Therefore, multimodal biometric methodshave been developed to overcome those problems, whichcombine multiple biometric samples or characteristics derivedfrom samples. Several studies [2][3] have suggested that byconsolidating information from multiple biometric traits, inthe hope that the supplementary information between differentbiometrics, might improve the identification performance. Thedesign of a multimodal biometric system is strongly depen-dent on the application scenario. A number of multimodalbiometric systems have been proposed in the literature thatdiffer from one another in terms of their architecture [4],the number and choice of biometric modalities, the level atwhich the evidence is accumulated, and the methods used forthe integration or fusion of information. In this work, FKPand FVP are integrated to construct an efficient multimodalbiometric identification. In this system, we propose to use aPCA technique to extract features by projecting PVP (FVP)images into the subspace obtained by the PCA transform,called eigenKnuckle (eigenfinger) features. The outputs fromthe matcher modules (FKP, FVP) are combined using theconcept of data fusion at matching score level and featurelevel.

The remainder of the paper is organized as follows. Theproposed scheme for uni-modal biometric identification sys-tem based on PCA technique is presented in section 2. Section3 gives a brief description of the feature extraction. Section 4present the matching & normalization process used. The fusiontechnique used for fusing the information is detailed in section5, A sections 6 is devoted to describe the evaluation criteria.The experimental results, prior to fusion and after fusion, aregiven and commented in section 7. Finally, section 8 is devoted

234 © IT4OD 2014

Page 241: IT4OD 2014 Proceedings

2

to the conclusion.

II. PROPOSED SYSTEM

The proposed system is composed of two different sub-systems exchanging information at matching score level andfeature level. Each uni-modal biometric system (for exam-ple Fig. 1 show a uni-modal biometric identification systembased on FKP modality) consists of preprocessing, matching(correlation process), normalization and decision process. Inthe preprocessing module, the Region Of Interest (ROI) islocalized, using the methods described in [5] and [6] for PKPand FVP, respectively. For the enrolment phase, each ROI sub-image is mapped into one dimensional signal (Observationvector). After that, these vectors are concatenated into twodimensional signal. This vector is transformed by the PCAtransform into feature space called eigenpalms space (Trainingmodule). For identification phase, the same feature vector isextracted from the test palm-vein image and projecting intocorresponding subspace. Then euclidian distance is computedusing all of the references in the database (Matching module).Finally, after a normalization process, decision which personaccepted or rejected is made.

III. FEATURE EXTRACTION

A. Principal Component Analysis

The PCA transform applied to a set of images, can beused to find the subspace that is occupied by all of theimages from the analyzed set. The methodology for calculatingprincipal component is given by the following method [7]:Let the training set of vectors of original data (each vectorwith dimensionM ), X, be x1, x2, x3, ..., xN . First, computethe mean of original data of the set by:X = 1

N

∑Ni=0 xi.

Second,subtract the mean from each original data togeneratethe mean removed data byΦi = xi − X. Third, form thematrix using mean removed data of (M×N ) dimension,D =[Φ1 Φ2 Φ3 ..... ΦN ]. Fourth, compute the sample covariancematrix (C) of dimension (M × M ),C = 1

N

∑Nn=0 ΦnΦT

n =DDT and compute the eigen values of thecovariance matrixand of the eigen vectors for the eigen values. Finally, keeponly the eigen vectors corresponding toL largest eigen values.These eigen values are called as principal components.

B. Observation Vector Generation

The PCA applied to a set of images, can be used to findthe subspace that is occupied by all of the images from theanalyzed set. When the images are encoded into this subspaceand then returned to the original space, the error between thereconstructed and the original images is minimized.

To begin, we have a training set ofN ROI sub-images.By reordering these ROI sub-images into one dimensionalvector, xi and concatenate allxi, with i = [1, ...., N ] ], forobtaining a two dimensional vector,X = [x1, x2, x3, ..., xN ].The process of obtaining a single subspace consists of findingthe covariance matrixC of the training set of ROI sub-images,X, and computing its eigenvectors. Each original ROI sub-image can be projected into this subspace. The eigenvectors

spanning the palm-space can be represented as images withthe same dimensionality as the palm ROI sub-images usedto obtain these eigenvectors. These sub-images are calledeigenfingers.

IV. MATCHING & NORMALIZATION PROCESS

Each FKP (FVP) is represented by a unique observationvector. The task of major concern was to appoint an unknownFKP (FVP) to one of the possible classes. We will assumethat a set of reference FKP (FVP) are available to us andwe have to decide which one of these reference patterns anunknown one (the test pattern) matches best. A reasonable firststep to approaching such a task is to define a measure or acost measuring the similarity between the (known) referencevectors and the (unknown) test vector, in order to performthe matching operation known as template matching. Systemsthen make decisions based on this score.

A template in our system is represented by a FKP or FVPfeature vector. In order to identify a user, the matching processbetween the test template,Φt, and the templates from thedatabase,Φi, has to be performed. The matching between cor-responding feature vectors is based on the Euclidean distance.In this step, the following distance is obtained:

d(Φt, Φi) =√

(Φt − Φi)(Φt − Φi)T (1)

where i = 1, 2, ...., N are palm templates fromthe databaseandN is the total number of templates in the database.

During the identification process, the distance d betweenΦt

and all of templates in the database are computed, thereforethe vector,V , given all these distance is given a:

V = [d1 d2 d3 d4....dN ] (2)

An important aspect that has to be addressed in identificationprocess is the normalization of the scores obtained. Normal-ization typically involves mapping the scores obtained into acommon domain. Thus, aMin−Max normalization schemewas employed to transform the scores computed into similarityscores in the same range.

V =V −min(V )

max(V )−min(V )(3)

whereV denotesthe normalized scores. However,thesescoresare compared, and the lowest score is selected. Therefore, thebest score isD0 and its equal to:

D0 = mini

(V ) (4)

V. FUSION PROCESS

The goal of the fusion process is to investigate the systemsperformance when the information from different modalities(FKP, FVP) is fused. In fact, in such a case the system worksas a kind of multi-modal system with a single biometric traitbut with multiple units. Therefore, the information presentedby different modalities (FKP, FVP) is fused to make the systemefficient. Multimodal biometric systems use various levels offusion: (i) Fusion at the feature extraction level, where thefeatures extracted using two or more sensors are concatenated;

235 © IT4OD 2014

Page 242: IT4OD 2014 Proceedings

3

Fig. 1. The block-diagram of the proposed uni-modal biometric identificationsystem based on PCA technique.

(ii) Fusion at the matching score level, where the matchingscores obtained from multiple matchers are combined; (iii)Fusion at image level, Image fusion is the process by whichtwo or more images are combined into a single image; (iv)Fusion at the decision level, where the accept/reject decisionsof multiple systems are consolidated [8]. In this work wepresent the fusion at the matching score level and Fusionat the Feature level. Fusion at the matching-score level ispreferred in the field of biometric recognition because thereis easy to access and combine the matching scores [9]. Inour system we adopted the combination approach, where theindividual matching scores are combined to generate a singlescalar score, which is then used to make the final decision.During the system design we experiment five different fusionschemes: sum (SUM), MINimum (MIN), MAXimum (MAX),MULtiplication (MUL) and WeigHTed-sum (WHT). Supposethat the quantityD0i represents the score of theith matcher(i = 1, 2) for the txo algorithms andDF represents the fusionscore. Therefore, DF is given by:

• SUm-Score (SUM):DF =∑n

i=0 D0i

• Sum-Weighting-Score (WHT):DF =∑n

i=0 wiD0i

• MIn-Score (MIN): DF =minD0i• MAx-Score (MAX): DF =maxD0i• MUl-Score (MUL): DF =

∏ni=0 D0i

The final decision of the classifier is then given by choosingthe class, which maximizes the fused similarity measuresbetween the sample and the matching base.

VI. EVALUATION CRITERIA

The measure of any biometric recognition system for aparticular application can be described by two values [10].The False Acceptance Rate (FAR) is the ratio of the numberof instances of pairs of different palmprints found to match tothe total number of match attempts. The False Rejection Rate(FRR) is the ratio of the number of instances of pairs of thesame palmprint is found not to match to the total number ofmatch attempts. FAR and FRR trade off against one another.That is, a system can usually be adjusted to vary these tworesults for a particular application, however decreasing oneincrease the other and vice versa. The system threshold value

is obtained based on the Equal Error Rate (EER) criteria whereFAR = FRR. This is based on the rationale that both ratesmust be as low as possible for the biometric system to workeffectively. Another performance measurement is obtainedfrom FAR and FRR which is called Genuine Acceptance Rate(GAR). It represents the identification rate of the system. Inorder to visually depict the performance of a biometric system,Receiver Operating Curves (ROC) are drawn. The ROC curvedisplays how the FAR changes with respect to the GAR andvice-versa [11]. Biometric systems generate matching scoresthat represent how similar (or dissimilar) the input is comparedto the stored template.

Cumulative Match Curves (CMC) is another method ofshowing the measured accuracy performance of a biometricsystem operating in the closed-set identification task. Tem-plates are compared and ranked based on their similarity. TheCMC shows how often the individual’s template appears inthe ranks based on the match rate.

VII. EXPERIMENTAL RESULTS ANDDISCUSSION

In the identification mode, the biometric system attemptsto determine the identity of an individual. A biometric iscollected and compared to all the templates in a database.Identification is closed-set if the person is assumed to existin the database. In open-set identification, the person is notguaranteed to exist in the database. In our work, the proposedmethod was tested through the both mode test.

A. Experimental database

To evaluate the performance of the proposed Multimodalidentification scheme, a database containing finger-knuckleand finger-vein images was required. In this work, we con-struct a multibiometric database for our experiments basedon Hong Kong Polytechnic University (PolyU) finger-knuckle-print database [12], and SDUMLA-HMT finger-vein database[13]. The multibiometric database consists of 12 FVP imagesand 12 PVP images per person with total of 100 persons.Three randomly samples, of each FVP and PVP, is selected toconstruct a training set. The rest of the samples are taken asthe test set.

236 © IT4OD 2014

Page 243: IT4OD 2014 Proceedings

4

(a) (b) (c)

Fig. 2. Uni-modal system identification test results. (a)The ROC curves for the two traits of FKP, (b) The ROC curves for the two traits of FVP and (c) TheROC curves GAR for the best system.

TABLE 1 : UNI-MODALE IDENTIFICATION SYSTEM TEST PERFORMANCE

OPENSET CLOSED SETIF MF IF MF

T0 EER T0 EER ROR RPR ROR RPR

FKP 0.0693 3.5250 0.0858 4.7729 88.444 70 86.333 77

FVP 0.2185 3.5556 0.2009 3.8453 82.1804 90 80.1887 97

B. Uni-modal test result

The goal of this experiment was to evaluate the systemperformance when we using information from each modalities(FKP, FVP). For this, three images are randomly selectedof twelve images of each class (person) were used in theenrolment stage to create the system database; the remainingnine images were used for testing. In the following tests,we setup a database with size of 100 classes. Thus, theclient experiments were performed by comparing nine testimages with the corresponding class in the database. A total of900 comparisons were made. The impostor experiments wereperformed by comparing the nine images with each class inthe database. A total of 49 608 impostor experiments weremade.

In this experiment, the PCA are applied to evaluate theidentification Performance of the index finger (IF) and middlefinger (MF) of FKP and FVP. The Receiver Operating Charac-teristics (ROC) shown in Fig. 2.(a-b) depicts the performanceof the open set identification system, Our identification systemcan achieve a best results in the Index finger in terms of EqualError Rate (EER) where EER =3.5250 % at To = 0.0693 forIndex FKP(IF) and EER =3.5556 % at To = 0.2185 for IndexFVP(IF). For the evaluation of the system performance, inthe case of closed set identification, table 1 show too thatthe best results are in the Index finger in terms of Rank-OneRecognition (ROR) rate, where ROR= 88.444% with a RPRof 70 for FKP modality(IF) and ROR= 82.1804% with a RPRof 90 for FVP modality(IF). The ROC curve of GAR againstFAR in the both modality (FKP(IF) and FVP(IF)) is shownin Fig. 2.(c). The performances of the system identification inthe both mode of test (open set and closed set) are shown inTable 1.

C. Multi-Trait test result

1) Fusion at the feature level:In this experiment, wecombine features of two biometric traits (FKP (IF-MF) andFKP (IF-MF)) using the proposed method. The recognitionperformance is evaluated in open set and closet set. Theexperimental results are shown in Table 2 and Fig. 3. Fromthe results shown in Table 2 and Fig. 3.(a,c), it is evidentthat the best result when we combined FKP (IF-MF) with anEER=1.5556 % at To = 0.0835 in open set and ROR = 93.222% with a RPR = 42 in closet set.

TABLE 2 : MULTIMODAL (MULTI-TRAITS) IDENTIFICATION

SYSTEM TEST PERFORMANCE AT FEATURE LEVEL

OPENSET CLOSED SETIF-MF IF-MF

T0 EER ROR RPR

FKP 0.0835 1.5556 93.222 42

FVP 0.1978 2.018 90.111 49

2) Fusion at the matching score level: The informationpresented by two biometric traits (FKP(IF-IM) or FVP(IF-IM)) is fused at the matching score level to make the systemefficient. For that, a series of experiments were carried outto selection the best fusion rule. Thus, to determine the bestfusion rule, a graphical relationship (ROC) can be established(see Fig. 4.(a) and Table 3). We can observe that the WHTrule based fusion has the best performance, when we fusedFKP(IF-IM). Thus, the best result of EER is given as 0.6301% with To of 0.8911 in open set and ROR = 96.2264 % withRPR = 51 in closed set. The performance of the open/closedset identification system under different fusion rule is shownin Table 3. The ROC curve of GAR against FAR is shownin Fig. 4.(b), The (CMC) Curve of identification rate againstrank is shown in Fig. 4.(c).

237 © IT4OD 2014

Page 244: IT4OD 2014 Proceedings

5

(a) (b) (c)

Fig. 3. Multi-Traits test results of fusionat feature level. (a) The ROC curves of FKP and FVP, (b) The ROC curves of GAR of FKP and FVPand (c) The(CMC) Curve of identification rate.

(a) (b) (c)

Fig. 4. Multi-Traits test results . (a)The ROC curves for the case of fusion at matching score level, (b) The ROC curves of GAR at score level and (c) The(CMC) Curve of identification rate.

TABLE 3 : MULTIMODAL (MULTI-TRAITS)IDENTIFICATION SYSTEM TEST PERFORMANCE AT SCORE LEVEL

OPENSET CLOSED SETFKP (IF-MF) FVP (IF-MF) FKP (IF-MF) FVP (IF-MF)

T0 EER T0 EER ROR RPR ROR RPR

SUM 0.0622 0.6565 0.1916 1.8868 95.8071 46 90.8889 44

WHT 0.0600 0.6301 0.1901 1.8488 96.2264 51 91.1111 45

MAX 0.1004 1.5221 0.2298 2.3473 94.4444 55 89.0000 77

MIN 0.0395 1.1346 0.1385 2.6205 91.1950 55 82.7778 60

MUL 0.0042 0.8343 0.0413 2.2507 91.1950 48 82.7778 49

D. MULTI-BIOMETRIC test result

The goal of this experimentwas to investigate the systemsperformance when we fuse information from FKP and FVPmodalities. Therefore, information presented by different bio-metrics is fused to make the system efficient using two levelsof fusion, matching score level and feature level. To do this,two steps were done.

Fusion at the matching-score level is preferred in the fieldof biometrics because there is sufficient information contentand it is easy to access and combine the matching scores. Inthe first step we fused the matching scores by combining thetrait of FKP and FVP (IF-IF, MF-MF, ALL). From the Table4, we can observe that the SUM rule based fusion when wecombined all traits (IMF) has the best performance in the twomodes. Thus, the best result in the case of open test in term ofEER is given as 0.0269 % with To of 0.0773 and in the case

of closed set the Rank-One Recognition is given as 99.000 %with lowest rank (Rank of perfect rate) of 4.

In the second step two experiments were done. In the firstexperiment we fused all features of FKP(IMF) and FVP(IMF),then the both scores are combined at the matching score levelALL (Feature-Score). The second experiment we combinedall matching scores of FKP(IMF) and FVP(IMF), then the bothscores are combined again at the matching score levelALL(Score). Table 5 and Fig 5(a) present results carried out in thisexperiments. The best result in the two mode is obtained in thesecond experimentALL (score)when use the WHT rule offusion. Thus, in open set, the system can be work with an EER= 0.0100 % at To = 0.0298, in closed set the can be achievea Rank-One Recognition ROR = 99.778% with lowest rank(Rank of perfect rate) of 2. The ROC curve of GAR againstFAR for ALL (Feature-Score)andALL (Score) is shownin Fig 5(b), The (CMC) Curve of identification rate against

238 © IT4OD 2014

Page 245: IT4OD 2014 Proceedings

6

(a) (b) (c)

Fig. 5. Multi-Biometric test results . (a) TheROC curves of performance comparison, (b) The ROC curves of GAR for best system and (c) The (CMC) Curveof identification rate.

TABLE 4 : MULTI-BIOMETRIC IDENTIFICATION SYSTEM TEST PERFORMANCE

OPENSET CLOSEDSETIF-IF MF-MF ALL IF-IF MF-MF ALL

T0 EER T0 EER T0 EER ROR RPR ROR RPR ROR RPR

SUM 0.1467 0.45565 0.1431 0.5556 0.0773 0.0269 96.000 17 95.889 27 99.000 4

WHT 0.1468 0.4518 0.1496 0.6832 0.0889 0.0410 96.000 17 95.111 32 98.778 4

MAX 0.1805 1.3721 0.1664 1.3386 0.1891 0.7778 93.1118 73 93.556 64 93.999 67

MIN 0.0771 1.1111 0.0585 1.1664 0.0030 0.4975 88.444 19 86.77822 80.333 17

MUL 0.0771 0.4768 0.0151 0.6568 0.0030 1.3136 88.444 13 86.778 20 80.333 6

TABLE 5 : MULTI-BIOMETRIC IDENTIFICATION SYSTEM TEST PERFORMANCE

OPENSET CLOSED SETIMF-IMF (Feature) IMF-IMF (Score) IMF-IMF (Feature) IMF-IMF (Score)

T0 EER T0 EER ROR RPR ROR RPR

SUM 0.1177 0.1111 0.0923 0.0539 98.222 6 98.556 5

WHT 0.1235 0.0920 0.0298 0.0100 98.889 4 99.778 2

MAX 0.1369 0.3333 0.1215 0.2222 97.222 25 98.000 19

MIN 0.0383 0.3333 0.0218 0.1932 92.444 5 93.778 9

MUL 0.01062 0.2163 0.0030 0.1069 92.444 7 93.778 3

rank is shown in Fig 5(c).

VII I . CONCLUSION

In this paper, a multi-modal biometric identification systembased on fusion of two biometric traits, FKP and FVP, hasbeen proposed. Fusion of these two biometric traits is carriedout at the matching score level and feature level. The proposedsystem use PCA technique. Using several fusion rules, fusionis performed at the matching score level and feature level. Tocompare the proposed multi-modal system with the uni-modalsystems, a series of experiments has been performed in the twocases, open set identification and closed set identification, andit has been found that the proposed multi-modal system givesa considerable performance gain over the uni-modal systemsin the two cases.

REFERENCES

[1] Arun A. Ross, K. Nandakumar and A. K. Jain, ”Handbook of Multibio-metrics”, Springer Science+Business Media, LLC, New York, 2006.

[2] B.Ulery, A. Hicklin, C.Watson,W. Fellner,P. Hallinan, tudies of BiometricFusion-Executive Summary, NISTIR7346, National Institute of Standardsand Technology, September 2006.

[3] F. Yang, B. Ma, A new mixed-mode biometrics information fusionbased-on fingerprint, hand-geometry, and palm-print, in: InternationalConference on Image and Graphics 2007, 2007, pp. 689-693.

[4] C.Bergamini,etal., Combining different biometric traits with one-classclassification, Signal Processing 89 (11) (2009) 2117-2127.

[5] [35] L. Zhang, L. Zhang, D. Zhang, ”Finger-knuckle-print: a new bio-metric identifier”, in: Proceedings of the ICIP09, 2009.

[6] Yang, J.F., Li, X., 2010. Efficient finger vein localization and recognition.In: Proceedings of ICPR10, pp. 11481151.

[7] M.S. Bartlett, J.R.Movellan, and T.J. Sejnowski, Face recognition byindependent component analysis, IEEE Transactions on Neural Networks,13(6):1450-1464, 2002.

[8] Faundez-ZanUy, Marcos, 2005. Data fusion in biometrics. IEEEAerospace Electron. Mag. 20 (1), 34-38.

[9] A. Ross, A. Jain & J-Z. Qian. (2001). Information Fusion in Biometrics,In: Audio and video-Based Biometric Person Authentication, pp. 354-359,2001.

[10] Ajay Kumar and David Zhang, ”Improving Biometric AuthenticationPerformance From the User Quality”, IEEE transactions on instrumenta-tion and measurement, vol. 59, no. 3, march 2010.

[11] Qijun Zhao,David Zhang, LeiZhang and NanLuo, ”Adaptive fingerprintpore modeling and extraction”, Pattern Recognition 43 2833-2844, 2010

[12] PolyU Finger KnucklePrint Database available onhttp://www.comp.polyu.edu.hk/ biometrics/FKP.htm

[13] SDUMLA-HMT finger-vein database, available at:http://mla.sdu.edu.cn/sdumla-hmt.html.

239 © IT4OD 2014

Page 246: IT4OD 2014 Proceedings

Verification of modular systems

F. Ouazar Lounnaci M.Ioualalen M.C.Boukala MOVEP, USTHB, Algeria [email protected] [email protected] [email protected]

Abstract

The verification of systems by model-checking is often confronted with the problem of combinatorial explosion of the state space of the system. Performing modular verification is one approach that overcomes this problem. This approach allows representing and verifying large systems as modules. In this work, we focus on the verification of specific properties expressed in temporal logic CTL on a modular Petri net. We then proposed algorithms for CTL properties verification on systems modeled by a modular Petri nets

Keywords: CTL, modular Petri nets, model-checking

.

I. INTRODUCTION

Computer systems have become very important in the life of modern society. They are used to perform checks, critical tasks and functions [1] (nuclear power, aerospace through embedded control systems: aircraft, satellites ...). It is therefore, imperative to have tools and techniques for modeling and verifying these systems by keeping a high level of performance and correction for these systems. In this context, we can use the power of Petri nets (PNs) to perform the modeling and the verification of systems. Petri nets are used to verify and check the general properties of the system such as: boundedness, vivacity, the non-blocking (deadlock) ... they must be complemented by the analysis of specific properties of the modeled system. Several techniques have been developed to implement tools for formal description of specific properties of systems. The temporal logic initiated by EMERSON & AL [4] is a formal tool that provides a safe syntax, precise and unambiguous of qualitative and quantitative

properties.

After describing specific properties, a verification step determines whether the properties are true of the system. This step is to verify if it meets its specifications, that is to say, to ensure that it has the properties correspondent to the expected properties. Among the techniques of verification, model checking approaches, have been widely developed in recent years [5]. This implies that the behavior of the system is modeled and the specific property is set as a temporal logic formula, then we can use a model checker to check whether or not the model satisfies

the property.

However, the verification and the validation of systems, which are often based on the exploration of the state space of the system, suffer from the combinatorial explosion of the size of the state space that increases exponentially. Several approaches have been proposed to overcome this problem. Among these approaches, the reduction techniques, such as on the fly model-checking, on which the properties is checked at the same time of the exploration of the stat space, symbolic representation such as BDD, distribution technique, and techniques that avoid to represent all states of the system taking into account some properties of the model such as symmetry [6], and modular approach[7]

.

As part of the modular verification, we find the work of [3], in which the authors are interested in the verification of properties described in temporal logic LTL, there is also the work of [11] in which the authors are interested only on general properties such as reachability

, deadlock, etc.

In this paper, we focus on the verification of specific properties expressed in CTL logic, on systems modeled by modular Petri net as defined in [2] (with fusion transitions) to avoid the problem of combinatorial explosion in generating the state space of each module with a synchronization graph to deduct global states and behaviors. We use a technique based on the idea of whether the property is verified by each module as well as the synchronization graph to decide if it is satisfied by

the system.

In the rest of this paper, we recall the principal of modular Petri nets in Section 2, the CTL temporal logic in Section 3. Section 4 will focus on the presentation of the technique of verification by model-checking of CTL properties on modular systems and we end with a conclusion and some perspectives

.

II. MODULAR PETRI NETS

Modular Petri nets considered here consist only of modules synchronized through shared transitions [2]. Definition: A modular Petri net is a pair MN = (S, TF) satisfying:

240 © IT4OD 2014

Page 247: IT4OD 2014 Proceedings

• S is a finite set of modules such that :

• Each module s ∈ S is a Petri net s = (Ps, Ts, Ws, Ms0

).

• The sets of nodes corresponding to different modules are pair-wise disjoint: ∀s1, s2 ∈ S : [s1 ≠s2 ⇒ (Ps1 ∪ Ts1) ∩ (Ps2 ∪ Ts2) = ∅].

P=∪s∈S(Ps) and T =∪s∈S

.

(Ps), Ps and Ts are the sets of all places and all transitions of all modules

• TF ⊆ 2T

is a finite set of non-empty transition fusion sets.

In the following, TF also denotes ∪ tf∈TF

tf .

Definition: a transition group tg ⊆ T consists of either single non fused transition t ∈ T \ TF, or all members of a transition fusion set tf ∈ TF. The set of transition groups is denoted by TG. A transition group corresponds to a synchronized action. The arc weight function W is extended to transition groups: ∀p ∈ P, ∀tg ∈ TG, W(p, tg) =∑ t∈tg W(p,t) , W(tg, p) =∑ t∈tg

W(t,p)

Markings of modular Petri nets are defined as markings of Petri nets, over the set P of all places of all modules. The restriction of a marking M to a module s is denoted by Ms. The rules of fairness of transitions of a modular Petri net can then be

expressed:

Definition: fairness of a transition group : A transition group tg is enabled in a marking M, denoted by M[tg , iff : ∀p ∈ P : W(p, tg) ≤ M(p). When a transition group tg is enabled in a marking M1, it may occur, changing the marking M1 to another marking M2∀p ∈ P : M

, defined by : 2(p) = (M1

(p) −W(p, tg)) +W(tg, p)

The figure 1 illustrates a modular system consisting of three modules A, B and C. The modules A and B both contain the transitions labeled F1 and F3, while B and C contain the transition F2. These transitions are then considered as transitions fusion and form the set of transitions

fusion.

Modular states space The definition of a modular state space consists of two parts: the state spaces of the individual modules and the synchronization graph. Definition: let MN = (S, TF), be a modular Petri net with M0 as initial marking. The modular stat space of MN is a pair MSS = ((SSs)s∈S

, SG) where :

I. SSs (a)Vs=∪

= (Vs, As) is the local state space of module s :

v∈VSG (b) As = (M1, t, M2) ∈ Vs × (T \ TF)s × Vs | M1[t⟩M2

[s⟩s

II. SG = (VSG, ASG(a) V

) is the synchronization graph of MN : SG = [[M0⟩⟩c ∪M0

c

(b) ASG = (M1c , (M1 ′c , tf ),M2

c ) ∈ VSG × ([M0⟩c × TF) × VSG | M’1 ∈ [[M1⟩∧M’1[tf⟩M2

(1) The definition of the state space graphs of the modules is a generalization of the usual definition of state spaces. (1a) The set of nodes of the state space graph of a module contains all states locally reachable from any node of the synchronization graph. (1b) Likewise, the arcs of the state space graph of a module correspond to all enabled internal transitions of the module. (2) Each node of the synchronization graph is a representative for all the nodes reachable from M by occurrences of local transitions only, i.e. [[M⟩. The synchronization graph contains the information on the nodes reachable by occurrences of fused transitions. (2a) The nodes of the synchronization graph represent all markings reachable from another marking by a sequence of internal transitions followed by a fused transition. The initial node is also represented. (2b) The arcs of the synchronization graph represent all occurrences of fused transitions. The state space graphs of the modules only contain local information, i.e. the markings of the module and the arcs corresponding to local transitions but not the arcs corresponding to fused transitions. All the information concerning these is stored in the synchronization graph.

Example

The state space of the modular Petri net showed on figure1 is shown in figure2

241 © IT4OD 2014

Page 248: IT4OD 2014 Proceedings

Interest of modular Petri nets

The advantage of the modularity and modular Petri nets was shown in several works such as [12], in which the authors studied some known systems as distributed data base, philosophers …and compared the state space sizes with those of full state space. The tables below show the results with the number of nodes and arcs in each case highlighting modularity impact:

Table 1: occurrence graph

NOG

A

: nodes of Occurrence Graph

OG: arcs of Occurrence Graph

Table2: modular state space

III. The Temporal Logic CTL

Temporal logic is a modal logic introduced by Pnueli [10] to describe and specify qualitative and quantitative properties of systems using axiomatic expressions, A temporal logic is a language allowing checking specific properties of systems, such as mutual exclusion property. The syntax of this language is essentially based on a grammar specification providing safe, precise and unambiguous temporal properties. It is composed of propositional logic (formed with proposals, statements that may be true or false) to which are added the linear temporal operators which are essentially the potential F (possibly in the future), the invariance G (always in the future) precedence U (until), and the quantifiers A (for all paths) and E (for some path

).

Definition: the logic CTL is a branching-time temporal logic, introduced by Clarke and Emerson. It is designed to the specification of competitors’ finite state systems. It allows specifying the usual properties of systems such as safety (reliability) and vivacity

.

CTL Syntax [13]: CTL is formed from the rules S1, S2, S3 and P0. S1: each atomic proposition P is a state formulaS2: if f and g are state formulas then (f ∧g) et (¬f ) are state formulas.

.

S3: if f is a path formula then Ef and Af are state formulas. P0: if f and g are state formulas then Xf and fUg are path formulas. CTL logic focuses on the concept of state. Indeed, we can describe the syntax without defining path formulas using four operators

AXf :

:

for any successor of the considered state, f is checked. EXf : there is a successor state of the considered state for which f is checkedAfUg :

. for any sequence derived from the considered state, f is

true until g EfUg :

is so. there is a sequence derived from the considered state

such that f is true until g is so

.

The combination of these operators can express properties more or less complex

.

Example Pi is the proposal designating the event « process i requests the critical section » and qi the event « process i actually enters in the critical section ». The formula AG (pi⇒ AFqi) allows specifying the liveness property "means any process requesting the critical section necessarily gets it

).

CTL semantic :

The interpretation of CTL formulas is defined over Kripke structures: Definition: a Kripke structure is quadruple M = (S; T; λ; s0

• S a finite set of states,

) with:

• T ⊆ S×S associates each state s ∈ S with its

• λ : S ⇒ 2successors.

AP

• s

, associates to each state s ∈ S a set of valid atomic propositions in s. 0

∈ S the initial states.

Let p ∈ AP be an atomic proposition, M = (S, T, λ, s0) a Kripke structure, δ = (s0 ,s1 ,...) a sequence of execution of M, s0

s |= p iff p ∈ λ(s)

∈ S, ϕ and ψ CTL formulas. The satisfaction relation |= is defined as follows:

s |= ¬ϕ iff ¬(s |= ϕ) s |= ϕ∨ψ iff (s |= ϕ) ∨ (s |=ψ ) s |= EXϕ iff ∃δ such that δ(0) = s, δ(1) |= ϕ s |= AXϕ iff ∀δ such that δ(0) = s, δ(1) |= ϕ s |= E[ϕ∪ψ ] iff ∃δ such that δ(0) = s and ∃ j ≥ 0, δ(j) |=ψ ∧ (∀ 0 ≤ k < j, δ(k) |= ϕ) s |= A[ϕ∪ψ ] iff ∀δ such that δ(0) = s and ∀j ≥ 0, δ(j) |=ψ ∧(∀ 0 ≤ k < j, δ(k) |=ψ')

242 © IT4OD 2014

Page 249: IT4OD 2014 Proceedings

In this work, the interpretation and the verification of CTL properties are done on the state space of each module and the synchronization

graph.

IV. THE MODEL-CHECKING

The purpose of the verification is to ensure that the system meets a certain number of properties. For this, it is necessary to formally model the behavior of the system. We recall that the system is modeled by a modular Petri net, the synchronization graph and the state space of each module describe the evolution of this system. Once the system is described, and the desired properties are specified in temporal logic (CTL), the model-checking algorithm answers automatically to the question: "Is the system satisfies the desired properties?". To this end, we proposed the following algorithms in addition to the first version proposed in [14] for the different operators of the logic CTL (X

, U, F ...).

Let MN= (SS, TF) be a modular Petri net with n modules (Si

, i∈1..n), Anc = set of ancestors, sat(ϕ)= set of states that satisfy ϕ.

Model-checking of ϕ=p The purpose of the algorithm is to detect all states that satisfy ϕ, the principle is

:

• Check on the module to which p belongs, and label states satisfying p by

• ϕ.

Search the ancestors of these states•

. Mark (label) by ϕ, each state containing an ancestor in the synchronization graph

• .

Then label the projection of each labeled synchronization graph state on all modules that contains these states

• .

Finally, if the initial state of each module is labeled by the formula ϕ then we deduce that the formula or the property is true (checked) otherwise the formula is

false.

============================================ Check procedure of check(ϕ=p) ============================================ Begin Anc=∅, sat(ϕ)=∅ //check on the module Si

Foreach M∈S to that p belongs, if p is labeled i

If p∈λ(M) then sat(ϕ)sat(ϕ)∪M; Mark M do

par ϕ // research the ancestors of states M Else return false

Foreach s∈ sat(ϕ)

labeled by ϕ

Anc = Mark_ancestorSCC (s) // proceed with the labeling of states of the synchronization graph that contain states ∈ For all ss

Anc i∈S //(ssi

For all z∈Anc

state of the synchronization graphe)

if (z ∈ssi mark ss

) i

For all ss par ϕ

i mark Π(M

marked by ϕ Si

For all S

) by ϕ (mark the projection of the state of synch graph on all modules)

i

If (M

(i=1..n) //for all modules

0i

return true //property is true

is marked by ϕ) //if the initial state of each module is mared by ϕ

Else return false //property is false end ============================================ Model-checking of ϕ=¬ψ The principle of this algorithm is the following:

• Check on the modules to which ψ belongs, and mark the states that don’t satisfy ψ by ϕ.

• Search the ancestors of these states•

. Mark (label) by ϕ, each state containing an ancestor in the synchronization graph

• .

Then label the projection of each labeled synchronization graph state on all modules that contains these states

• .

Finally, if the initial state of each module is labeled by the formula ϕ then we deduce that the formula or the property is true (checked) otherwise the formula is

false.

============================================ Check procedure of check(ϕ=¬ψ) ============================================ Begin //for all modules,which ψ belongs

For all SiForeach M∈S

∈SS (i∈1..n) do i

If(M∉sat(ψ)) then sat(ϕ) sat(ϕ)∪M, Mark M , Anc=Mark_ancestorSCC(M) by ϕ

do

For all ssi∈S //(ssi For all z∈Anc

state of synchronization graph)

if (z ∈ssi mark ss

) i

For all ss by ϕ

i mark Π(M

marked by ϕ Si

For all S

) by ϕ (mark the projection of the state of synch graph on all modules)

i If (M

(i=1..n) //for all modules 0i

return true //property is true

is marked by ϕ) //if the initial stateof each module is marked by ϕ

Else return false //property is false

End ============================================

Model-checking of ϕ=ϕ1∨ϕ2 The principle of this algorithm is the following:

• Check on the modules to which ϕ1 or ϕ2 belong, and mark (label) the states that satisfy ϕ1 or ϕ2 par ϕ.

• Search the ancestors of these states•

. Mark (label) by ϕ, each state containing an ancestor in the synchronization graph

• .

Then label the projection of each labeled synchronization graph state on all modules that contains these states

• .

Finally, if the initial state of each module is labeled by the formula ϕ then we deduce that the formula or

243 © IT4OD 2014

Page 250: IT4OD 2014 Proceedings

the property is true (checked) otherwise the formula is

============================================ false.

Check procedure of check(ϕ=ϕ1∨ϕ2) ============================================ Begin

//for all modules, which ϕ1 or ϕ2 belongs For all SiForeach M∈S

∈SS (i∈1..n) do i

If(M∈sat(ϕ1∨ϕ2)) then sat(ϕ) sat(ϕ)∪M, Mark M , Anc=Mark_ancestorSCC(M) by ϕ

do

For all ssi∈SS //(ssi For all z∈Anc

state of synchronization graph)

if (z ∈ssi mark ss

) i

For all ss by ϕ

i mark Π(M

marked by ϕ Si

For all S

) by ϕ (mark the projection of the state of synch graph on all modules)

i If (M

(i=1..n) //for all modules 0i

return true //property is true

is marked by ϕ) // if the initial state of each module is marked by ϕ//

Else return false //property is false

End ============================================ Model-checking of ϕ=EXψ The principle of this algorithm is the following:

• Check on the modules to which ψ belongs, and mark the direct predecessors of all states that satisfy ψ by ϕ.

• Search the ancestors of these states•

. Mark (label) by ϕ, each state containing an ancestor in the synchronization graph

• .

Then label the projection of each labeled synchronization graph state on all modules that contains these states

• .

Finally, if the initial state of each module is labeled by the formula ϕ then we deduce that the formula or the property is true (checked) otherwise the formula is

false.

============================================ Check procedure of check(ϕ=EXψ) ============================================ Begin // for all modules,which ψ belongs

For all SiForeach M∈S

∈SS (i∈1..n) do i

If(M∈sat(ψ)) do

//mark each direct predecessor state of M // by ϕ Foreach transition t∈(T\TF)Si

For all ss

and M’[t>M then sat(ϕ)sat(ϕ)∪M,MarkM Anc=Mark_ancestorSCC(M) by ϕ

i∈SS //(ssi For all z∈Anc

state of synchronization graph)

if (z ∈ssi mark ss

) i

For all ss by ϕ

i mark Π(M

marked by ϕ Si

For all S

) by ϕ (mark the projection of the state of synch graph on all modules)

i

If (M

(i=1..n) // for all modules

0i

return true //property is true

is marked by ϕ) // if the initial state of each module is marked by ϕ

Else return false //property is false End ============================================ Model-checking of ϕ=Eϕ1Uϕ2 The principle of this algorithm is the following:

• Check the on modules which ϕ1 and ϕ2 belong, if there is a path in which ϕ1 is checked until ϕ2 become checked and label (mark) these states by ϕ (even if ϕ1 and ϕ2 do not belong to the same module, we perform the verification of ϕ1 and ϕ2 apart and we research the paths on which ϕ is checked and we proceed with labeling).

• Search the ancestors of these states•

. Mark (label) by ϕ, each state containing an ancestor in the synchronization graph

• .

Then label the projection of each labeled synchronization graph state on all modules that contains these states

• .

Finally, if the initial state of each module is labeled by the formula ϕ then we deduce that the formula or the property is true (checked) otherwise the formula is

============================================ false.

Check procedure of check(ϕ=Eϕ1Uϕ2 ) ============================================ Begin // for all modules, to which ϕ1 and ϕ2 belong

For all SiForeach M∈S

∈SS (i∈1..n) do i

If(M∈sat(ϕ)) do

// mark each direct predecessor state of M by ϕ Foreach transition t∈(T\TF)Si

and M’[t>M then sat(ϕ) sat(ϕ)∪M, Mark M , Anc=Mark_ancestorSCC(M) by ϕ

For all ssi∈SS //(ssi For all z∈Anc

state of synchronization graph)

if (z ∈ssi mark ss

) i

For all ss by ϕ

i mark Π(M

marked by ϕ Si

For all S

) by ϕ (mark the projection of the state of synch graph on all modules )

i If (M

(i=1..n) //for all modules 0i

return true //property is true

is marked by ϕ) // if the initial state of each module is marked by ϕ

Else return false //property is false End ============================================ Model-checking of ϕ=EFψ The principle of this algorithm is the following:

• Check on the modules to which ψ belongs, and mark the predecessors of all states that satisfy ψ by ϕ

• Search the ancestors of these states•

. Mark (label) by ϕ, each state containing an ancestor in the synchronization graph.

244 © IT4OD 2014

Page 251: IT4OD 2014 Proceedings

• Then label the projection of each labeled synchronization graph state on all modules that contains these states

• .

Finally, if the initial state of each module is labeled by the formula ϕ then we deduce that the formula or the property is true (checked) otherwise the formula is

============================================

false.

Check procedure of check(ϕ=EFψ ) ============================================ //for all modules,to which ψ belongs

For all Si∈SS (i∈1..n) do Foreach M∈Si do If(M∈sat(ψ)) //mark all predecessors states of M // by ϕ

Foreach transition t∈(T\TF)Si and M’[t>M then sat(ϕ)sat(ϕ)∪M,Mark M

Anc=Mark_ancestorSCC(M) by ϕ For all ssi∈SS //(ssi state of synchronization graph) For all z∈Anc if (z ∈ssi) mark ssi by ϕ For all ssi marked by ϕ mark Π(MSi) by ϕ (mark the projection of the state of synch graph on all modules) For all Si (i=1..n) // for all modules If (M0i

1. Check on the modules to which A1 belongs if A1 is marked (contains token) module A, A1 is marked.

is marked by ϕ) // if the initial state of each module is marked by ϕ return true //property is true

End ============================================ Example As example we can apply the first algorithm to check if ϕ=A1 (the place A1 is marked) is correct on the system presented in figure 2:

2. Search the ancestors of this state

3.

initial state and it hasn’t ancestors, so set of ancestors =the same state.

Check on the synchronization graph the states that contain

4. Mark the projection A1B1C1 on all module B1 labeled by ϕ and C1 labeled by ϕ.

A1 A1B1C1 marked by ϕ.

5. if the initial state of each module is labeled by the formula ϕ

CONCLUSION

yes, so property correct on this system.

The verification and the validation of systems by model-checking are often confronted with the problem of combinatorial explosion due to the size of the system which is exponential in the number of states of the system. In this work, we are interested in the verification of specific properties of systems specified in temporal logic CTL using modular PNs for modeling the system, so the system is represented as modules and each module is modeled by a Petri

net to avoid the problem of combinatorial explosion. We use a technique based on the idea of whether the property is verified by each module as well as the synchronization graph to decide if it is satisfied by the system or not. This technique allows verifying large systems. Our contribution in this work is the proposition of algorithms to check properties expressed in CTL logic on modular Petri nets, as perspective to this work, an implementation of these algorithms is being finalized to prove they are correct, they used to verify large systems and the problem of combinatorial explosion is reduced. REFERENCES [1]: A.Gu, K.G.Shin «Analysis of event-driven real time systems with time Petri nets, A translation approch», IFIP conference proceedings, vol,219.Proceedings of the IFIP 17th world computer congress-Tc10 stream on distributed and parallel Embedded systems :design and analysis of distributed embedded systems, pages 31-40, 2002. [2]: S. Christensen and L. Petrucci. Modular analysis of Petri nets. The Computer Journal, 43(3) :224–242, 2000. [3]: K.Klai, L. Petrucci: Modular construction of the symbolic observation graph ACSD2008: 88-97 [4]: E.A.Emerson,A.P.Sistla «Symetrie and Model-Checking »,In formal Methods and System Design 9,pp105- 031, 1996 [5]: P. Schnoebelen, B. Bérard, M.Bidoit, F.Laroussinie,A. Petit «Systems and software verification-model-checking techniques and tools», Springer, 2001. [6]: J.B. Jorgensen, L.M. Krinsten.«Computer aided verification of Lamportas fast mutual extension algorithme using Colored Petri Nets and occurence graphs with symetries». IEEE transaction on parallel and distributed systems ;1999. [7]: L. Petrucci, C.Lakos.«Distributed and modular state space exploration for timed Petri nets», LIPN, CNRS UMR 7030, Université Paris VIII, 2005. [8]:S. Haddad, F.Vernadat «vérification et mise en oeuvre des réseaux de Petri». Vérification des propriétés spécifiques Paris,Hermes science publication, 2003 [9] :M.C. Boukala, L. Petrucci. Distributed verification of modular systems. In In Proc. workshop on Petri Nets Compositions (CompoNet’11, associated with Petri Nets 2011), Volume 726 of CEUR workshop proceedings, pages 1–15, June 2011. [10]: A. Pnueli. The temporal logic of programs. In Proceedings of the 18th IEEE Symposiu on Foundations of Computer Science, pages 46–57, 1977. [11]: C.Lakos, L.Petrucci: Modular Analysis of Systems Composed of Semiautonomous Subsystems.

[14]: F.Ouazar, M.Ioualalen, M.C.Boukala, vérification des systèmes modulaires, Conférence sur les Architectures Logicielles, 10,11 juin 2014, paris, CAL2014.

ACSD2004:185-196. [12]: L.Petrucci: Experiments with Modular State Spaces. Petri Net Newsletter 68, April 2005. [13]: E.A.Emerson,A.P.Sistla «Symetrie and Model-Checking »,In formal Methods and System Design 9,pp105-031, 1996

245 © IT4OD 2014

Page 252: IT4OD 2014 Proceedings

Intelligent traffic light control using an adaptive approach

Karima BENHAMZA

Computer Science Department, Badji Mokhtar – Annaba University, Algeria

LabSTIC, University of 8 Mai 1945 of Guelma, Algeria [email protected]

Hamid SERIDI LabSTIC, University of 8 Mai 1945 of Guelma,

Algeria [email protected]

Abstract— Traffic congestion is a complex difficulty in the urban road network, caused by an exceeded usage of road ca-pacity. In this paper, an intelligent traffic signal system is pro-posed. It has two important tasks: move as many vehicles through the intersection as possible and doing this with no con-flict. The traffic light model changes state depending on traffic conditions. Further, it focuses on the control for priority servic-es such as ambulances and police cars, for which a latency of few minutes may cause human lives risks as well as financial losses. Traffic generated is the result of an interaction between traffic lights and vehicles using wireless detector network. The objective is to reduce the waiting time and stopped vehicles while maintaining fairness among the all traffic lights.

The feasibility of the proposed model is presented with a micro-scopic traffic approach. Using agent based modeling (ABM) platform with various scenarios of real traffic, the obtained results confirm the efficiency of the model.

Keywords—Congestion, intelligent traffic lights, self-organizing, adaptability, agent-based model.

I. INTODUCTION Traffic congestion is a co mplex difficulty in the urban road network, caused by an exceeded usage of road capacity. There is certainly not solution to the problem of traffic con-gestion, but there are several methods to improve traffic flow to moderate it. Traffic lights are one important component in traffic management, but they are factors of transportation safety. They also have a great impact on congestion and the environment. The more times a vehicle stops at intersection, the larger level of pollutants it emits [1-2].

In this paper, a proposed intelligent traffic signal system has two important tasks: move as many vehicles through the intersection as possible and doing this with no conflict. The first task relates to efficiency while the second relates to safety. T o improve traffic, these tasks are performed by clearly defining which group of users has the right of way at a given time and then by determining how long the group has the right of way. The proposed traffic light changes state depending on traffic conditions. Traffic generated is the result of an interaction between traffic lights and vehicles using wireless detector network. The use of models is very suitable in making evalu-ations in a cost-effective manner. Precise and realistic simu-lations could help to find perturbations and solutions which could improve circulation in the real world. In this context, agent based modeling (ABM) is considered. ABM is a method presented as a co llection of interacting autonomous entities. Each agent evaluates its local situation and takes decisions on the basis of a set of used rules. This paper is structured as follows: section 2 examines traffic modeling systems. Section 3 pr esents the proposed model. Simulation tests and results are exposed in section 4. Finally, conclusion and future works are presented in section 5.

II. TRAFFIC MODELING SYSTEMS Traffic modeling systems are designed to accurately model the flow of vehicle traffic in a graph-based network. Model-ing traffic flow was considered with different manner and many mathematical methods were used to characterize the

246 © IT4OD 2014

Page 253: IT4OD 2014 Proceedings

process. The macroscopic model was developed as an fluids hydrodynamic theory introduced by J. Lighthill in 1950s. This theory represents the flow of traffic with mathematical equations. It can produce realistic results, but ignore the in-dividual driver behaviors [3]. The further approach is to treat vehicles as individual units instead of a continuous flow, and see what behavior emerges when the vehicles are given simple rules to follow. This is a type of microscopic model, which can vary in complexity depending on the aims of the simulation [4]. There are different types of microscopic models: Vehicle-Following (VF) models, Cellular Automata (CA) models and the Multi-agents (MAS) models. VF and CA models do not incorporate realistic driver and vehicular behavior and cannot be used for conducting detailed traffic flow studies at a high fidelity level [5]. MAS models have received increasing attention in traffic management. They offer a best interpretation of classical traffic flow models as well as the development of more effec-tive frameworks to model driver behavior [6-9]. Defining the parameters of traffic model is the first step of building a microscopic modelization. This includes determin-ing the entities to represent e.g. R oads, vehicles, drivers, traffic lights.

A. Modeling Vehicles and drivers: In a microscopic simulation, vehicles and drivers are modeled as one entity. Many parameters can define its features and behavior: type, speed, priority, position, size. This provides to control the flow [10-11].

B. Modeling Environment: The traffic network is composed of link segments (junc-tions, intersections). Each segment can have different length, one or more lanes, and may operate in one or both directions.

C. Modeling Traffic Lights: Traffic lights, also known as traffic signals are signaling devices positioned at road intersections to control com-peting flows of traffic. Traffic lights alternate the right of way allowed to road users by displaying lights of a stan-dard color (red, yellow and green). In traditional systems,

the traffic signals typically operate in one of two different control modes, namely, Fixed or pre-timed control, in which all the control parameters are fixed and pre-set off-line. These predicted timings models are vulnerable to the un-expected changes in traffic flows because they have no ability to adapt to the randomness of traffic conditions.

To improve traffic fluidity, many applications in traffic have been developed using agent-based modeling, most part use toolkits/libraries [12]. The well-known agent-based simula-tors are: SCANeR II by Champion et al. [13], Tang and Wan [14], Rigolli and Brady [15]. Many researches are focused on agent based modeling [12,17].

III. PROPOSED MODEL In this paper, an intelligent traffic light agent is proposed. This adaptive traffic light adjusts its states depending on road flow and the arrival of priority cars. It evaluates the degree of saturation of vehicles on all roads. Then, road with more traffic will take advantage of adaptive traffic light, because it will be more time in green state to allow more traffic flow in this road. A wide range of sensors can be used as detectors in traffic networks including inductive loops, cameras, magnetome-ters, infrared, and radar. Sensors may be located on various parts of an edge. In this work, they are situated in three loca-tions as seen in (Fig. 1). Proposed model performs two levels: the first level detects and calculates traffic information in real time. The second level determines next green light assignment using detected data.

Sensor 3

Sensor 2

Sensor 1

Vehicles

247 © IT4OD 2014

Page 254: IT4OD 2014 Proceedings

Fig 1. Detectors locations

1) Traffic data detection:

Sensor 1 is responsible of counting the number of incoming vehicles in each lane, detecting their types, their sizes and their speeds. Sensor 2 is responsible of detecting vehicle coming out of the intersection (if the light is green) and triggers the time counter for vehicles requesting the green light (if the light is red). Sensor 3 is responsible of detecting stopped cars after inter-section and indicating blocked exit lanes. In the other hand, the yellow light between any two phases runs for a fixed duration (Ty). Furthermore, green light must remain green for a minimum time (Gmin) which prevents the fast switching of traffic lights caused by high vehicles densi-ties.

2) Assignment decision: The adaptive traffic light adjusts green time according the flow of each road. The traffic flow is defined by real number of vehicles currently on the road and the maximum number of vehicles allowed in this road (capacity). The Road capacity is function of the road width (number of lanes) and the length of each segment composing this road. Then, the network consists of graph with n-road Rj (j: 1 to n). Each road is composed of m segments Si (i: 1 to m) as showed in figure (Fig. 2) and consists of l-lanes: Lk (k: 1 to p).

S1 S2 S3 S

Fig 2. Road with various segments

m

The following equation defines the traffic flow Fj of a road Rj:

(1)

In this equation, is the real number of vehicles currently on the road composed by m segments and

defines the maximum number of vehicles allowed in a road. Given that each road segment is composed of l-lanes,the equation used is the following:

(2)

The adaptive system examines the flow on each road so that the state of traffic lights is regulated so that the road with more traffic enjoys for more time. The traffic light split of each road is adapted using the fol-lowing function:

(3)

Hence, the basic algorithm corresponding to proposed model is formulated as follows:

IV. SIMULATION TESTS AND RESULTS

A java framework simulator is used to observe the behavior of proposed adaptive traffic light versus the fixed time model. All experiments were carried out using hete-rogeneous traffic flow and with different densities.

Adaptive Traffic Signal Control (ATSC) Algorithm If (vehicle priority) then If (not_blocked_exit_road) then | switchtrafficLighti(j); End calculate adaptive traffic light split Sj End

248 © IT4OD 2014

Page 255: IT4OD 2014 Proceedings

The objective allows compare the average waiting time (fig. 3) and number of stop in each model (fig.4).

A. With low density of flow (10% pressure), the pro-posed model (red line) loses less time than fixed time model (blue line). Moreover, stopped cars percentage of proposed adaptive traffic lights keeps up to 80% of moving cars.

B. With more pressure (30% pressure), the adaptive model gets also stable results, while Fixed time model shows difficulties managing this flow. Besides, the traffic is kept moving easily through the network, while stopped cars achieves up to 85% of cars in fixed time model.

C. With High density (60% pressure), the simple fixed time model could not manage this flow, and stops to-tally while proposed adaptive model pursues execution un-til simulation end.

Fig 3. Average waiting time graph

Fig 4. Percentage of stopped cars graph

V. CONCLUSION In this paper, an agent-based model to control traffic lights is developed. The idea is that it may be useful to make use of

self-evaluating flow to obtain a self- organized traffic control system. The proposed model is characterized by autonomy b ecause there is no communication between traffic lights nevertheless they are able to achieve global coordination of network traf-fic lights. Thereby, the changing conditions in the environ-ment should lead to changes in traffic lights behaviors. The model adapts to different traffic densities: For low and medium densities, more vehicles are crossing intersections and there is no lot wasted time. For high densities, percen-tage of stopped vehicles is high, but gridlock is avoided. This suggested that the adaptive traffic lights may be a k ey ele-ment in flow optimization strategy with heterogeneous and dynamic scenarios.

REFERENCES

1. Salter, R.J. and Hounsell N.B., Highway Traffic Analysis and

Design. Third ed. Palgrave Macmillan, 1996. 2. Slinn, M., Traffic Engineering: Design, Principles and Practice.

Butterworth Heinemann. 1998. 3. Lebacque, J.-P. Buisson C. and Lesor. J.-B, Strada, a d iscre-

tized macroscopic model of vehicular traffic flow in complex networks based on the Godunov scheme. Computational Engi-neering in Systems Applications, July 1996, pages 976–981, 9-12.

4. Nagel, K., and Schreckenberg, M., A Cellular Automaton Model for Freeway Traffic. Journal de Physique I, 2, 1992, pp. 2221-2229.

5. Bham G H, Benekohal R F. A high fidelity traffic simulation model based on cellular automata and car-following con-cepts.Transport ResC-Emer, 2004, 12:1-32

6. Wahle J, Bazzan A L C, Klugl F, The impact of real-time in-formation in a two-route scenario using agent-based simula-tion. Transport Res C-Emer, 2002, 10: 399–417

7. Adler J L, Satapathy G, Manikonda V, A multiagent approach to cooperative traffic management and route guidance. Trans-port Res B-Meth, 2005, 39: 297–318.

8. Balmer M, Axhausen K W, Nagel K. Agent-based demand-modeling framework for large-scale micro simulations. Transp Res Rec,2006, 1985:125–134.

9. Bazzan A L C. A distributed approach for coordination of traf-fic signal agents. Auton Agent Multi-Ag, 2005, 10: 131–164.

10. Ehlerrt, P. and Rothkrantz, L., A Reactive Driving Agent for Microscopic Traffic Simulation, ESM ‘01: Proceedings of the 15th European Simulation Multi conference, SCS Publishing house, 2001 pp.943-949.

249 © IT4OD 2014

Page 256: IT4OD 2014 Proceedings

11. Paruchuri, P., Multi agent simulation of unorganized traffic, AAMAS '02: Proceedings of the first international joint confe-rence on Autonomous agents and multiagent systems, ACM Press, 2002 pp176-183.

12. Chen, B., & Cheng, H. H., A review of the applications of agent technology in traffic and transportation sys-tems. Intelligent Transportation Systems, IEEE Transactions on, 11(2), (2010), 485-497

13. Champion, A. Traffic generation with the SCANeR II simula-tor: towards a multiagent architecture. DSC ’99: Proceedings of the first Driving Simulation Conference, 1999, pp. 311-324.

14. Tang, W. and Wan, T.R, Multiagent Animation Techniques for Traffic Simulation in Urban Environment. WSCG (Short Pa-pers) , 2005, pp.161-164.

15. Rigolli, M. and Brady, M., Towards a behavioral traffic moni-toring system, AAMAS '05: Proceedings of the fourth interna-tional joint conference on Autonomous agents and multi agent systems, 2005, ACM Press, 2005, pp. 449-454.

250 © IT4OD 2014

Page 257: IT4OD 2014 Proceedings

Describing Ubiquitous Mobile Cloud Systems

Manel Gherari LAMIS Laboratory, University of

Tebessa, Algeria [email protected]

Abdelkrim Amirat LIM Laboratory, University of Souk-

Ahras,France [email protected]

Mourad Oussalah LINA Laboratory, University of

Nantes, France [email protected]

Abstract— Cloud Computing has been intertwined with mobile technology in order to overcome the latter’s issues (e.g. battery life, bandwidth, reliability). It should be noted that mobile Cloud applications differ from traditional Cloud applications, therefore their architecture also differs. Unfortunately, due the fact that mobile Cloud computing is a recent paradigm, it lacks tools and frameworks to model its architecture. Existing ADLs do not support modeling Mobile Cloud Architecture (MCA), since the latter encompass more complicated and rich architectural features than traditional applications. In this paper we propose the Mobile Cloud ADL (MC-ADL): as a Framework that allows describing mobile Cloud applications also providing means to ensure the reusability, the evolution, and auto-adaptation of MCA elements via Smart Cloud Gate middleware.

Index Terms— Mobile Cloud Computing, Mobile Cloud Architecture, Mobile Cloud Architecture Evolution, Mobile Cloud Middleware, Context awareness.

I. INTRODUCTION Mobile devices have become an increasingly important part

in human life; they are no l onger a l uxury but a must. Nowadays, mobile applications are becoming more and more ubiquitous and provide even richer services on mobile devices. As predicted by W alsh [1] Smart Phones will replace PCs as the most used means of access to the Worl d Wide Web, and that explain how by the end of 2014, mobile Cloud application will delivers annual revenues of 20 billion dollars [2]. Yet limitations of mobile devices (low bandwidth, small storage capacity, battery’s short life, reliability, etc…) are a h indrance which must be out done. Mobile technologies and Cloud’s marriage is the optimal solution to the limitations mentioned earlier. This new technology aims to bring the benefits of the Cloud to mobile devices, to improve their performance (e.g. extends battery life, improve data storage, increase processing powers, etc …).

Mobile Cloud Computing (MCC) takes mobile devices to a whole new level where the latter rely on the Cloud to store and process data. Therefore, we can consider that mobile Cloud applications represent the next generation of mobile applications. One i mportant feature of this new kind of applications is functional collaboration, like mobile social network applications based o n data mining. And t hen, MCC will serve not only as a link th at interconnects inform ation from both Cloud and mobile domains, but also as a knowledge resource to help mobile users in their daily activities [3].

It is noteworthy that despite the benefits associated with the adoption of t he Cloud by mobile technology the gate to the Cloud remains frozen, this means that the application often use the same services wi thout having an update of the novelty in Cloud, Thus applications lake awareness of new services that are more advantageous in terms of features and qualities than the currently used ones. Other hindrances figure in term of mobility, Cloud context awareness, real time requirements and so on.

Mobility has taken global computing infrastructure from static, homogenous, powerful desktop computer to a highly dynamic, heterogeneous, resource-constraint handled and wearable computer level [4]. Furthermore the Cloud has taken mobile computing to another higher level, where computational and storage is outsourced into the Cloud, this new paradigm demands a radically new software architectural paradigm that addresses cha llenges related to Cloud Mobile Application implementation, access schemes to hybrid Cloud by mobile application, networks heterogeneity and mobile Cloud application (MC-APPs) development.

In order to exploit the full potential of Cloud computing to enhance the mobile devices performances, the developer must have a com plete awareness of both m obile’s and C loud’s context. For this mobile Cloud applications need an architectural representation like any other application.

To the best of our knowledge only one intent to capture and modeling Cloud elements have been t aken by Cavalcante by proposing Cloud-ADL [5]. Cloud-ADL is a customized architecture description language (ADL) that takes advantage of ACME [6] elements to model the architecture of a Cloud applications. Cloud-ADL provides constructors that enable to specify programmed (i.e foreseen at the architectural level) dynamic reconfiguration actions to be t aken at the runtime level. Another abstraction of M CC has been pr oposed by Chatziprimou and al. [7] while trying to manage the re-configuration of Cloud service provisioning. They present a meta-model that describes the characteristics of C loud Landscape. The proposed meta-model aligns the notion of an enterprise Cloud with its expected revenue. And it comprises information regarding both physical and vi rtual Cloud resources as well as the mapping of the running se rvices between them. Finally, it models the Cloud points of variability i.e., the aspects of t he Cloud architecture that can be reconfigured at run-time.

251 © IT4OD 2014

Page 258: IT4OD 2014 Proceedings

Till this time and based on our bibliographic research, a framework for modeling a mobile Cloud applications has not been proposed yet [8] [9]. From this point, we present in this paper a framework for modeling mobile Cloud application. Mobile Cloud ADL (M C-ADL) that addresses t he aforementioned issues. MC-ADL do not only allow Mobile Cloud Architecture description with EMF and GMF tools [10], but also implements a dynamic evolution mechanism as Atlas Transformation Language (ATL) rules [11]. To maintain the awareness on both Cloud and mobile context; Smart Cloud Gate Middleware is responsible of the dynamic re-configuration of the MC-APPs at runtime level, and at the same time provoking the evolution rules at architectural level in order to keep the consistency between the two levels (Architectural and runtime levels).

The rest of this paper i s organized as fol low: In sect ion 2 we will d iscuss the motivations behinds our proposed framework. The proposed approach will be presented in section 3. An example will b e explained in section 4. Finally related work in section 5 and a conclusion will be given in section 6.

II. MOTIVATIONS Despite the increasing usage of t he Cloud by mobile

applications, exploiting its fu ll potential is n ot done in systematic and wel l structured manner. Furthermore both mobile and C loud contexts are managed separately, therefore the benefits of t he Cloud upon mobile technology remains limited. Also in this new paradi gm (i.e. Mobile Cloud Computing) most if no t all re searchers’ and business actors’ intention is focused on the underlying infrastructure of MCC, and more important on how to improve the performance of mobile Cloud applications and o vercame issues related to battery use, st orage capacity and band width. As a res ult, considering that Cloud services provisioning is continuously operating activity, services that has recently been deployed in the Cloud infrastructure remain unused or u nknown at architectural level. Since this mechanism is u sually implemented via middleware and it is active at runtime. In this context Self-Adaptability in m obile Cloud application that means the application changes dynamically the services often used to fulfill their requirements at runtime level , do not keep the traceability link between th e re-configuration of the application and latter’s architecture if does exist.

An abstract view of m obile Cloud application facilitate the reasoning on the application before its implementation, furthermore foster its reusability, auto-adaptability and extends the mobile Cloud application’s lifespan usability, since the change that could occur while deploying the application have been already foreseen in the architectural design phase and applied at runtime level dynamically. Unfortunately traditional ADLs do not have means to represent mobile Cloud elements, since the la tter are more complicated and have rich architectural features than a traditional applications.

In order to exploit the full potential of Cloud computing to enhance the mobile devices performances, the developer must have a complete awareness of both context mobile and Cloud. For this mobile Cloud applications need an archi tectural

representation like any other application. Once the MC-APPs’ architectural design is reasonably complete it is supposed to be realized faithfully in the implementation phase.

III. PROPOSED APPROACH Addressing challenges aforementioned in section 2 t he

question that must be asked i s how to take a full advantage of the Cloud in a smart manner? Our suggested answer is a smart environment composed of three levels; Architectural level, the intermediate level that is represented by Smart Cloud Gate (SCG) Middleware, and finally the last level consist of application level (i.e. runtime level).

An overview of t he proposed environment is shown i n figure 1, where we can notice the SCG is respo nsible for provoking evolution rules that will be applied at the MC-Apps’ architecture at the sa me time, any evolution that occurs at architectural level will h ave an effect of trig ging the re-configuration of the M C-Apps at Runtime level and vi ce versa. A further explanation of each level will be presented in the following subsections.

In this paper we will d iscuss the general view of the environment with a particular focus on the description and the evolution of MC-Apps’ architecture (i.e. architectural level).

Fig. 1. Smart Mobile Cloud Environnement.

Architecture as defi ned by and Garlan [12] is a lev el of design that foster the description of elements that com pose the system, including the interaction among them and the pattern that guide their composition and construction.

Traditional Architectural Description Languages (ADL) represent computational component as abst ract component related by connector that model their interactions and finally a configuration that describe the way that com ponents react and related with each other. If we try to represent mobile Cloud architecture with traditional ADLs; a sim ple component, connector and configuration won’t do the perfect job, because still information related to provisioned Cloud services (e.g. SAL and Quality of Service) and mobile counterpart that need to be represented during the design process. To justify the need of a new ADL adapted for Mobile Cloud applications and strengthen by motivations mentioned in section 2 we pr opose MC-ADL dedicated only to Mobile Cloud Applications. More conception details of t he proposed ADL will be di scussed in the following subsections.

252 © IT4OD 2014

Page 259: IT4OD 2014 Proceedings

A. Smart Mobile Cloud Architecture

The architecture proposed for Mobile Cloud Computing paradigm includes the basic concepts of the Cloud and those of mobile [8]. All of these concepts and the general configuration of their interactions are presented in figure 2.

Mobile devices are co nnected to the mobile networks via base stations (e.g., base transceiver station (BTS), access point, or satellite) that institute and control the connections between the networks and mobile devices. Central processors that are connected to servers providing mobile network services, receive mobile user’s request and inform ation. Based on the home agent (HA) and data stored in databases, mobile network operators can provide authentication, authorization, and accounting services to mobile users. Finally, the user requests are delivered to a Cloud through the Internet. In the Cloud side, Cloud controllers process the requests and provide mobile users the requested Cloud services.

A detailed overview of the proposed environment is given as a Meta-Model described in UML class diagram as illustrated in figure 2 that encompasses all the elements of mobile and the Cloud in order to handle both contexts simultaneously.

Smart Mobile Cloud Architecture (SMCA); is reference architecture which aims to make the Cloud usable in a systematic and wel l structured manner by all types of mobile devices.

The Cloud Side is composed of di fferent Cloud types (private, community, public, hybrid Cloud),

Service: provisioned services could be applications or software as services (SaaS ), platforms as services (PaaS) and Infrastructures as services (Ia aS). QoS, service contract, and pricing model are represented as annotations.

Service Provider: an ent erprise or a n individual provisioning service on demand following as you-use-price metric. Service platform is composed of several services,

Service Consumer: is the mobile Cloud application Mobile-App-Client),

Smart Cloud Gate : is the gate to the Cloud represented as a middleware that customizes services to customers according to their preferences,

Service family: is a data warehouse that stores all necessary information regarding

Cloud services. This inform ation will serve later as profiling parameters. The utility of this type of database is to facilitate the choice of services to Smart Cloud Gate according to profiling attributes.

Mobile Context: the mobile device’s context is a subject for a non-stop changing in terms of location and time, this change serves as a p arameter to the evolution rules at the architectural level and re-configuration criteria at the runtime level.

Fig 2. Smart Mobile Cloud Architecture Model.

Cloud service Platform

Service Family

Cloud service Provider

SaaS

Smart Cloud Gate

Cloud service

IaaS PaaS

Provides

+*+1

Choose the appropriate family

+1 +1

<propreties description><contract><quality prameters/><Princing model/><contract/><propreties description/>

Mobile-App-Client

Cloud+*

Community Cloud Public CloudPrivate Cloud Hyprid CLoud

Mobile Device

+OSType+Brand

+Get OSType()

Mobile Network Operator

AAAAgentData Base ServerCentral Processor

Provides Services Send Response

Demands Services Send Request

Mobile's Context

+Time: Date+Location: Real

+Get Time(): string+Getl Location(): Date

Depends

253 © IT4OD 2014

Page 260: IT4OD 2014 Proceedings

Due to the space constraint in this paper, we do not return to th e detailed definitions of these concepts. However, further explanation of Cloud’s computing concepts are widely discussed in [13].

B. MCC architecture’s evolution and MC-Apps re-configuration mechanism

It is noteworthy that pure mobile Cloud services are based on Data Synchronization yet services at other Cloud layer (SaaS, PaaS, and IaaS) which may increase mobile functional capabilities. We believe that the first

step to exploit the Cloud in well mannered way is to have a complete knowledge about Cloud and mobile in order to provide to consumers only the services that respond to their ever changing needs. To fulfill this vision we propose Smart Cloud Gate Middleware (SCG). The general schema of SCG f unctioning is presented in figure 3. In t his schema we d efine three parts: the Cloud part, the mobile part and the SCG middleware between the first two parts.

Fig 3. Smart Cloud Gate.

Smart Cloud Gate

Smart Cloud Gate

254 © IT4OD 2014

Page 261: IT4OD 2014 Proceedings

Smart Cloud Gate is a dynamic gateway to the Cloud that

provides a personal perspective to mobile users based on Cloud service ranking. Service ranking is done as follow:

First a cluster is responsible for profiling Cloud Crowd-Sourcing and mobile Crowd-Sourcing to extract information that will be considered later as ranking parameters. Information that should figure in each Cloud profile are: QoS, Popularity of the service among users, pricing metric and execution platform’s information. The list is a su bject of extension in the future. Concerning Mobile profile it should include, history about service usage, time and location.

After the information concerning the profiles stored in Profile Data warehouse, a selection algorithm that has been implemented will b e executed by DB-server to cho ose the appropriate set of ser vice that compose the Cloud View to

adequate user at the specific time and l ocation and of course that satisfy their requirements.

Cloud View is the final mobile Cloud architecture that has passed several evolutions accord ing to Cloud service ranking, and the last evolution is done to meet the context’s changes. The path of the evolution is illustrated in figure 4.

After analyzing Cloud and mobile profiling results, and taking in consideration the consumers requirements, a set of services that compose the view is collected, and each set result a new version (i.e. architectureV 1.n) of the first architecture (i.e. ArchitectureV0) that has been described by MC-ADL (cf. section 5) . The evol ution (endogenous model transformation) is in terms of Add, Modify, Replace and Delete ATL rules. The evolution is passing from architecture model0 to architecture model N.

Fig 4. Mobile Cloud Architecture’s Evolution Path.

The second phase of the evolu tion is applied according to

context changes. At this phase we ca n understand the importance of the context awareness of mobile Cloud systems. As the context of the user change, this prompts invocation of different Cloud services based on the current context (time + location). Having this kind of context awareness, the invocation of Cloud services will be bound to user, since the request of service by the consumer will be accompanied by the user location and time, so the most adequate service will be selected according to that info rmation. With Mobile co ntext change the set of service change and the architecture evolves.

The last step consists of choosi ng the optimal evolution path, since each set of services generate a unique evolution path, and only one is needed to be followed.

In the following section, we explain the evolution’s mechanism with real exam ple using EMF architecture models and ATL evolution rules.

IV. RUNNING AN EXAMPLE Relying on Smart Mobile Cloud Reference Architecture we

have developed a fram ework for modeling mobile Cloud architecture. A m eta-model for the proposed framework is presented in figure 5.a.

After finalizing the EMF model, we n eed to generate a graphical editor in order to be able to edit the architecture. A conception of example architecture is given in figure 5.b. It should be noted that if no single Cloud service can satisfy the functionality required by the user , there should be a possibility to combine several existing services together in order to fulfill the request. Thus M C-ADL fosters service composition (e.g. facebook app use different services located at different level like PaaS and SaaS and provisioned by different providers).

Cloud services composition is a highly complex task, since the composition process can’t be handled manually by humans. Generally the complexity of this mechanism is due the fact that the number of Cloud services available across t he web are dramatically increasing, and i t impossible to search manually Cloud services repository to choose from it, there does not exist a unique language that define and evaluate web service in identical means since the latter are developed by different Cloud vendors using different APIs a nd platforms, and m ost important challenge is that Cloud service are creat ed and updated on the fly, so the composition system must detect the updating and the decision for using such services should be made based on up to date information. Since the evolution of MC-Apps architecture and their re-configuration at runtime

255 © IT4OD 2014

Page 262: IT4OD 2014 Proceedings

level is based on Cloud ranking done by SCG (cf. section 3.2), the same Cloud service information provided by SCG will serve as cri teria to Cloud service composition in future work

presenting Smart mobile Cloud Middleware that implements Cloud service composition for mobile applications.

Fig. 5. Mobile Cloud Architecture’s meta-model and its instance representing an architecture model.

Studying both contexts (profiling the Cloud and the mobile)

Cloud services have been ranked based on t he user requirement, QoS, Cloud profile and m obile profile, and several Cloud services’ sets have been cat egorized. Next by executing a se lection algorithm the appropriate set is ch osen,

services composing the set will b e either added to the architecture or serve as a lternative for existing services. The evolution mechanism is i mplemented via ATL ru les and it is illustrated in figure 6.

Fig. 6. Mobile Cloud application’s Architecture Evolution.

Instan

tiate

A

B

256 © IT4OD 2014

Page 263: IT4OD 2014 Proceedings

After analyzing and studying mobile’s and Cloud’s profiles, a ne w platform (i.e. Google Platform 2) has been added to Google Public Cloud, offering a n ew Cloud service that is more advantageous to Facebook application more than services provided in Google platform 1 ( i .e. SaaS2). In very particular circumstances (Time+Location) the application uses well specified services in the architectureV2.1 we notice that the set of servi ces used by S kyDrive App has changer as well as the context changes.

V. RELATED WORK In this section we wil l present, the work related of the

subject of thi s paper that regards three areas: (i) MCC architecture, (ii) Profiling techniques (iii) Context awareness.

To the best of our knowledge capturing and describing conceptual elements of Mobile Cloud Computing (MCC) has not been pr oposed in the literature yet. Only one i ntent has been taken by Cavalcante in hi s PhD work[5] to describe Cloud applications, Cloud-ADL is a cust omized architecture description language (ADL) that takes advantage of ACME [6] elements to model the architecture of a Cloud application. Cloud-ADL provides constructors that enable to specify programmed (i.e. foreseen at th e architectural level) dyna mic reconfiguration actions to be t aken at the runtime level. Ardagna and al. in [14] argue that Model-Driven Development can be helpful in this context as i t would allow developers to design software systems in a C loud-agnostic way and t o be supported by model transformation techniques into the process of instantiating the system into specific, possibly, multiple Clouds. Schilit and al. [15] define context -aware-system as distributed systems that can examine and react to an individual ever changing context and fo ster the interaction between peoples. These systems can benefit from the amount of information covering a person approximate environment. Three important aspect of context are described by Schilit and al as: where? (i.e location), who? (i.e. other users in vicinity) and what? (i.e. the resources avai lable at the user’s envi ronment). People’s action can be foreseen according to their situations, they have a ce rtain routine at certain places that never cha nge, like things they regularly do at home, work, library, and stores. Querying this kind of co ntextual information produces different results according to th e current context. Projecting this idea into mobile Cloud world La and Kim in [16] suggest that mobile devices connected to a remot e Cloud service through the internet can play th e role of a context awareness services provider, exploiting the mobile devices’ sensing abilities such as location, acceleration, etc. their context aware service provisioning framework identifies three types of gaps resulting from context changes; Gap on Functionality, Gap on Interface, and Gap on Non Functionality. Based on the gaps, it derives four causes by considering different levels of servi ce realizations. Then, it derives hierarchy of the service adapters including Service Substitut or, Service Interface Adapter, Service Component Substitutor, and Service Rerouter. By using context sensitive service adapters, service consumers can

be provided with always the needed se rvices seamlessly regardless their ever changing contexts.

To have knowledge about Cloud clients to provide only the services that responds to their changing needs. Relying on this idea; Garg and al. [ 17] propose Service Measure ment Index Cloud (SMICloud); a Fra mework for classifying Cloud services according to the fo llowing criteria: Accountability, Agility, Assurance of Service, Cost, Performance, Security and Privacy, and Usability. SMICloud is a Fra mework that helps Cloud clients to find the most appropriate Cloud provider.

Using profiling techniques, researches t arget the issue of mobile applications’ communication with the Cloud, their adaptation, and optimizing battery’s use.[18], [19, 20]. For taking advantage of profiling techniques to profile the Cloud so as to ensure efficient exploitation of the latter b y mobile applications, l Chun and al propose CloneCloud [21] that uses a static analysis and dy namic profiling the mobile device to decompose applications automatically while optimizing execution time and e nergy use for a target com putation and communication environment.

VI. CONCLUSION The Cloud paradigm and mobile technologies marriage

results an improvem ent of mobile devices’ perform ances. Unfortunately, most researches focus on one context at a time (Cloud or Mobile), which generates a low exploitation of the Cloud’s benefits and an il l utilizations of int ensive resources available that it provides.

Starting from this point we have proposed in this proceeding research a fra mework based the refere nce architecture, Smart Mobile Cloud Architecture that offers a generic solution which enable managing both Cloud and mobile contexts simultaneously, also exploiting the Cloud in a smart manner (i.e. always have kn owledge about the mobile device and the Cloud) using Smart Cloud Gate middleware that personalized the Cloud in order to provide for each user the adequate perspective on the Cloud, and taking their continually evolving requirements as a reference.

The mobile Cloud application by applying MC-ADL is done as fol low: first describing MCC architecture using the proposed ADL MC-ADL. Then instantiating the architecture will result, executable mobile Cloud application. While monitoring and analyzing both the Cloud and t he mobile devices, the Smart Cloud gate middleware (SCG) apply a selection algorithm in order to rank t he Cloud services that enter into the composition of th e set th at will b e used later during the evolution mechanism through ATL transformation rules, that transform the architecture in the state0 into several statesN according to services’ set that have been used. Finally the optimal evolution path is chosen and applied.

A Mobile Cloud application are no longer satisfied with one service, yet using several different services that are provided by different provider, provisioned in different platforms and wi th different API, makes the developer face

257 © IT4OD 2014

Page 264: IT4OD 2014 Proceedings

new obstacles and challenges in order to adapt its applications so it can use those services. Addressing these challenges we aim to implement Smart Mobile Cloud Middleware that takes advantage of the profiling and ranking results provided by SCG and choose the set of service that enter the composition of an abstract adaptable service that will be used by the application later.

REFERENCES [1] Walsh, M., Gar tner: Mobile to outpace desktop web b y 2013.

Online Media Daily, 2010. [2] Beccue, M. and D. She y, Mobile Cloud C omputing. ABI

Research, 2009. [3] Huang, D., Mobile cloud computing. IEEE COMS OC

Multimedia Communications Technical Committee (MMTC) E-Letter, 2011. 6(10): p. 27-31.

[4] Medvidovic, N. and G. Edwards, Software architectur e and mobility: A roadmap. Journal of Systems and Software, 2010. 83(6): p. 885-898.

[5] Cavalcante, E., Architecture-Driven Engineering of Cloud-Based Applications. 2013.

[6] Garlan, D., R. Monroe, and D. W ile. Acme: an architecture description interchange language. in CASCON First Decade High Impact Papers. 2010. IBM Corp.

[7] Chatziprimou, K., K. Lano, an d S. Zschaler. Towards a m eta-model of the cloud computin g resource landscape. in 1st International Conference Model-Driven Engineering and Software Development, Barcelona, Spain, Feb. 2013.

[8] Dinh, H.T., et al., A survey of mobile cloud computing: architecture, applications, and approaches. Wireless communications and mobile computing, 2011.

[9] Fernando, N., S.W. Loke, an d W. Rahay u, Mobile cloud computing: A s urvey. Future Generation Computer Systems, 2013. 29(1): p. 84-106.

[10] Eclipse Organization. The Graphical Modeling Framework, 2006. http: //www.eclipse.org/gmf/.

[11] Group, A., Atlas transformatio n language. URL http://www. eclipse. org/m2m/atl, 2007.

[12] Garlan, D. Software architecture: a roadmap. in Proceedings of the Conference on the Future of Software Engineering . 2000. ACM.

[13] Mell, P. and T. Grance, The NIST definition of cloud computing (draft). NIST special publication, 2011. 800(145): p. 7.

[14] Ardagna, D., et al. Modaclouds: A model-driven approach for the design and execution of applic ations on multiple clouds. in Modeling in Software Engineering (MISE), 2012 ICSE Workshop on. 2012. IEEE.

[15] Schilit, B., N. Adams, and R. Want. Context-aware computing applications. in Mobile Computing S ystems and Applications, 1994. WMCSA 1994. First Workshop on. 1994. IEEE.

[16] La, H.J. and S. D. Kim. A conceptual framework for provisioning context-aware mobile cloud serv ices. in C loud Computing (CLOUD), 2010 IEEE 3r d International Conference on. 2010. IEEE.

[17] Garg, S.K., S. Versteeg, and R. Buyya, A framework for ranking of cloud computing services. Future Gener ation Computer Systems, 2013. 29(4): p. 1012-1023.

[18] Qian, F., et al. Profiling resource usage for mobile applications: a cross-layer approach. in Pro ceedings of th e 9th international conference on Mobile systems, applications, and services. 2011. ACM.

[19] Flinn, J. and M. Satyanarayanan. Powerscope: A tool for profiling the energy usage of mobile applications. in Mobile Computing Systems and App lications, 1999. Proceed ings. WMCSA'99. Second IEEE Workshop on. 1999. IEEE.

[20] Narayanan, D., J. Flinn, and M. Satyanarayanan. Using history to improve mobile application adaptation. in Mobile Computing Systems and Applic ations, 2000 Third IEEE W orkshop on. 2000. IEEE.

[21] Chun, B.-G., et al. Cloneclou d: elastic execution between mobile device and cloud. in Proceedings of the sixth conference on Computer systems. 2011. ACM.

258 © IT4OD 2014

Page 265: IT4OD 2014 Proceedings

Smart Grid in Algeria: Ambition Towards a Great Expectation

Dr. Benahmed Khelifa Smahi Abla Hireche Samia Dept. of Science, University of Bechar Dept. of Science, University of Bechar Dept. of Science, University of Bechar

Bechar, Algeria Bechar, Algeria Bechar, Algeria [email protected] [email protected] [email protected]

Abstract— the current electrical power grid is considered insecure, unreliable and insufficient. The so-called smart grid is supposed to be the next grid generation that may solve these problems through taking advantage of the new ICTs (Information and Communication Technologies) and instilling it inside the grid environment in a way that provides more monitoring and controlling capacities. Consequently, many countries in all over the world competitively get in the countdown race to adopt this new technology. Through this paper, we will introduce some of the smart grid’s advanced technologies and we will shed the light on some study cases of the pioneer countries involved in this futuregrid like: the USA, Europe, China, India and some neighboring countries (Morocco and Tunisia). But the most important part of this paper will discuss a preliminary vision of future Algeria after integrating the smart grid depending on its available resources like hydrocarbon and renewable energy resources, ICTs evolution and the funds specified for such a project in one hand. On the other hand, we will tackle the main further research suggestions.

Index Terms—Smart Grid, Communication, Information, Energy Storage, Network, Renewable Energy Sources, Smart Meters, Control, SCADA, Smart Home, Security, Algeria .

I. INTRODUCTION When you wake up in the morning, you turn on the light,

switch on t he TV or t he radio to get the world news and prepare a cup of coffee using a coffee maker. Over the past several years, th is was no t the sa me scenario. Since then, the electrical grids didn’t suffer from these problem s appearing with the rising demand for electricity of this 21st century. The current power grid is considered limited and unreliable in terms of communications, manage, remote and m onitoring which makes it characterized by:

Unsecure communications: in the a bsence of alternative plans, the harsh environmental conditions (storms, fires, wind , animals or even humans …), device failures or cyber-attacks could ca use easily an outage. These outages become worse when it affects hospitals, transport grids, factories…

Being Inflexible: that relies on a single power source (oil and natural gas).

Unidirectional flows of communication i.e. there’s no flux of information in parallel with the electricity.

Marginalization of the consumers.

Being harmful to environment: the generation of electricity emits the di oxide carbon (CO2) that aggravates the global warming problem.

Accordingly, the so called s mart grid was represented as a modernization of the current power grid benefiting and integrating the novel digital communications, sensing and control technologies to make it more reliable and secure.

This paper is o rganized as fo llows: the second section contains some generalities about the smart grids. The section three takes care of following projects development in some countries (USA, Europe, India, China, Morocco and Tunisia). In the fourth section we will make our vision about an Algerian smart grid. The paper is concluded in the last and fifth section.

II. GENERALITIES ABOUT SMART GRIDS Traditionally the term grid refers the entire electric network

including the electricity generation, transmission and distribution.

The smart grid (SG) also called smart electrical/power grid, intelligent grid, intelligrid, futuregrid, intergrid, or intragrid, is an enhancement of the 20th century power grid [1].

Therefore, a s mart grid employs innovative products and services together with intelligent monitoring, control, communication, and self-healing [2].

Both of electricity and inform ation circulate in two-ways between all the grid’s actors and c omponents in real time by using new digital technologies. For wel l understanding this idea, let’s imagine that an ac cident occurs and a po wer line is damaged, so t he blackout affects hundreds of houses a nd businesses that are powered from this same line. Traditionally, solving the problem is manual and takes long time to heal. But using a sm art grid, sensors and c ontrol software detect the damage and s end information to the control center which preoccupies of ad justing the problem in less ti me i.e. a self-healing.

The table below resumes the differences between the smart grid and the existing grid:

259 © IT4OD 2014

Page 266: IT4OD 2014 Proceedings

TABLE I. COMPARISON BETWEEN SMART AND CURRENT GRID [3].

Existing grid Smart grid

Electromechanical Digital One-way communication Two-way communication Centralized generation Distributed generation Hierarchical Network of networks Few sensors Sensors throughout Blind Self-monitoring Manual repairing Self-healing Failures and blackouts Adaptive and islanding Limited control Pervasive control Manual check/test Remote check/test Few customer choices Many customer choices

The figure bellows shows the smart grid’s framework:

Fig. 1. Smart grid framework [4].

A. Components of a smart grid

According to the classifica tion of Xi Fang et al. [1] the smart grid infrastructure can be composed of 3 different and smart systems: management, infrastructure and protection system. Tony Flick et al. [5] have listed the following subsystems:

1) Advanced components a) Renewable energy sources

Wind, solar, geothermal and hydropower are renewabl e energy resources that reduce the dependency on fossil-fueled energies meanwhile relying on other sustainable, environmental and low cost energies.

b) Energy storage technologies Due to its rapid response to the increasing demand of

electricity the energy storage technology is more enhanced in smart grids with many options.

The G2V (Grid to Vehicle) literary is the operation of feeding the electric vehicle ( EV) or the plug-in hybrid electric vehicle (PEHV) batteries with the needed electricity. Charging these vehicles could be from a parking facility or from home. Conversely, the stored energy by these vehicles can be explored by the consumers’ homes or buildings in case where there is an additional amount of electricity in their batteries and actually, this is the so-called V2H (Vehicle to Home).

These technologies are c onsidered green because EVs or PHEVs reduce the emission of the harmful gases enhancing the use of renewable energy sources.

2) Sensing technologies

WSN (Wireless Sensor Networks) is considered as a cost-effective and a wide range used technology.

The existing WSNs applications on sm art grid vary on a wide range. Some of the applications are: au tomatic meter reading, equipment diagnostics, automation of di stribution, detection of outage, remote monitoring, fraud detection, etc [6]. But the utilization of t hese sensing technologies can pres ent certain challenges. Vehbi.C et al. [7] have mentioned that the unstable nature of t he WSNs due t o the harsh environment’s conditions (noise, vibration or climate changes f or example) and the QoS (Quality of Service) needs make the integration of this promising technology harder.

3) Measurement technologies (smart metering)

A smart metering is th e act of facilitating real-time measurement, processing and feedback of consumer data throughout a network. The advantages of smart metering embrace multiple participants, including the end user, the metering companies, energy suppliers, grid com panies, governments and the environment [8].

Smart meters can measure various data including the value of voltage, current, phase angle, frequency, amount of consumed energy and the price of that ene rgy, and securely delivers that data. According to [8] this technology consists of three main components shown in the figure:

Fig. 2. Smart metering components.

According to [8 ] and [9], consumers will be more responsible and they will behave more reasonably towards their energy consumption if they are well informed about the peak periods and prices schemes.

4) Integrated two-way communication

The communication allows exchange of energy and data in the whole grid in different topologies: Home Area Networ k (HAN), Business/Building Area N etwork (BAN), Neighborhood Area Network (NAN), using wired or wi reless technologies and different protocols and standards.

Basically and according to Zubair et al. [10], the HAN i s the smallest network that em braces all the communications technologies in the customers’ homes. The BAN is composed of many apartments (equal to HANs in terms of electric power consumption), the NAN, in turn, consists of BANs.

260 © IT4OD 2014

Page 267: IT4OD 2014 Proceedings

Fig. 3. Detailed communication infrastructure in smart grid [11]

The figure a bove embrace the entire communication infrastructure which can be divided in two categories: wired and wireless. The wired communications are represented by a PLC (Power Line Communication) that utilizes existing power cables for information exchange. This allows utility companies to use a si ngle infrastructure for both power and data transmission. For this reason, PLC systems have been proposed as a cost-effective and strai ghtforward solution to grid communication needs [11]

Concerning the wireless communications many technologies can be used, e.g. Wi-Fi (Wireless Fidelity), WiMAX (Worldwide Interoperability for Microwave Access),WMN (Wireless Mesh Network), ZigBee and cellular technologies (GSM/GPRS :Global System for Mobile).

5) Advanced control methods (SCADA system)

SCADA the a cronym for Super visory Control and Data Acquisition is a computer system for gathering and analyzing real time data [18]. This data is processed by the computer and is presented on a regular basi s. SCADA also saves and make logs for every event into a log file that is saved on a hard drive or is sent to a printer. SC ADA gives war nings by sounding alarms if situations develop into hazardous scenarios [12].

B. Security in smart grids

In the smart grid context, security has several dimensions that should be covered by the intelligent protection system.

Errors, failures and even cyber-attacks are the m ost focal points. In this respect, two main systems can be threatened: the communication and t he monitoring and measurement infrastructures. The het erogeneous nature of the communication networks in smart grid necessitates putting standardizations and routing protocols in face with different threats and attacks.

III. SMART GRID PROJECTS IN THE WORLD

A. USA

2003 was one of the most historical years in the USA and Canada. Blackout in Ontario and much of the U.S. Mid-West

and North East has hi ghly raised awareness of the electric ity system, as 50 million citizens simultaneously experienced firsthand how vital electricity is in our day-to-day lives. The blackout has added a sense of urgency to the discussion already underway on the need for measures to ensure reliability in the electricity industry [13].

Many questions were asked, and much ink was poured. It was enough to make changes seriously taken, so according to [13] $50 to $100 billion was needed to be investigated.

At the federal level, $4.5 billion has bee n invested in a hundred projects [14]. At the end of 2009, the number of Smart Grid projects in the United States exceeded 130 projects [15].

B. Europe

Many European countries were separated because of their benefits, but after th e 2nd world war the policy of unity was reinforced in all the domains. During the 1950s the European electrical grid beca me also unified i.e. the whole union countries were powered from the same grid. This can explain why these countries strategies concentrate on the standardization of communications and materials in the grid’s architecture reducing costs of installations in both hardware and software technologies. Actually Europeans are witnessing quick responds to the smart grid requirements.

C. China

China is considered as one of the world’s countries that suffer from the population explosion problem

In Chinese viewpoint the adoption of smart grid has two goals to be achi eved [16]: (1) Increasing renewable energy power generation enough to meet 15 percent of energy demand by 2020. (2) Reducing the carbon intensity of Chinas economy by 40 to 45 percent by 2020 from a 2005 baseline.

D. India

India is known of its massive population of aver a b illion where approximately 300 million of them don’t have access to electricity, but this Asian country has renewable energy resources (biomass-wood-, solar and wind) and nuclear technology and hydroelectric power that make the integration of a smart grid possible and supported project from the Indian government and t he tentative exists. In 201 0 the Indian government has drew t he pilots’ projects of t he smart grid across the country.

E. Morocco and Tunisia

Renewable energy resources and sm art metering are foca l points in the Mediterranean countries in general.

Mahmoudi.M et al. [17] Have i nvestigated the question ‘smart grids in M orocco dream or reali ty?’ to discuss the investments of the smart grids technologies in Morocco, specifically smart meters and SCADA/DMS systems in distributed energy networks.

The first Pilot Project for the introduction of smart metering by ONEE was installed in 2012 at the provincial direction of distribution of Agadir in the south area and on 2004 by

261 © IT4OD 2014

Page 268: IT4OD 2014 Proceedings

LYDEC for industrial, commercial sector and public services. However, the first residential application of Smart Metering in Morocco on the Web in real time has been successfully achieved by the co mpany Gemtech Morocco in April 2009 [17]. Tunisia is not a different case, wind and solar sources still representing a focal point for the Tunisians.

IV. THE SMART GRID IN ALGERIA The Algerian vast territory extends over: 2 381 741 km².

80% of its total surface is a desert zone which is situated in the south. It should be noticed that the African desert is the hottest in all over the world. So Algeria owns great natural sources of power, but the latter is not enou gh exploited because of the excessive dependence on petrol and gas.

Unfortunately, current projections estimate that the country’s oil reserves will only cover the next 50 years while those of nat ural gas wi ll only be avai lable over t he next 70 years. Algeria thus faces a mounting challenge between its dependence on fossil fuels and its capacity for exploiting vas t renewable sources. Some ambitious plans to develop renewable energy over the period of 2011-2030 have been put in place by aspiring to generate 40% of local elec tricity by 2030 from solar and wind, with an estimated capacity of 22,000 Megawatts (MW) dedicating 12,000 MW to domestic use and 10,000MW to exports at a cost of $60 US billion[18].

Despite liberation of the energy production market, till the moment national electric power company SONELGAZ still the monopolist of this sector in Algeria. The electricity demand is growing in parallel with the growing produced electricity’s amount as shown in the figure:

Fig. 4. Electricity production (2000-2012) in Algeria[19]

Most of t he generated electricity consumption is focused in domestic.

Fig. 5. Electricity consumption in Algeria [20].

A. Renewable energy resources in Algeria

1) Solar energy

This kind of energy may be explored either as solar thermal energy or solar photovoltaic energy.

Fortunately, Algeria has a bi g potential of solar energy. More than 2 000 000 km² receives a yearly suns hine exposure equivalent to 2500 KWh/m². Phot ovoltaic solar energy projects in Algeria: With a pot ential of 13.9 T Wh/year, the government plans launching several solar photovoltaic projects with a total capacity of 800 MW by 2020. Other projects with an annual capacity of 200 MW are to be achieved over the 2021 to 2030 period [21].

2) Wind energy Recent studies show that wind energy is the second most important renewable resource in Algeria. The same studies showed that the strongest winds are located in the south west regions of the country, particularly near Adrar, which is why Algeria expects to have i ts first wind farm in in this region operational between 2014 and 2 015 and generating around 10MW [18].

Fig. 6. Wind chart in Algeria. (Source: Ministry of Energy and

Mines (MEM))

3) Geothermal energy The inventory of the thermal springs has been updated to

show more than 240 sites. The temperatures of Al gerian hot waters vary from 22 to 98 °C. The highest spring temperatures recorded are: 68 °C for the western area (Hammam Bouhnifia),

80 °C for the central area (H ammam El Biban) and 98 °C for the eastern area (Ham mam Meskhoutine) in northern Algeria

In the southern area, there ar e some thermal springs with a mean temperature of 50 8C [22].

Fig. 7. Geothermal chart of Algeria. [23]

264 © IT4OD 2014

Page 269: IT4OD 2014 Proceedings

B. ICTs sector

ICTs in Algeria are witne ssing a g reat development and extension where many sectors are bene fiting of their great advantages, e.g. medical and educational sectors.

Actually, the Algerian government is tending towards adhering the 3 and 4G, in this co ntext AT (Algerie Telecom) one of the telecommunications providers in Algeria is planning to i ntroduce fixed-wireless LTE (Long Term Evolution) by May 2014, while mobile 4G follows in late 2015 [23].

In the same context but from a hardware side Algeria has proved the possession of the submarine optical fiber technology. The Oran-Valencia line that was been i nstalled in 2012 is an illustrative example.

C. Algerian incomes

On average during 1989–2003, budgetary hydrocarbon revenues in Algeria accounted for almost two t hirds of total budget revenues. In line with rising hydrocarbon export prices, their importance has increased significantly in relation to nonhydrocarbon revenues over the past few years. In 2003, total hydrocarbon exports am ounted to $24 billion (98 percent of total export s of $24.5 billi on) and budgetar y hydrocarbon revenues to $17.5 billion. The av erage annual growth rate of budgetary hydrocarbon revenues (in US$) during 1989–2003 exceeded 7 percent [24].

D. Our vision about a smart grid’s project in Algeria

ICTs’ sector in Algeria is growing and developing day by day. And according to what we have seen above this country is considered one of the richest countries in terms of renewable energy sources, and hydrocarbon revenues. However, the question that should be asked now is: “why the smart grid pilot project hasn’t been adopted yet in Algeria?”

The answers of this question are sim ples and complexes simultaneously. Basically, the air exists and there is no obstacle that prevents having these intelligent grids across the whole country.

The figure 9 represents a simple vision about how can be an Algerian southern city look a like after benefiting of these new technologies. The vision is about Adrar, one of the hottest and biggest cities in Algeria.

As a result, to have a pilot project in Algeria it is necessary to: (1) fixing the goals, (2) open the energy production market for more investments, (3) benefi ting the smart grid’s technology from abroad (4) forming the Algerian people and agents about this technology, (5) the government support.

Endorsing this project may provide many advantages: More reliable, secure a nd sufficient electric ity,

avoiding the blackout problems frequently appearing during peak periods –summer- especially in the south where highest temperature exceed 50 °C.

The establishment of a di stributed network controlled by many of t he associated technologies while maintaining the hardware.

Consumer’s i.e. future con sum’actors security and comfort.

Reducing the CO2 emissions i.e. more ecological.

Scientifically, this project may be an important subject for different research domains. It is an intersection of artificial intelligent, communications, networking, IT, security, electricity and even marketing. These domains are gathered in the figure 10.

This project may create n ew jobs’ opportunities and investments.

Fig. 8. Simple vision about smart grid in Adrar-Algeria.

265 © IT4OD 2014

Page 270: IT4OD 2014 Proceedings

Fig. 9. Research issues the smart grids.

V. CONCLUSION Actually, the smart grid is a fashionable topic to talk about.

It consists of a modernization of the whole current electric power grid by instilling and e xploring the new popular technologies to provide more secure and r eliable electricity. Many countries in the world are t rying to get this promising technology. In this paper, we have introduced some of t hem. On the other side, a p roposal of a simple vision of future Algeria after approving the pilot project of this intelligrid was presented. It should be m entioned that this has been just an initiative work. Our main goal is to motivate more researches in this domain in Algeria towards great expectations.

REFERENCES [1] Xi Fang, Satyajayant Misra, Guoliang Xue an d Dejun Yang, “Smart

Grid – T he New and Im proved Power Grid: A Sur vey”, IEEE communications surveys & tutorials, vol. 14, pp 944-980, 2012.

[2] EU Commission Task Force for Smart Grids, Expert group1: Functionalities of smart grids and smart meters, pp 6, December 2010.

[3] Smart Grid innovations versus existing power grid, http://www.hindawi.com/journals /jcnc/2012/534512/tab1/.

[4] Smart Grid: A B eginner's Guide, URL: http://www.nist.gov/smartgrid/beginnersguide.cfm.

[5] Tony Flick, Justin M orehouse and Christophe Veltsos(TE), “Securing the Smart: Grid Next Generation Powe r Grid Secur ity”, Elsevier Inc ,USA , 2011, pp10.

[6] S_amil Temel, Vehbi Cag˘rı Gungor and T as_kın Kocak, “Routing protocol design g uidelines for smart grid environments”, Elsevier’s computer network journal, pp 1-11, 2013.

[7] Vehbi C. Gungor, Bin Lu and Gerh ard P. Hancke, “ Opportunities and Challenges of Wireless Sensor Networks in Sm art Grid”, IEEE transactions on industrial electronics, vol.57, n°10, pp 3557-3564 , 2010.

[8] Sophia Kaplantzis, Y. Ahmet Sekercio˘glu, “Security and Sm art Metering”, European Wireless 2012, Poznan, Poland, pp 2, April 2012.

[9] Mohanad Ghazi Khamees Ali, Oday Abdul Lateef Abdul Ridha, “A Comprehensive Study of Sm art Grids”, International Journal of Computer Applications (0975 – 8887), Vol. 93, No 1 4, pp15-21, May 2014.

[10] Zubair Md. Fadlullah, Mostafa M. Fouda, Xuem in (Sherman) Shen, Yousuke Nozaki, and Nei Kato, “An Early Warning System Against Malicious Activities for S mart Grid Communications”, IEEE network magazine, vol. 25, no. 5, pp 50-52, 2011.

[11] Emilio Ancillotti, Raffaele Bruno and Marco Conti, “The role of communication systems in smart grids: Architectures, technical solutions and research challenges”, Elsevier’s computer communication journal, vol.36, pp 1665–1697, 2013.

[12] Cory Janssen, “Supervisory Control and Data Acquisitio n (SCADA)”, URL: http://www.techopedia.com.

[13] Grace Q. Tang, “Smart Grid M anagement & Visualization Smart Power Management System”, IEEE, 2011.

[14] Ahmad Faruqui, “the global Tao of the smart grid, The 3rd Guangdong”, Hong Kong, Macau Po wer Industry Summit, The Peninsula Hong Kong, november 2013.

[15] EU Commission Task Force for Smart Grids, Expert Group 1: Functionalities of smart grids and smart meters, November 2010.

[16] “China: rise of the sm art grid”, Special Report by Zpryme’s Smart Grid Insights, available in: www. zpryme.com, January 2011, p2.

[17] Mahmoudi Morad, El Barkany Abdellah and El Khalfi Ahmed, “smart grids in Morocco:Dream or reality?”, presented at the 5th IESM Conference, Rabat-Morocco, October 2013.

[18] Abdessalem Boufarrouk, “Renewable en ergy development in Algeria”, http://inspiremagazine.anasr.org/, published on: 16/8/2013.

[19] URL: http://www.indexmundi.com/. [20] Salma Bakr, d esign, simulation, and emulation o f a resid ential

load management algorithm utilizing a p roposed smart grid environment for the MENA region, march 2012.

[21] Boukelia Taqiy Eddine, Mecibah Med Salah, “Solid waste as renewable source of energ y: current and fu ture possibility in Algeria”, International Journal of Energy and Environmental Engineering, pp2, 3, 2013.

[22] Hakim Saibi, “ Geothermal resources in Alge ria”, Elsevier’s Renewable and Sustainable Energy Reviews journal, vol.13 , pp2544, 2545, 2009.

[23] “Algeria to launch fixed LTE in May 2014; mobile 4G in 2015”, march 2014, URL : http://www.telegeography.com/.

[24] Algeria: Selected Issues, IM F Country Report No. 05/52, 2/2005, URL: www.imf.org.

264 © IT4OD 2014

Page 271: IT4OD 2014 Proceedings

UNE NOUVELLE APPROCHE DE DEVELOPPMENT DES IPS POUR LES

SOCS A BASE DU SYSTEMC Ahcene Youcef Benabdallah, Rachid Boudour

[email protected] r, [email protected] Laboratoire des Systèmes Embarqués(LASE)

http://lase.univ-annaba.dz/ Université Badji Mokhtar – Annaba-

23000, Algérie

ABSTRACT

Poussés par les contraintes de " time to market " et la complexité galopante des systèmes embarqués principalement des systèmes sur puce ou SoC, les concepteurs de compétences différentes, sont amenés à réutiliser de plus en plus de composants virtuels ou Intellectual Properties (IPs). Dans ce sillage, nous présentons une définition d’un cadre pour la spécification et la réutilisation d’IPs. Pour ce faire, nous avons adopté une démarche complète permettant le développement des IP et la création d’une bibliothèque, accessible en vue de la sélection, le paramétrage et l’intégration des composants dans des applications. Des exemples ont été expérimentés pour valider nos propos.

1. INTRODUCTION

L’évolution rapide de notre société conduit inéluctablement à l'élaboration d'équipements de plus en plus complexes, capables de traiter des flots d'informations de nature et d'origine très diverses et dont l'accès doit néanmoins rester simple et rapide. La conception et l'intégration de ce t ype d’équipements (systèmes) demande aujourd'hui encore des développements longs, fastidieux, coûteux et par conséquent en inadéquation avec les évolutions rapides et la flexibilité que doivent suivre les matériels électroniques. L'industrie se trouve confrontée à un problème sérieux : le manque de concepteurs de systèmes expérimentés.

Ainsi, de nouvelles techniques de conception doivent-elles ê tre trouvées. Les contraintes à prendre en compte sont typiquement les suivantes : • Réduire au maximum le temps d'arrivée d'un produit

sur le marché (time to market) • Garantir un résultat de bonne qualité (performance,

surface, consommation) • Fiabiliser le cycle de développement (augmenter la

complexité d'un circuit rend sa vérification plus difficile) [2].

Face à ces contraintes, les concepteurs essaient de favoriser la réutilisation de code, en s’orientant vers l’assemblage de blocs préconçus et pré-vérifiés désignés sous le terme de composants virtuels ou IP (pour intellectual property). Ce concept, né dans le milieu des années 90, a donné lieu à plusieurs vocables pour désigner ces blocs réutilisables : composants réutilisables, composants virtuels, IPs (Intellectual Properties), ou plus simplement macros.

Afin de privilégier la réutilisation de composants, d’architectures, ou de favoriser l’interconnexion entre des systèmes modélisés avec des notations différentes, il apparaît évident qu’une notation consensuelle est nécessaire. De ce co nstat est née la notation UML (Unified Modeling Language).

Le travail que nous présentons dans ce p apier a permis de définir une approche complète de conception et de réutilisation afin de construire et utiliser des composants virtuels (IPs) dans le SoC (System on Chip) basé sur un méta modèle des IPs en UML.

L’article est divisé e n sections : dans la suite, nous

rappelons en section 2 la définition des IPs, la section 3 et 4 est consacrée pour UML dans les systèmes électroniques et la génération automatique du SystemC. La section 5 définit notre approche de développement et d’intégration. Quant à la section 5et 6, elle exhibe une implémentation et d’évaluation sur un exemple réel avec une discussion sur notre approche. La section 7 achève ce papier par une conclusion.

2. COMPOSANT VIRTUEL

Un composant virtuel est la spécification d’un composant réalisant une fonction bien déterminée pouvant être synthétisé, donc réutilisé, par un utilisateur n’ayant pas participé à la spécification de ce composant. Cette démarche comprend que seule une appréhension de la fonction réalisée est nécessaire, en aucune manière les détails de la spécification [1]. Cependant cette absence de connaissance détaillée ne doit pas empêcher l’obtention par l’utilisateur de performances identiques après synthèse, à celles obtenues par le créateur de l’IP.

265 © IT4OD 2014

Page 272: IT4OD 2014 Proceedings

VSIA(Virtual Socket Interface Alliance) [9] définit trois classes de composants virtuels matériels en fonction du niveau d'abstraction de leur description synthétisable : Hard, Firm et Soft. Le premier type est représenté en layout, dont le deuxième est sous forme de Netlist et le troisième est représenté en RTL ou en C++ [3]

3. UML POUR LES SYSTEME ELECTRONIQUE

UML est un langage de modélisation visuelle utilisé pour documenter, spécifier et visualiser graphiquement les aspects d’un système logiciel [15]. UML2.0 a apporté plusieurs améliorations significatives pour soutenir les concepts liés au codesign que ce d ernier ne différencie pas entre la conception logicielle et matérielle, de cela UML à élargir son champs de modélisation du logiciel vers le matériel par le biais des extensions d’UML et la création de profile dédié au domaine tout en utilisant les notions suivantes: - Stéréotype : Chaîne de caractères qui associée à un élément UML existant permet de désigner un nouveau type d’élément UML à partir des concepts standard. - Contraintes: C haîne de caractères qui associée à u n élément UML permet l’extension de la sémantique d’un concept UML en ajoutant de nouvelles règles ou en modifiant les anciennes.

Plusieurs profils ont été proposés pour permettre la prise en compte des caractéristiques de base des Systèmes électroniques et embarqués dans un modèle UML[5], aussi bien sur le plan modélisation et analyse que sur le plan validation et génération du code exécutable parmi ces profils citant : P rofile UML de TEST (UML Testing Profile) [20], Profile UML pour la modélisation de la qualité de Service QoS [21] : (Modeling Quality of service and Fault Tolerance Characteristics and Mechanisms )Profile UML pour l’ordonnancement, Performance et Temps SPT (Schedulability Performance and Time) [22] Profile UML pour les systèmes d’ingénierie SysML[23]; Profile UML pour leSoC[24] le profile MARTE( Modeling and Analysis of Real-Time Embedded Systems) [25] et le profile UML-SystemC[26]

4. GENERATION AUTOMATIQUE DU SYSTEMC A PARTIR DES PROFILES UML :

SystemC [8] est un langage de description de matériel/logiciel, permettant de représenter et de simuler les circuits et systèmes sur puce à différents niveaux d'abstraction Conçu comme librairie C++, il bénéficie de types de données et d'environnements de compilation du langage C++. SystemC remplace HDL comme Verilog et VHDL dans beaucoup de situations.

Figure 1 : Comparaison du SystemC avec les HDLs[19]

Ceci ne signifie pas que ces HDL ne sont plus utiles. Mais le systemC soutient une nouvelle approche pour concevoir un système. Parmi ses avantages citant : – Il permet de garder un même langage d'un bout à l'autre du flot de conception – Il a un noyau de simulation qui est tres fort pour permettre aux concepteurs de faire des tests et des simulations dessus. – SystemC soutient la conception a un niveau plus élevé d’abstraction, tandis que la majeure partie des « HDL » soutient le RTL (Register transfer level ) de la conception.

Ce langage peut être généré automatiquement à partir des notations graphiques d’UML voire ses profiles en utilisant les règles de correspondance (mapping Rules). La recherche scientifique a beaucoup t ravaillé sur cet aspect grâce aux avantages qu’il apporte dans la phase de développement des IPs en particulier et dans l’embarqué d’une manière générale. Ces travaux récents dans ce contexte sont cités dans [17], [18], [5].

5. NOTRE APPROCHE

La figure suivante présente notre approche complète qui permet de concevoir et développer des IPs de genre différents afin de les intégrer dans des SoCs.

Figure 2 Approche Complète de développement des IPs

261 © IT4OD 2014

Page 273: IT4OD 2014 Proceedings

5.1. Mosélisation à partir d’un méta modèle

On commence à modéliser (métamodéliser) l e composant virtuel à partir des spécifications en utilisant le méta modèle proposé dans la figure 4, afin d’obtenir un modèle UML pour le composant qu’on voudra le développé tout en utilisant un des outils qui supporte les profiles UML dont le but est de modéliser le composant ainsi que générer automatiquement son code SystemC à partir des spécifications [14] grâce à ces outils.

5.1.1 Représentation graphique d’un composant virtuel :

Un composant virtuel est constitué essentiellement d’une implémentation (ensemble de fichier) et des ports ou interfaces comme nous montre la figure suivante :

Figure 3 : Représentation graphique d’un IP Implémentation : Elle se compose d’un ou de plusieurs fichiers de code écrit dans un langage ou dans une description donnée, elle assure la fonctionnalité du composant virtuel par les transformations des entrées en sorties via des ports ou interfaces. Port-Interface : Il assure l’entrée et la sortie des données ainsi que d’autres fonctionnalités. Port pour les composants virtuels de nature matérielle écrit dans un langage de description matérielle HDL, et interface pour les composants virtuels de nature logicielle écrit dans un langage de haut niveau comme le C++. Le port (interface) d’entrée assure le passage des données vers l’IP via Data-in et les fonctionnalités de contrôle via Control (par exemple : sélection), et on trouve dans la sortie Data-out.

5.1.2 Le métamodèle des IPs proposé Notre méta modèle couvre les composants virtuels matériels et logiciels .

Figure 4: Notre Metamodèle pour les IPs

Figure 5: Les Stéréotypes utilisés 5.2 Description Comportementale : C’est le comportement du futur composant virtuel (ou de l’un de ses modules), il peut être décrit :

• Soit par un organigramme • Soit sous la forme d’un algorithme

Le fait de décrire le comportement et non la structure d’un composant, devrait être considéré comme une simplification du processus de conception. La description comportementale repose sur les notions suivantes : Description de la Fonction : A cette étape, on décrit la fonction à réaliser dans un format de haut niveau qui peut être un graphe, un pseudo algorithme ou un langage naturel Spécification des paramètres : Le choix du sous ensemble des paramètres est effectué selon le degré de généralité f ixé au préalable. Ce dernier i nflue sur la complexité de l’algorithme.

262 © IT4OD 2014

Page 274: IT4OD 2014 Proceedings

Définition des propriétés de chaque paramètre : Les paramètres peuvent être continus ou discrets, en rapport avec l’exigence du problème. Définition de l’algorithme : l’algorithme est conçu selon la description de la fonction, de la spécification des paramètres et de leurs propriétés. 5.3 Synthèse et Génération du Code : 5.3.1Génération du code Après la génération du modèle UML du composant virtuel, ainsi que la description comportementale de ce dernier il ne reste qu’à faire générer le code voulu en SystemC [6]. 5.3.2 Synthèses : Il existe trois types de synthèse dans l’architecture matérielle [16] A. Synthèse HLS C’est le premier type de la synthèse du composant virtuel, il accepte comme entrée une description comportementale écrite dans un langage HDL qui est le SystemC et qui est la s ortie de l’étape précédente de notre approche de conception (étape de génération du code) afin de produire des IPs soft sous une description RTL. B. Synthèse RTL : C’est le deuxième type de la synthèse d’un composant virtuel afin de générer un IP de type firm. La synthèse logique est l'étape qui permet de transformer la description RTL du système en une description au niveau portes logiques (Gate netlist). C. Synthèse PHYSIQUE : C'est le processus lors duquel les différentes parties d'un circuit sont automatiquement placées et connectées en fonction du problème à r ésoudre. Le placement-routage est en particulier employé dans le cadre des FPGA, des composants reprogrammables avec des milliers d'unités de traitement internes qui peuvent être reliées entre elles. 5.4 Analyse de Performance et vérification : Après la réalisation des composants virtuels de différents types, il ne reste plus qu’à vérifier le bon fonctionnement de l ’IP, af in de d étecter des erreurs éventuelles et d’assurer que l’objectif du processus de la conception a été préservé dans le développement [4][7].Les sources d’erreur peuvent être dues à l a conception ou à la réalisation. Le but de la vérification est de s’assurer que le produit (soft, firm, hard) r éalise la fonction désirée dans des conditions de fonctionnement prévues et qu’il ne provoque pas de conséquences graves dans les autres conditions.

6. IMPLÉMENTATION:

6.1Les outils utilisés : 6.1.1CoFluent Studio pour la Modélisation et génération automatique du code

CoFluent Studio [10] est un outil visuel de modélisation et simulation des stystèmes embarqués basé sur eclipse. Les modèles sont capturés dans les diagrammes graphiques en utilisant les notations standard d’UML et ainsi que les notations des profiles SysML et Marte afin de générer automatiquement les deux langages de description logicielle C++ et la description matérielle SustemC

Figure 6 : Les fonctionnalités offertes par les Cofluent Studio [11] La première étape consiste à décrire les fonctionnalités de son système en faisant abstraction de l’implantation matérielle future. Le modèle, dès cette étape intègre des contraintes temporelles, est alors simulé, ce qui permet d’observer le comportement fonctionnel du système, avec la possibilité de vérifier la synchronisation des données. La seconde étape consiste à choisir les éléments de son architecture matérielle. Il s’agit d ’unité de traitement : des processeurs, des FPGA, des structures de mémoire… Une fois ce ch oix réalisé, le logiciel réalise le partitionnement souhaité par l’utilisateur. On obtient alors un modèle architectural complet du circuit, dans lequel chaque fonction est traitée par une entité logique (processeur ou composant matériel)[11]. 6.1.2 Quartus II pour les Synthèse et Vérification Quartus est un logiciel développé par la société Altera [12], permettant la gestion complète d'un flot de conception CPLD ou FPGA. Ce logiciel permet de faire une saisie graphique ou une description HDL (VHDL ou verilog) d'architecture numérique, d'en réaliser une simulation, une synthèse et une implémentation sur cible reprogrammable[13].

263 © IT4OD 2014

Page 275: IT4OD 2014 Proceedings

Figure 7: Les étapes de développement dans Quartus II Il comprend une suite de fonctions de conception au niveau système, permettant d’accéder à la large bibliothèque d’IP d’Altera et un moteur de placement-routage intégrant la technologie d’optimisation de la synthèse physique et des solutions de vérification. Sa dernière version c’est la 13.1 6.2 Etude de Cas sur une UAL Le choix d’intégrer une fonction candidate ou non à la bibliothèque est effectué en respectant plusieurs facteurs, principalement l’évaluation de la réutilisation d’une fonction : c’est à d ire le nombre de fois et de secteurs différents pour diverses applications dans lesquelles celle ci pourrait être réutilisée.

Ce facteur est tout à fait critique et stratégique pour justifier l’effort de développement et garantir la réutilisation de l’IP dans différents contextes. On applique notre approche sur une UAL dont les paramètres de réutilisation sont

a. Taille des registres : Ce paramètre influe considérablement sur l’UAL en matière de précision de calcul, de coût, de taille de code. La reconfiguration de ce paramètre permet de toucher une large gamme de processeurs (8, 16, 32 ou 64 bits).

b. Jeu d’instructions supporté par le processeur : La sélection d’un ensembled’opérations supportées par l’UAL est un paramètre qui influe essentiellement sur la fonctionnalité du processeur et la taille du code, et en second lieu sur le coût et l’espace d’embarquement.

Figure 8 : Interface de notre UAL

Cette UAL fait le calcul de l’addition, la soustraction, la multiplication, la division, et la comparaison de deux nombres selon la figure suivantes

Figure 9 : Schéma de notre UAL

Ce facteur est tout à fait critique et stratégique pour justifier l’effort de développement et garantir la réutilisation de l’IP dans différents contextes.

Nous choisissons le composant Add avec un seul bit pour dérouler notre approche avec les SystemC

Listing : Code source d’un d’un Additionneur d’un bit

modélisé avec SystemC

Figure 10 : Fonction de Simulation d’un Additionneur d’un bit

Figure 11 : La description RTL d’un additionneur d’un

bit

264 © IT4OD 2014

Page 276: IT4OD 2014 Proceedings

7. DISCUSSION:

Cette Approche complète a permis de : Standardiser Le développement des IPs en utilisant un metamodèle en UML qui rassemble les deux types d’architecture matérielle et logicielle pour les composants Virtuels

Eliminer les obscurités et rendre le développement des IPs Clair et facile par le biais du langage de modélisation UML et ses profiles Accélérer le développement p ar l’usage des outils qui génèrent le code automatiquement ce qui va refléter sur le développement des SoC et la contrainte du Time To Market Ecarter le p roblème de partitionnement au moment de l’intégration des IPs dans le SoC grâce au développement des IPs par le SystemC.

Obtenir tous les types des IPs en utilisant seulement deux outils en partant de la spécification de l’IPs jusqu'à ce que le troisième type des IPs est généré sous forme de masque prêt à êt re fondu, comme nous montre la figure 12 :

Figure 12 : Les différents niveaux parcourus par notre approche

8. CONCLUSION

Dans ce papier nous avons présenté une approche complète de développement et de réutilisation des IPs Dans les SoCs basé sur un métamodèle UML, une génération automatique du SystemC par le Cofluent et des synthèses avec le Quartus II qui a u ne librairie très riches en composants. Notre travail s’inscrit dans une démarche de codesign où i l est demandé de développer des produits de qualité, en peu de temps et à moindre coût. Le système qu’on a réalisé est une bibliothèque ouverte de composants virtuels d e différents types permettant au concepteur de les réutiliser d ans des systèmes en passant par les étapes de sélection, paramétrage et intégration. Ces blocs réutilisables (IPs) sont paramétrables donc génériques, vérifiés avec soin, portables et l eurs codes sont bien commentés ce q ui facilite une éventuelle modification. Ainsi, ces IPs offrent à l’utilisateur des services tels que :

• une documentation complète facilitant l’intégration de l’IP.

• des fichiers de test permettant de vérifier le bon fonctionnement de l’IP après intégration.

Nous souhaitons à l’avenir, enrichir c ette bibliothèque en incluant d’autres composants virtuels, qui implémentent des fonctions plus complexes pour offrir aux clients plus d’applications.

REFERENCES

[1] G. Savaton, E. Casseau, et E. Martin « Design of a flexible 2 -D Discrete Wavelet Transform IP Core for JPEG 2000 Image Coding in Embedded Imaging Systems. Signal Processing 2002

[2] Eric MARTIN, Adel BAGANNE, Emmanuel CASSEAU : Milpat Project Development Methodology for intellectuals properties (IP's) for Telecom Applications: Progress Report 1.1 Behavioral Level: HLS tools and IPs, LESTER University of South Brittany, 2000

[3] VSI Alliance, Architecture Document – Version 1.0. Rapport technique, 1997

[4] George Sobral Silveira, Alisson V. Brito, Helder F. de A. Oliveira, and Elmar U. K.Melcher Open SystemC Simulator with Support for Power Gating Design Hindawi Publishing CorporationInternational Journal of Reconfigurable Computing. Volume 2012, Article ID 793190, 8 pages

[5] Yves Vanderperren, Wolfgang Mueller, Da He, Fabian Mischkalla, and Wim Dehaene Extended UML for Electronic Systems Design : A Code Generation Perspective Design Technology for Heterogeneous Embedded Systems pages , 2012

[6] Ibrahim Aref, Member, IACSIT and Khaled Elgaid « System Level Modeling of a Digital Communication Channel Based on SystemC » International Journal of Future Computer and Communication, Vol. 2, No. 3, June 2013

[7] D.D GAJSKI et al. Essential Issues for IP Reuse . Dans Proc. Asia for and South Pacific Design Automation Conference (ASPDAC) – Embedded Tutorial , pages 37-42 ,2000

[8] IEEE 1666 Standard: SystemC Language Reference Manual, Open SystemC Initiative, 2011. [Online]. Available: http://www.accellera.org/

[9] VSI Alliance,. http://www.vsi.org

[10] Cofluent Studio http www.cofluentdesign.com

[11] .http://www.cofluentdesign.com/uploads/Product_Collateral/CoFluent%20Studio_UML_ DS_v3.2.2.pdf, 2012

[12] ALTERA: http://www.altera.com

[13] Quartus II Software and Device Support Release Notes Version 13.0 Altera Corporation 13. May 2013

[14] Boudour, R., Kimour, M.: From design specification to SystemC. J. Comput. Sci. 2, 201–204 (2006)

[15] G.Booch, J.Rumbaugh and I.Jacobson,” the unified modeling language user guide”, 2009.

[16] Bernard Laurent : Conception des blocs réutilisables : Réflexion sur la méthodologie, thèse de doctorat de l’Institut national polytechnique de Grenoble-France, Juin 1999

265 © IT4OD 2014

Page 277: IT4OD 2014 Proceedings

[17] M. Mura and M. Paolieri. Sc2: State charts to system c: Automatic executable models generation. In proceedings FDL07, Barcelona, Spain.

[18] Fateh Boutekkouk Automatic SystemC Code Generation from UML Models at Early Stages of Systems on Chip Design International Journal of Computer Applications (0975 – 8887) Volume 8– No.6, October 2010

[19] Rui Chen Synthesizable Systemc To Vhdl Compiler Design, The Florida State University, 11-8-2011

[20] OMG: UML 2.0 Testing Profile Specification v2.0 (2004)

[21] OMG: UML Profile for Modeling QoS and Fault Tolerance Characteristics and Mechanisms (2004)

[22] OMG: UML Profile for Schedulability, Performance, and Time (SPT) Specification, v1.1 (2005)

[23] OMG: OMG Systems Modeling Language Specification 1.1 [24] OMG: UML Profile for System on a Chip (SoC) Specification, v1.0.1 (2006)

[25] OMG: A UML Profile for MARTE (2009)

[26] E.Riccobene, P. Scandura, A. Rosti, and S. Bocchino. A SOC Design Methodology Involving a UML2.0 Profile for SystemC. In Proceedings of the Design, Automation and Test in Europe Conference end Exhibition (DATE’05), 2005.

265 © IT4OD 2014

Page 278: IT4OD 2014 Proceedings

© IT4OD 2014

Page 279: IT4OD 2014 Proceedings

Hakim BENDJENNA Hakim BENDJENNA is an Assistant Professor in the Department of Computer Science at Tebessa university-Algeria. He received his Ph.D. in Computer Science from Constantine University - Algeria and Toulouse University - France. His research interests lie in the general field of software engineering and decision support with special focuses on requirement engineering. He has taught primarily introductory programming courses and courses in software engineering for over ten years. He also frequently serves as a program committee member for various international conferences and workshops.

Makhlouf DERDOUR Makhlouf Derdour has doctorate in Science in computer sciences mention Network; he is a lecturer in the department of Computer Science at the University of Tebessa, Algeria. His research interests include software architecture, multimedia applications, adaptation and self-adaptation of applications, design and modelling of systems, security of systems, sensors networks.

Louardi BRADJI Louardi BRADJI is an Assistant Professor in the Department of Computer Science at Tebessa university-Algeria. He received his Ph.D. in Computer Science from Constantine University – Algeria. His research interests include Data mining, information quality, decision making.

Mohamed Ridda LAOUAR Mohamed Ridda LAOUAR receives his Ph.D. degree in Industrial and Human Computer Science from the University of Valenciennes, France in 2005. His research areas include Information Systems, Decision Support Systems, E-Library Systems, Cloud Computing and other related topics. He has contributed to such Journals as Hi Tech Library and Human Systems Management. He is the editor of IJIST Journal and several proceedings of conferences such as of ICIST and ICSENT. He was the Chair of ICIST and ICSENT conferences since 2011.

The International Conference on Information Technology for Organization Development © IT4OD 2014 Proceedings

The International Conference on Information Technology for Organization Development (IT4OD 2014),

organized in University of Tebessa, Algeria on October 19 and 20, 2014, contributes to explore new

capacities in applied Information Technology (IT) with an aim to identify the latest research trends and

developments in this area, since the approaches and practices in the field of applied IT have been

witnessed in all fields of the society. In addition, the objective of the conference is to create a forum

where participants can disseminate their research to a wide audience of scholars and practitioners of IT in

Algeria.