Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017 978-3-319-64861-3, 3319648616, 978-3-319-64860-6

This book gathers the proceedings of the 3rd International Conference on Advanced Intelligent Systems and Informatics 20

2,562 48 138MB

English Pages 917 [932] Year 2018

Report DMCA / Copyright

DOWNLOAD FILE

Polecaj historie

Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017
 978-3-319-64861-3, 3319648616, 978-3-319-64860-6

Table of contents :
Front Matter ....Pages i-xx
Front Matter ....Pages 1-1
BP-MPSO Algorithm for PUMA Robot Vacumn Path Planning (SU Qinghua, Li Juntao)....Pages 3-12
Modeling and Performance Analysis of Planar Parallel Manipulators (Amr Abo Salem, Tarek Y. Khedr, Gamal El Ghazaly, M. I. Mahmoud)....Pages 13-23
Design and Simulation of Fuzzy Water Monitoring System Using WSN for Fishing (Azza Esam, Mohamed Elkhatib, Sameh Ibrahim)....Pages 24-35
Passivity Based Decoupling of Lagrangian Systems (Ahmad Taher Azar, Fernando E. Serrano)....Pages 36-46
Control of New Type of Fractional Chaos Synchronization (Ahmad Taher Azar, Adel Ouannas, Shikha Singh)....Pages 47-56
Control of a Two Link Planar Electrically-Driven Rigid Robotic Manipulator Using Fractional Order SOFC (Ahmad Taher Azar, Jitendra Kumar, Vineet Kumar, K. P. S. Rana)....Pages 57-68
Wavefront and A-Star Algorithms for Mobile Robot Path Planning (Issa Mtanos Zidane, Khalil Ibrahim)....Pages 69-80
Novel Multi-input Multi-output Brain Emotional Learning Based Intelligent Controller for PUMA 560 Robotic Arm (Mohamed Hamdy El-Saify, Gamal Ahmed El-Sheikh, Ahmed Mohamed El-Garhy)....Pages 81-93
Front Matter ....Pages 95-95
A Computational Offloading Framework for Object Detection in Mobile Devices (Maged AbdelAty, Amr Mokhtar)....Pages 97-107
A Hybrid EEG Signals Classification Approach Based on Grey Wolf Optimizer Enhanced SVMs for Epileptic Detection (Asmaa Hamad, Essam H. Houssein, Aboul Ella Hassanien, Aly A. Fahmy)....Pages 108-117
A Model of Electrokinetic Platform for Separation of Different Sizes of Biological Particles (Reda Abdelbaset, Yehya H. Ghallab, Hamdy Abdelhamid, Yehea Ismail)....Pages 118-128
Breast Cancer Detection Using Polynomial Fitting for Intensity Spreading Within ROIs (Shaimaa Mostafa, Roaa Mubarak, Mohamed El-Adawy)....Pages 129-139
Low Complexity Intra-prediction Algorithm for Video Coding Standards (Farid Z. Saleh, Samir G. Sayed, Amr E. Mohamed)....Pages 140-150
Autonomic Self-healing Approach to Eliminate Hardware Faults in Wireless Sensor Networks (Walaa Elsayed, Mohamed Elhoseny, A. M. Riad, Aboul Ella Hassanien)....Pages 151-160
Classification of Toxicity Effects of Biotransformed Hepatic Drugs Using Optimized Support Vector Machine (Alaa Tharwat, Thomas Gabel, Aboul Ella Hassanien)....Pages 161-170
Automating Requirements Elicitation of Cloud-Based ERPs (Mohamed A. Abd Elmonem, Eman S. Nasr, Mervat H. Gheith)....Pages 171-180
An Experimental Evaluation of Binary Feature Descriptors (Hammam A. Alshazly, M. Hassaballah, Abdelmgeid A. Ali, G. Wang)....Pages 181-191
Developing an Efficient Clique-Based Algorithm for Community Detection in Large Graphs (Hassan Saad, Taysir Hassan A. Soliman, Sherine Rady)....Pages 192-202
Stock Exchange Threat Modeling, EGX as a Case Study (Ehab ElShafei, Nashwa AbdelBaki)....Pages 203-212
HTTP Application Layer DDoS Attack Mitigation Using Resources Monitor (Mohamed Aly Mohamed, Nashwa Abdelbaki)....Pages 213-221
Semantic Cloud Community Framework for Services Provision (Tamer M. Al-Mashat, Fatma A. El-Licy, Akram I. Salah)....Pages 222-231
Detecting Twitter Users’ Opinions of Arabic Comments During Various Time Episodes via Deep Neural Network (Naglaa Abdelhade, Taysir Hassan A. Soliman, Hosny M. Ibrahim)....Pages 232-246
EEG-Based Emotion Recognition Using a Wrapper-Based Feature Selection Method (Mohammed A. AbdelAal, Assem A. Alsawy, Hesham A. Hefny)....Pages 247-256
Early Prediction of Wheat Diseases Using SVM Multiclass (Ahmed Reda, Essam Fakharany, Maryam Hazman)....Pages 257-269
Coronary Artery Vessel Tree Enhancement in Three-Dimensional Computed Tomography Angiography (Marwa Shams, Safwat Hamad, Mohammed A. M. Salem, Howida A. Shedeed)....Pages 270-279
Understanding Medical Text Related to Breast Cancer: A Review (Noha Ali, Eslam Amer, Hala Zayed)....Pages 280-288
Intelligent Algorithms for Optimal Selection of Virtual Machine in Cloud Environment, Towards Enhance Healthcare Services (Ahmed Abdelaziz, Mohamed Elhoseny, Ahmed S. Salama, A. M. Riad, Aboul Ella Hassanien)....Pages 289-298
Gesture Recognition for Improved User Experience in Augmented Biology Lab (Gehad Hassan, Nashwa Abdelbaki)....Pages 299-308
Parameter Optimization of Support Vector Machine Using Dragonfly Algorithm (Alaa Tharwat, Thomas Gabel, Aboul Ella Hassanien)....Pages 309-319
Moth-flame Optimization Based Segmentation for MRI Liver Images (Shereen Said, Abdalla Mostafa, Essam H. Houssein, Aboul Ella Hassanien, Hesham Hefny)....Pages 320-330
Particle Swarm Optimization and K-Means Algorithm for Chromosomes Extraction from Metaphase Images (Gehad Ismail Sayed, Aboul Ella Hassanien, M. I. Shaalan)....Pages 331-341
Diagnosing Heart Diseases Using Morphological and Dynamic Features of Electrocardiogram (ECG) (Hadeer El-Saadawy, Manal Tantawi, Howida A. Shedeed, M. F. Tolba)....Pages 342-352
Front Matter ....Pages 353-353
A Bidirectional LSTM and Conditional Random Fields Approach to Medical Named Entity Recognition (Kai Xu, Zhanfan Zhou, Tianyong Hao, Wenyin Liu)....Pages 355-365
Discover Trending Topics of Interest to Governments (Moutaz Wajih Hamadeh, Sherief Abdallah)....Pages 366-373
I2Evaluator: An Aesthetic Metric-Tool for Evaluating the Usability of Adaptive User Interfaces (Neila Chettaoui, Med Salim Bouhlel)....Pages 374-383
FCSR - Fuzzy Continuous Speech Recognition Approach for Identifying Laryngeal Pathologies Using New Weighted Spectrum Features (Rania M. Ghoniem, Khaled Shaalan)....Pages 384-395
Analyzing the Arab Gulf Newspapers Using Text Mining Techniques (Said A. Salloum, Mostafa Al-Emran, Sherief Abdallah, Khaled Shaalan)....Pages 396-405
Dataset Built for Arabic Sentiment Analysis (Ayesha Jumaa Salem Al Mukhaiti, Sanjeera Siddiqui, Khaled Shaalan)....Pages 406-416
Evaluating Arabic Parser and Recommending Improvements (Khaled Ezzeldin, Sanjeera Siddiqui, Khaled Shaalan)....Pages 417-428
Manipulating Sentiment Analysis Challenges in Morphological Rich Languages (Sara Sabih, Ahmed Sallam, Gh. S. El-Taweel)....Pages 429-439
Crowdsourcing Speech and Language Data for Resource-Poor Languages (Hamdy Mubarak)....Pages 440-447
Performance Analysis for Sentiment Techniques Evaluation Perspectives (Doaa Mohey El-Din Mohamed, Mohamed Hamed Nasr El-din)....Pages 448-457
Automatic Arabic Ontology Construction Framework: An Insectivore’s Animal Case Study (Dalia Fadl, Safia Abbas, Mostafa Aref)....Pages 458-466
Twitter Sentiment Analysis for Arabic Tweets (Sherihan Abuelenin, Samir Elmougy, Eman Naguib)....Pages 467-476
Use of Arabic Sentiment Analysis for Mobile Applications’ Requirements Evolution: Trends and Challenges (Rabab E. Saudy, Eman S. Nasr, Alaa El Din M. El-Ghazaly, Mervat H. Gheith)....Pages 477-487
A New Model for Detecting Similarity in Arabic Documents (Mahmoud Zaher, Abdulaziz Shehab, Mohamed Elhoseny, Lobna Osman)....Pages 488-499
Enhancing Semantic Arabic Information Retrieval via Arabic Wikipedia Assisted Search Expansion Layer (Eslam Amer, Heba M. Khalil, Tarek. El-Shistawy)....Pages 500-510
Development of an Arabic Questions Answering App for Android Smartphones (Mazen Juma, Azza Abdel Monem, Khaled Shaalan)....Pages 511-524
Front Matter ....Pages 525-525
A Generic Optimization Solution for Hybrid Energy Systems Based on Agent Coordination (Djamel Saba, Brahim Berbaoui, Houssem Eddine Degha, Fatima Zohra Laallam)....Pages 527-536
A New Hybrid Approach Using Genetic Algorithm and Q-learning for QoS-aware Web Service Composition (Doaa H. Elsayed, Eman S. Nasr, Alaa El Din M. El Ghazali, Mervat H. Gheith)....Pages 537-546
A Study of the Effect of Agile Approaches on Software Metrics Using Self-Organizing Maps (Doaa M. Shawky, Salwa K. Abd-El-Hafiz)....Pages 547-559
A Text Mining Based Literature Analysis for Learning Theories and Computer Science Education (Rania Hodhod, Hillary Fleenor)....Pages 560-568
Cardinality Estimation Algorithm in Large-Scale Anonymous Wireless Sensor Networks (Ahmed Douik, Salah A. Aly, Tareq Y. Al-Naffouri, Mohamed-Slim Alouini)....Pages 569-578
Bio-inspired Load Balancing Algorithm in Cloud Computing (Marwa Gamal, Rawya Rizk, Hani Mahdi, Basem Elhady)....Pages 579-589
Cascade Multimodal Biometric System Using Fingerprint and Iris Patterns (Mohamed Elhoseny, Ehab Essa, Ahmed Elkhateb, Aboul Ella Hassanien, Ahmed Hamad)....Pages 590-599
Colored Petri Net Model for Blocking Misleading Information Propagation in Online Social Networks (Mohamed Torky, Ali Meligy, Hani Ibrahim, Aboul Ella Hassanein)....Pages 600-609
DeBruijn Cellular Automata: A Dynamic Machine Model Based on deBruijn Graph Approach (Mohamed Torky, Aboul Ella Hassanein)....Pages 610-620
Energy Aware Mobile Cloud Computing Algorithm for Android Smartphones (Samar A. Said, Sameh A. Salem, Samir G. Sayed)....Pages 621-631
Human Arm-Leg Smart Gesture-Based Control in Human Computer Interaction Applications (Sahar Magdy, Sherin Youssef, Cherine Fathy)....Pages 632-641
Improving Multiple Routing in Mobile Ad Hoc Networks Using Fuzzy Models (Hamdy A. M. Sayedahmed, Imane M. A. Fahmy, Hesham A. Hefny)....Pages 642-654
Neural-Network Based Functional Evaluation on Thermograms of Wireless Circuits (Wael Sultan, Nihal Yassin, M. Hesham Farouk)....Pages 655-662
Optimizing Deep Learning Based on Deep Auto Encoder and Genetic Algorithm (Sherihan Abuelenin, Samir Elmougy, Fadya Habeeb)....Pages 663-672
Performance Enhancement of Satellite Image Classification Using a Convolutional Neural Network (Noureldin Laban, Bassam Abdellatif, Hala M. Ebied, Howida A. Shedeed, Mohamed F. Tolba)....Pages 673-682
Semi-supervised Approach to Soft Sensor Modeling for Fault Detection in Industrial Systems with Multiple Operation Modes (Shun Takeuchi, Takuya Nishino, Takahiro Saito, Isamu Watanabe)....Pages 683-693
Semi-supervised Image Clustering Using Active Affinity Propagation (Sarah Habashi, Mohamed A. Ismail, Magdy Nagi)....Pages 694-703
Spatiotemporal Reasoning for Complex Video Event Recognition in Content-Based Video Retrieval (Leslie F. Sikos)....Pages 704-713
Trust and Bio-Inspired-Based Clustering Techniques in Wireless Sensor Networks: A Survey (Sarah Abdelwahab, Tarek Gaber, Mohamed Wahed)....Pages 714-723
Maximizing Lifetime of Wireless Sensor Networks Based on Whale Optimization Algorithm (Mohammed M. Ahmed, Essam H. Houssein, Aboul Ella Hassanien, Ayman Taha, Ehab Hassanien)....Pages 724-733
Evaluating Learners’ Progress in Smart Learning Environment (Hisham Elhoseny, Mohamed Elhoseny, Samir Abdelrazek, A. M. Riad)....Pages 734-744
Predicting Algae Growth in the Nile River Using Meta-learning Techniques (Hend Serry, Aboul Ella Hassanien, Sabry Zaghlou, Hesham Ahmed Hefny)....Pages 745-754
Forming System Requirements for Software Development Using Semantic Technology (Passent M. ElKafrawy, Mohamed S. Khalaf)....Pages 755-764
Front Matter ....Pages 765-765
Dogs Animal Recognition System in IoT Environment Based on Orthogonal Statistical Adapted Local Binary Pattern (Abdallah A. Mohamed, Hani M. Ibrahem, Walid A. Dabour, Aboul Ella Hassanien)....Pages 767-777
Arabian Horse Identification System Based on Live Captured Muzzle Print Images (Ayat Taha, Ashraf Darwish, Aboul Ella Hassanien)....Pages 778-787
A Comparative Study of Trust Mapping Functions in Mobile Phone Participatory Sensing Applications (Hayam Mousa, Osama Younes, Mohiy Hadhoud)....Pages 788-797
Utilizing the Internet of Things (IoT) Technologies in the Implementation of Industry 4.0 (Labib M. Zawra, Hala A. Mansour, Adly T. Eldin, Nagy W. Messiha)....Pages 798-808
Vehicle to Vehicle Implementation in Developing Countries (Ahmed Yasser, Mohamed Elzorkany, Neamat Abdel Kader)....Pages 809-819
Quantified Self Using IoT Wearable Devices (Abdulaziz Shehab, Ahmed Ismail, Lobna Osman, Mohamed Elhoseny, I. M. El-Henawy)....Pages 820-831
Secret Image Sharing Based on Elementary Cellular Automata (Mervat Ahmed, Osama S. Younes)....Pages 832-843
Smart Aquaponics System for Industrial Internet of Things (IIoT) (Mohanad Odema, Ihab Adly, Ayman Wahba, Hani Ragai)....Pages 844-854
A Survey on Smart Cities’ IoT (Ahmed Samy Nassar, Ahmed Hossam Montasser, Nashwa Abdelbaki)....Pages 855-864
Software Watermarking for Java Program Based on Method Name Encoding (Jianping Chen, Kui Li, Wanzhi Wen, Weixu Chen, Chenxue Yan)....Pages 865-874
Novel Design Based Internet of Things to Counter Lone Wolf, Part-A: Nice Attack (Hassan F. Morsi, M. I. Youssef, G. F. Sultan)....Pages 875-884
Enhancing Indoor Localization Using IoT Techniques (Mohamed Nabil, M. B. Abdelhalim, Ashraf AbdelRaouf)....Pages 885-894
A Review of Wireless Sensor Applications in Remote Sensing and Space Industry (Mohammed E. El-Telbany, Maha A. Maged)....Pages 895-904
A Hadoop Extension for Analysing Spatiotemporally Referenced Events (Mohamed S. Bakli, Mahmoud A. Sakr, Taysir Hassan A. Soliman)....Pages 905-914
Back Matter ....Pages 915-917

Citation preview

Advances in Intelligent Systems and Computing 639

Aboul Ella Hassanien Khaled Shaalan Tarek Gaber Mohamed F. Tolba Editors

Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017

Advances in Intelligent Systems and Computing Volume 639

Series editor Janusz Kacprzyk, Polish Academy of Sciences, Warsaw, Poland e-mail: [email protected]

About this Series The series “Advances in Intelligent Systems and Computing” contains publications on theory, applications, and design methods of Intelligent Systems and Intelligent Computing. Virtually all disciplines such as engineering, natural sciences, computer and information science, ICT, economics, business, e-commerce, environment, healthcare, life science are covered. The list of topics spans all the areas of modern intelligent systems and computing. The publications within “Advances in Intelligent Systems and Computing” are primarily textbooks and proceedings of important conferences, symposia and congresses. They cover significant recent developments in the field, both of a foundational and applicable character. An important characteristic feature of the series is the short publication time and world-wide distribution. This permits a rapid and broad dissemination of research results.

Advisory Board Chairman Nikhil R. Pal, Indian Statistical Institute, Kolkata, India e-mail: [email protected] Members Rafael Bello Perez, Universidad Central “Marta Abreu” de Las Villas, Santa Clara, Cuba e-mail: [email protected] Emilio S. Corchado, University of Salamanca, Salamanca, Spain e-mail: [email protected] Hani Hagras, University of Essex, Colchester, UK e-mail: [email protected] László T. Kóczy, Széchenyi István University, Győr, Hungary e-mail: [email protected] Vladik Kreinovich, University of Texas at El Paso, El Paso, USA e-mail: [email protected] Chin-Teng Lin, National Chiao Tung University, Hsinchu, Taiwan e-mail: [email protected] Jie Lu, University of Technology, Sydney, Australia e-mail: [email protected] Patricia Melin, Tijuana Institute of Technology, Tijuana, Mexico e-mail: [email protected] Nadia Nedjah, State University of Rio de Janeiro, Rio de Janeiro, Brazil e-mail: [email protected] Ngoc Thanh Nguyen, Wroclaw University of Technology, Wroclaw, Poland e-mail: [email protected] Jun Wang, The Chinese University of Hong Kong, Shatin, Hong Kong e-mail: [email protected]

More information about this series at http://www.springer.com/series/11156

Aboul Ella Hassanien Khaled Shaalan Tarek Gaber Mohamed F. Tolba •



Editors

Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017

123

Editors Aboul Ella Hassanien Faculty of Computers and Information Information Technology Department Cairo University Giza Egypt Khaled Shaalan Dubai International Academic City The British University in Dubai Dubai United Arab Emirates

Tarek Gaber Faculty of Computers and Informatics Suez Canal University Ismailia Egypt Mohamed F. Tolba Ain Shams University Cairo Egypt

ISSN 2194-5357 ISSN 2194-5365 (electronic) Advances in Intelligent Systems and Computing ISBN 978-3-319-64860-6 ISBN 978-3-319-64861-3 (eBook) DOI 10.1007/978-3-319-64861-3 Library of Congress Control Number: 2017952566 © Springer International Publishing AG 2018 This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use. The publisher, the authors and the editors are safe to assume that the advice and information in this book are believed to be true and accurate at the date of publication. Neither the publisher nor the authors or the editors give a warranty, express or implied, with respect to the material contained herein or for any errors or omissions that may have been made. The publisher remains neutral with regard to jurisdictional claims in published maps and institutional affiliations. Printed on acid-free paper This Springer imprint is published by Springer Nature The registered company is Springer International Publishing AG The registered company address is: Gewerbestrasse 11, 6330 Cham, Switzerland

Preface

The 3rd International Conference on Advanced Intelligent Systems and Informatics (AISI 2017), which took place in Cairo, Egypt, during September 9–11, 2017, is an international interdisciplinary conference covering research and development in the field of informatics and intelligent systems. The 3rd edition of AISI 2017 is organized by the Scientific Research Group in Egypt (SRGE) and technically sponsored by the IEEE Computational Intelligence Society (Egypt chapter), the IEEE Robotics and Automation Society (Egypt Chapter), International Rough Sets Society (Egypt Chapter). AISI is organized to provide an international forum that brings together those who are actively involved in the areas of interest, to report on up-to-the-minute innovations and developments, to summarize the state of the art, to exchange ideas and advances in all aspects of informatics and intelligent systems, technologies, and applications. The conference has five major tracks: – – – – –

Intelligent Language Processing Intelligent Systems Intelligent Robotics Systems Informatics Internet of Things and Big Data Analytics

All submissions were reviewed by three reviewers in average, with no distinction between papers submitted for all conference tracks. We are convinced that the quality and diversity of the topics covered will satisfy both the attendees and the readers of these conference proceedings. We express our sincere thanks to the plenary speakers, special session chairs, workshop chairs, and international program committee members for helping us to formulate a rich technical program. We would like to extend our sincere appreciation for the outstanding work contributed over many months by the Organizing Committee: Local Organization Chair and Publicity Chair. We also wish to express our appreciation to the SRGE members for their assistance. We would like to emphasize that the success of AISI 2017 would not have been possible without the support of many committed volunteers who generously contributed their time, expertise, and resources toward making the conference an unqualified success. Finally, thanks to Springer team for their v

vi

Preface

supporting in all stages of the production of the proceedings. We hope that you will enjoy the conference program.

Keywords – Intelligent Systems, Intelligent Informatics, Computational Intelligence, Advanced Intelligent Systems, Cloud Computing, Internet of Things (IoT), Big Data Analytics, Intelligent Language Processing and Informatics Aboul Ella Hassanien Khaled Shaalan Tarek Gaber M.F. Tolba

Organization

Honorary Chair Fahmy Tolba, Egypt

General Chair Aboul Ella Hassanien, Egypt

International Advisory Board Fahmy Tolba, Egypt Ajith Abraham, USA Vaclav Snasel, Czech Republic Dominik Slezak, Poland Janusz Kacprzyk, Poland Tai-hoon Kim, Korea Qing Tan, Canada Hiroshi Sakai, Japan Khaled Shaalan, Egypt

Track Chairs Khaled Shaalan, Egypt (Intelligent Natural Language Processing Track) Tarek Gaber and Passent el-Kafrawy, Egypt (Intelligent Systems Track) Diego Alberto Oliva, Mexico (Informatics Track) Mohamed Elhoseny, Egypt (Intelligent Systems Track) Ahmed Ahmad Azar (Intelligent Robotics Systems Track) Ashraf Darwish, Egypt (Internet of Things and Big Data Analytics Track)

vii

viii

Organization

Publicity Chairs Adriana Schiopoiu Soumya Banerjee Mohamed Abd Elfattah Habib Kammoun Abdelhameed Ibrahim Abdelaziz Abdelhamid

Burlea Universitatea din Craiova, Romania Birla Institute of Technology, Mesra, Ranchi, India Mansura university, Egypt REGIM, ENIS, University of Sfax - Tunisia Mansura university, Egypt Ain Shams University, Egypt

Technical Program Committee Abdelfettah Hamdani Abdelhak Lekhouaja Abdelmonaime lachkar Abdelrahman Ahmed Ahmad Abd-alaziz Ahmed Anter Ahmed Guessoum Ahmad Hossny Ahmed Nabhan Ahmed Sharf ElDin Aladdin Ayesh Almoataz B. Al-Said Amany Elshazli Amir Atiya Aya Al-Zoghby Azza Abdel Monem Azzeddine Mazroui Azzedine Lazrek Doaa Samy Farid Meziane Faten Khalfallah Hanaa Bayomi Hanady Ahmed Hitham M. Abo Bakr Ibrahim Bounhas Ibrahim Moawad Imed Zitouni Ines Boujelben Ismaïl Biskri Kais Haddar

Mohammed V University, Morocco Mohammed First University, Morocco ENSA USMBA, Morocco University of Sevilla, Spain The British University in Egypt Beni Suef University, Egypt Houari Boumediene University, Algeria University of Adelaide, Australia Fayoum University, Egypt Helwan University, Egypt De Montfort University, UK Cairo University, Egypt Helwan University, Egypt Cairo University, Egypt Mansoura University, Egypt Ain Shams University, Egypt Mohammed First University, Morocco Cadi Ayyad University, Marrakech, Morocco Cairo University, Egypt University of Salford, UK Faculty of Economic Sciences and Management, Tunisia Cairo University, Egypt Qatar University, Qatar Zagazig University, Egypt La Manouba University, Tunisia Ain Shams University, Egypt Mircosoft, USA Miracl-Sfax University, Tunisia Université du Québec à Trois Rivières, Canada University of Sfax, Tunisia

Organization

Karim Bouzoubaa Kevin Daimi Lahsen Abouenour Mai Oudah Majdi Sawalha Mervat Gheith Mohamed Abd Elfattah Mohamed Dahab Mohamed El Hannach Mohammad Abushariah Mohammed Attia Mohammed Kayed Mohammed Korayem Mohsen Rashwan Mostafa Al-Emran Mostafa Aref Mostafa Ezzat Mostafa Saleh Muhammad Shoaib Mustafa Abdul Salam Mustafa Jarrar Nadim Obeid Nagwa Badr Neamat El Gayar Osama Emam Omnia El-Barbary Paolo Rosso Rana Aref Rania Al-Sabbagh Rasha Aboul-Yazeed Salwa Hamada Sameh Alansary Samir AbdelRahman Sanjeera Siddiqui Santosh K. Ray Sattar Izwaini Seham Elkareh Sherief Abdallah Sherif Mahdy Abdou Sherif Khattab Sinan Al Shikh Slim Mesfar Tarek Elghazaly

ix

Mohammed V University, Morocco University of Detroit Mercy, USA Mohammed V University, Morocco Masdar Institute of Science and Technology, UAE The University of Jordan, Jordan Cairo University, Egypt Mansoura University, Egypt King Abdulaziz University, Saudi Arabia University of Fez, Morocco The University of Jordan Dublin University, Ireland Beni-Suef University, Egypt Indiana University, USA Cairo University, Egypt Al Buraimi University College, Oman Ain Shams University, Egypt Cairo University, Egypt King Abdulaziz University, Saudi Arabia The British University in Dubai, UAE Modern Academy for Science and Technology, Egypt Birzeit University, Palestine The University of Jordan Ain Shams University, Egypt Cairo University, Egypt IBM, Egypt Shaqra University, Saudi Arabia Universitat Politècnica de València, Spain Cairo University, Egypt Ain shams University, Egypt Faculty of Engineering, Egypt Taibah University, Saudi Arabia Bibliotheca Alexandrina, Egypt Cairo University, Egypt The British University in Dubai, UAE Khawarizmi International College, UAE American University of Sharjah, UAE Alexandria University, Egypt The British University in Dubai, UAE Cairo University, Egypt Cairo University, Egypt University of Salford, UK RIADI, University of Manouba, Tunisia Cairo University, Egypt

x

Yassine Benajiba Violetta Cavalli-Sforza Wajdi Zaghouani Yasser Hifny Yousfi Abdellah Zeinab Ibrahim Emad Eldin Mohamed Maad Shatnawi Walaa Saber Amir Ahmad Attaur Rehman Mehdioui Omar Ashraf AbdelRaouf Aarti Singh Tahani Alsubait Evgenia Theodotou Pavel Kromer Irma Aslanishvili Jan Platos Ivan Zelinka Sebastian Tiscordio Natalia Spyropoulou Dimitris Sedaris Vassiliki Pliogou Pilios Stavrou Eleni Seralidou Stelios Kavalaris Litsa Charitaki Elena Amaricai Qing Tan Pascal Roubides Manal Abdullah Mandia Athanasopoulou Vicky Goltsi Mohammad Reza Noruzi Abdelhameed Ibrahim Ahmad Taher Azar Ahmed Anter Ahmed Elhayek Ahmed Fouad

Organization

Symanto Research, USA Al Akhawayn University, Morocco CMU, Qatar Helwan University, Egypt Mohamed V University, Morocco CMU, Qatar Canadian University Dubai, UAE Higher Colleges of Technology Emirates College of Technology, UAE United Arab Emirates University, UAE King Saud University, Saudi Arabia Moulay Ismail University, Malaysia Misr International University, Egypt Carnegie Mellon University, USA Umm Alqura University, SA University of East London (UEL), UK VŠB Technical University of Ostrava, Czech Republic Ivane Javakhishvili Tbilisi State University, Georgia VŠB Technical University of Ostrava, Czech Republic VŠB Technical University of Ostrava, Czech Republic Czech Technical University, Czech Republic Hellenic Open University, Greece Hellenic Open University, Greece Metropolitan College, Greece Metropolitan College, Greece University of Piraeus, Greece Metropolitan College, Greece University of Athens, Greece University of Timisoara, Greece Athabasca University, Greece Broward College, Greece King Abdulaziz University, KSA Metropolitan College, Greece Metropolitan College, Greece Tarbiat Modares University, Iran Mansura university, Egypt Banha university, Egypt Beni Suef university, Egypt German Research Center for AI, kaiserslautern, Germany Canal Suez university, Egypt

Organization

Alaa Tharwat Amira Sayed Amira S. Ashour Boyang Albert Li Edgard Marx Eid Emary Fatma Helmy Hany Alnashar Hossam Zawbaa Islam Amin Ivan Ermilov Kareem Kamal Mahmoud Awadallah Maryam Hazman Minu Kesheri Mohamed Mostafa Eltaweel Mohamed Tahoun Mohamed Hamed Mohamed Shrif Mohamed Abdelfatah Mohammed Abdel-Megeed Mona Solyman Mona Ali Muhammad Saleem Nabiha Azizi Namshik Han Noreen Kausar Noura Semary Rania Hodhod Reham Ahmed Sara Abdelkader Sayan Chakraborty Shoji Tominaga Siva Ganesh Malla Soumya Banerjee Sourav Samanta Suvojit Acharjee Swarna Kanchan Takahiko Horiuchi Tommaso Soru Wahiba Ben Abdessalem Zeineb Chelly

xi

Canal Suez university, Egypt Future university, Egypt Tanta University, Egypt Disney Research, Pittsburgh, USA University of Leipzig, Germany Cairo University, Egypt MISR university, Egypt Beni Suef university, Egypt Beni Suef university, Egypt Cairo University, Egypt University of Leipzig, Germany Beni Suef university, Egypt Virginia Tech, Blacksburg, USA Cairo University, Egypt India Arab Academy for Science, Technology, and Maritime Transports, Egypt Canal Suez university, Egypt Cairo University, Egypt Universitat Leipzig Germany, Germany Mansura university, Egypt Ain Shams university, Egypt Cairo University, Egypt Banha university, Egypt Universitat Leipzig Germany, Germany Annaba University, Algeria University of Cambridge, UK Alfaisal university, KSA Monofya university, Egypt Columbus State University, USA Damita university, Egypt The University of Western Ontario, London, UK India Chiba University, Chiba, Japan Indian Institute of Technology, India India India National Institute of Technology, Agartala, India BITS Pilani, India Chiba University, Japan Universitat Leipzig Germany, Germany University of Tunis, Tunis University of Tunis, Tunis

xii

Local Arrangement Chairs Essam Halim Houssein, Egypt (Chair) Ahmed Talaat, Egypt Mohamed Abd Elfattah, Egypt Ragia Ibrahim, Egypt Khaled Ahmed, Egypt Ramadan Babers, Egypt

Organization

Contents

Intelligent Control Systems and Robotics BP-MPSO Algorithm for PUMA Robot Vacumn Path Planning . . . . . . . SU Qinghua and Li Juntao

3

Modeling and Performance Analysis of Planar Parallel Manipulators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Amr Abo Salem, Tarek Y. Khedr, Gamal El Ghazaly, and M.I. Mahmoud

13

Design and Simulation of Fuzzy Water Monitoring System Using WSN for Fishing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Azza Esam, Mohamed Elkhatib, and Sameh Ibrahim

24

Passivity Based Decoupling of Lagrangian Systems . . . . . . . . . . . . . . . . . Ahmad Taher Azar and Fernando E. Serrano

36

Control of New Type of Fractional Chaos Synchronization . . . . . . . . . . . Ahmad Taher Azar, Adel Ouannas, and Shikha Singh

47

Control of a Two Link Planar Electrically-Driven Rigid Robotic Manipulator Using Fractional Order SOFC . . . . . . . . . . . . . . . . . . . . . . . Ahmad Taher Azar, Jitendra Kumar, Vineet Kumar, and K.P.S. Rana Wavefront and A-Star Algorithms for Mobile Robot Path Planning. . . . Issa Mtanos Zidane and Khalil Ibrahim Novel Multi-input Multi-output Brain Emotional Learning Based Intelligent Controller for PUMA 560 Robotic Arm . . . . . . . . . . . . Mohamed Hamdy El-Saify, Gamal Ahmed El-Sheikh, and Ahmed Mohamed El-Garhy

57 69

81

xiii

xiv

Contents

Informatics A Computational Offloading Framework for Object Detection in Mobile Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Maged AbdelAty and Amr Mokhtar

97

A Hybrid EEG Signals Classification Approach Based on Grey Wolf Optimizer Enhanced SVMs for Epileptic Detection . . . . . 108 Asmaa Hamad, Essam H. Houssein, Aboul Ella Hassanien, and Aly A. Fahmy A Model of Electrokinetic Platform for Separation of Different Sizes of Biological Particles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 Reda Abdelbaset, Yehya H. Ghallab, Hamdy Abdelhamid, and Yehea Ismail Breast Cancer Detection Using Polynomial Fitting for Intensity Spreading Within ROIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 Shaimaa Mostafa, Roaa Mubarak, and Mohamed El-Adawy Low Complexity Intra-prediction Algorithm for Video Coding Standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Farid Z. Saleh, Samir G. Sayed, and Amr E. Mohamed Autonomic Self-healing Approach to Eliminate Hardware Faults in Wireless Sensor Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 Walaa Elsayed, Mohamed Elhoseny, A.M. Riad, and Aboul Ella Hassanien Classification of Toxicity Effects of Biotransformed Hepatic Drugs Using Optimized Support Vector Machine . . . . . . . . . . . . . . . . . . . . . . . . 161 Alaa Tharwat, Thomas Gabel, and Aboul Ella Hassanien Automating Requirements Elicitation of Cloud-Based ERPs . . . . . . . . . . 171 Mohamed A. Abd Elmonem, Eman S. Nasr, and Mervat H. Gheith An Experimental Evaluation of Binary Feature Descriptors . . . . . . . . . . 181 Hammam A. Alshazly, M. Hassaballah, Abdelmgeid A. Ali, and G. Wang Developing an Efficient Clique-Based Algorithm for Community Detection in Large Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 Hassan Saad, Taysir Hassan A. Soliman, and Sherine Rady Stock Exchange Threat Modeling, EGX as a Case Study . . . . . . . . . . . . 203 Ehab ElShafei and Nashwa AbdelBaki HTTP Application Layer DDoS Attack Mitigation Using Resources Monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Mohamed Aly Mohamed and Nashwa Abdelbaki Semantic Cloud Community Framework for Services Provision . . . . . . . 222 Tamer M. Al-Mashat, Fatma A. El-Licy, and Akram I. Salah

Contents

xv

Detecting Twitter Users’ Opinions of Arabic Comments During Various Time Episodes via Deep Neural Network . . . . . . . . . . . . . . . . . . 232 Naglaa Abdelhade, Taysir Hassan A. Soliman, and Hosny M. Ibrahim EEG-Based Emotion Recognition Using a Wrapper-Based Feature Selection Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 Mohammed A. AbdelAal, Assem A. Alsawy, and Hesham A. Hefny Early Prediction of Wheat Diseases Using SVM Multiclass . . . . . . . . . . . 257 Ahmed Reda, Essam Fakharany, and Maryam Hazman Coronary Artery Vessel Tree Enhancement in Three-Dimensional Computed Tomography Angiography . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 Marwa Shams, Safwat Hamad, Mohammed A.M. Salem, and Howida A. Shedeed Understanding Medical Text Related to Breast Cancer: A Review . . . . . 280 Noha Ali, Eslam Amer, and Hala Zayed Intelligent Algorithms for Optimal Selection of Virtual Machine in Cloud Environment, Towards Enhance Healthcare Services . . . . . . . . 289 Ahmed Abdelaziz, Mohamed Elhoseny, Ahmed S. Salama, A.M. Riad, and Aboul Ella Hassanien Gesture Recognition for Improved User Experience in Augmented Biology Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 Gehad Hassan and Nashwa Abdelbaki Parameter Optimization of Support Vector Machine Using Dragonfly Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 Alaa Tharwat, Thomas Gabel, and Aboul Ella Hassanien Moth-flame Optimization Based Segmentation for MRI Liver Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320 Shereen Said, Abdalla Mostafa, Essam H. Houssein, Aboul Ella Hassanien, and Hesham Hefny Particle Swarm Optimization and K-Means Algorithm for Chromosomes Extraction from Metaphase Images . . . . . . . . . . . . . . 331 Gehad Ismail Sayed, Aboul Ella Hassanien, and M.I. Shaalan Diagnosing Heart Diseases Using Morphological and Dynamic Features of Electrocardiogram (ECG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342 Hadeer El-Saadawy, Manal Tantawi, Howida A. Shedeed, and M.F. Tolba Intelligence Language Processing A Bidirectional LSTM and Conditional Random Fields Approach to Medical Named Entity Recognition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 Kai Xu, Zhanfan Zhou, Tianyong Hao, and Wenyin Liu

xvi

Contents

Discover Trending Topics of Interest to Governments . . . . . . . . . . . . . . . 366 Moutaz Wajih Hamadeh and Sherief Abdallah I2Evaluator: An Aesthetic Metric-Tool for Evaluating the Usability of Adaptive User Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374 Neila Chettaoui and Med Salim Bouhlel FCSR - Fuzzy Continuous Speech Recognition Approach for Identifying Laryngeal Pathologies Using New Weighted Spectrum Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384 Rania M. Ghoniem and Khaled Shaalan Analyzing the Arab Gulf Newspapers Using Text Mining Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396 Said A. Salloum, Mostafa Al-Emran, Sherief Abdallah, and Khaled Shaalan Dataset Built for Arabic Sentiment Analysis . . . . . . . . . . . . . . . . . . . . . . . 406 Ayesha Jumaa Salem Al Mukhaiti, Sanjeera Siddiqui, and Khaled Shaalan Evaluating Arabic Parser and Recommending Improvements . . . . . . . . 417 Khaled Ezzeldin, Sanjeera Siddiqui, and Khaled Shaalan Manipulating Sentiment Analysis Challenges in Morphological Rich Languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429 Sara Sabih, Ahmed Sallam, and Gh. S. El-Taweel Crowdsourcing Speech and Language Data for Resource-Poor Languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440 Hamdy Mubarak Performance Analysis for Sentiment Techniques Evaluation Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448 Doaa Mohey El-Din Mohamed and Mohamed Hamed Nasr El-din Automatic Arabic Ontology Construction Framework: An Insectivore’s Animal Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458 Dalia Fadl, Safia Abbas, and Mostafa Aref Twitter Sentiment Analysis for Arabic Tweets . . . . . . . . . . . . . . . . . . . . . 467 Sherihan Abuelenin, Samir Elmougy, and Eman Naguib Use of Arabic Sentiment Analysis for Mobile Applications’ Requirements Evolution: Trends and Challenges . . . . . . . . . . . . . . . . . . . 477 Rabab E. Saudy, Eman S. Nasr, Alaa El Din M. El-Ghazaly, and Mervat H. Gheith A New Model for Detecting Similarity in Arabic Documents . . . . . . . . . 488 Mahmoud Zaher, Abdulaziz Shehab, Mohamed Elhoseny, and Lobna Osman

Contents

xvii

Enhancing Semantic Arabic Information Retrieval via Arabic Wikipedia Assisted Search Expansion Layer . . . . . . . . . . . . . . . . . . . . . . 500 Eslam Amer, Heba M. Khalil, and Tarek. El-Shistawy Development of an Arabic Questions Answering App for Android Smartphones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511 Mazen Juma, Azza Abdel Monem, and Khaled Shaalan Intelligent Systems and Applications A Generic Optimization Solution for Hybrid Energy Systems Based on Agent Coordination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527 Djamel Saba, Brahim Berbaoui, Houssem Eddine Degha, and Fatima Zohra Laallam A New Hybrid Approach Using Genetic Algorithm and Q-learning for QoS-aware Web Service Composition . . . . . . . . . . . . . . . . . . . . . . . . . 537 Doaa H. Elsayed, Eman S. Nasr, Alaa El Din M. El Ghazali, and Mervat H. Gheith A Study of the Effect of Agile Approaches on Software Metrics Using Self-Organizing Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547 Doaa M. Shawky and Salwa K. Abd-El-Hafiz A Text Mining Based Literature Analysis for Learning Theories and Computer Science Education . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560 Rania Hodhod and Hillary Fleenor Cardinality Estimation Algorithm in Large-Scale Anonymous Wireless Sensor Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569 Ahmed Douik, Salah A. Aly, Tareq Y. Al-Naffouri, and Mohamed-Slim Alouini Bio-inspired Load Balancing Algorithm in Cloud Computing . . . . . . . . . 579 Marwa Gamal, Rawya Rizk, Hani Mahdi, and Basem Elhady Cascade Multimodal Biometric System Using Fingerprint and Iris Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590 Mohamed Elhoseny, Ehab Essa, Ahmed Elkhateb, Aboul Ella Hassanien, and Ahmed Hamad Colored Petri Net Model for Blocking Misleading Information Propagation in Online Social Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . 600 Mohamed Torky, Ali Meligy, Hani Ibrahim, and Aboul Ella Hassanein DeBruijn Cellular Automata: A Dynamic Machine Model Based on deBruijn Graph Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610 Mohamed Torky and Aboul Ella Hassanein

xviii

Contents

Energy Aware Mobile Cloud Computing Algorithm for Android Smartphones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621 Samar A. Said, Sameh A. Salem, and Samir G. Sayed Human Arm-Leg Smart Gesture-Based Control in Human Computer Interaction Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632 Sahar Magdy, Sherin Youssef, and Cherine Fathy Improving Multiple Routing in Mobile Ad Hoc Networks Using Fuzzy Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642 Hamdy A.M. Sayedahmed, Imane M.A. Fahmy, and Hesham A. Hefny Neural-Network Based Functional Evaluation on Thermograms of Wireless Circuits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 655 Wael Sultan, Nihal Yassin, and M. Hesham Farouk Optimizing Deep Learning Based on Deep Auto Encoder and Genetic Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663 Sherihan Abuelenin, Samir Elmougy, and Fadya Habeeb Performance Enhancement of Satellite Image Classification Using a Convolutional Neural Network . . . . . . . . . . . . . . . . . . . . . . . . . . . 673 Noureldin Laban, Bassam Abdellatif, Hala M. Ebied, Howida A. Shedeed, and Mohamed F. Tolba Semi-supervised Approach to Soft Sensor Modeling for Fault Detection in Industrial Systems with Multiple Operation Modes. . . . . . . 683 Shun Takeuchi, Takuya Nishino, Takahiro Saito, and Isamu Watanabe Semi-supervised Image Clustering Using Active Affinity Propagation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 694 Sarah Habashi, Mohamed A. Ismail, and Magdy Nagi Spatiotemporal Reasoning for Complex Video Event Recognition in Content-Based Video Retrieval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 704 Leslie F. Sikos Trust and Bio-Inspired-Based Clustering Techniques in Wireless Sensor Networks: A Survey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 714 Sarah Abdelwahab, Tarek Gaber, and Mohamed Wahed Maximizing Lifetime of Wireless Sensor Networks Based on Whale Optimization Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 724 Mohammed M. Ahmed, Essam H. Houssein, Aboul Ella Hassanien, Ayman Taha, and Ehab Hassanien Evaluating Learners’ Progress in Smart Learning Environment . . . . . . 734 Hisham Elhoseny, Mohamed Elhoseny, Samir Abdelrazek, and A.M. Riad

Contents

xix

Predicting Algae Growth in the Nile River Using Meta-learning Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745 Hend Serry, Aboul Ella Hassanien, Sabry Zaghlou, and Hesham Ahmed Hefny Forming System Requirements for Software Development Using Semantic Technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755 Passent M. ElKafrawy and Mohamed S. Khalaf Internet of Things and Big Data Analytics Dogs Animal Recognition System in IoT Environment Based on Orthogonal Statistical Adapted Local Binary Pattern . . . . . . . . . . . . . 767 Abdallah A. Mohamed, Hani M. Ibrahem, Walid A. Dabour, and Aboul Ella Hassanien Arabian Horse Identification System Based on Live Captured Muzzle Print Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 778 Ayat Taha, Ashraf Darwish, and Aboul Ella Hassanien A Comparative Study of Trust Mapping Functions in Mobile Phone Participatory Sensing Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 788 Hayam Mousa, Osama Younes, and Mohiy Hadhoud Utilizing the Internet of Things (IoT) Technologies in the Implementation of Industry 4.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 798 Labib M. Zawra, Hala A. Mansour, Adly T. Eldin, and Nagy W. Messiha Vehicle to Vehicle Implementation in Developing Countries . . . . . . . . . . 809 Ahmed Yasser, Mohamed Elzorkany, and Neamat Abdel Kader Quantified Self Using IoT Wearable Devices . . . . . . . . . . . . . . . . . . . . . . 820 Abdulaziz Shehab, Ahmed Ismail, Lobna Osman, Mohamed Elhoseny, and I.M. El-Henawy Secret Image Sharing Based on Elementary Cellular Automata . . . . . . . 832 Mervat Ahmed and Osama S. Younes Smart Aquaponics System for Industrial Internet of Things (IIoT) . . . . 844 Mohanad Odema, Ihab Adly, Ayman Wahba, and Hani Ragai A Survey on Smart Cities’ IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 855 Ahmed Samy Nassar, Ahmed Hossam Montasser, and Nashwa Abdelbaki Software Watermarking for Java Program Based on Method Name Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 865 Jianping Chen, Kui Li, Wanzhi Wen, Weixu Chen, and Chenxue Yan

xx

Contents

Novel Design Based Internet of Things to Counter Lone Wolf, Part-A: Nice Attack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 875 Hassan F. Morsi, M.I. Youssef, and G.F. Sultan Enhancing Indoor Localization Using IoT Techniques. . . . . . . . . . . . . . . 885 Mohamed Nabil, M.B. Abdelhalim, and Ashraf AbdelRaouf A Review of Wireless Sensor Applications in Remote Sensing and Space Industry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 895 Mohammed E. El-Telbany and Maha A. Maged A Hadoop Extension for Analysing Spatiotemporally Referenced Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 905 Mohamed S. Bakli, Mahmoud A. Sakr, and Taysir Hassan A. Soliman Author Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 915

Intelligent Control Systems and Robotics

BP-MPSO Algorithm for PUMA Robot Vacumn Path Planning SU Qinghua1,2(&) and Li Juntao1,2 1

2

School of Information, Beijing Wuzi University, Beijing, China [email protected], [email protected] Beijing Intelligent Logistics System Collaborative Innovation Center, Beijing Wuzi University, Beijing 101149, China

Abstract. Path planning of robots is the key problem, and steering to achieve the goal is important for the PUMA robot. In this paper, we present the BP-MPSO algorithm for PUMA robot vacuum path planning that can well enhance the efficiency robot execution. Firstly, according to PUMA robot’s mechanical structure, the BP algorithm condition modeling and an attitude modeling were presented. Secondly, for the traditional particle swarm optimization (PSO) limitation in searching space and easily running into local optimal points, the re-initialization mechanism using the global information feedback to modified particle swarm optimization (MPSO) algorithm was introduced. Finally, the BP-MPSO algorithm is combined with BP network algorithm and the MPSO algorithm, which can not only avoids the difficulty in solving the inverse motion equations but also ensures that the optimal solution and can obtains the global optimal aim instead of falling into local extremer. Keywords: BP algorithm  MPSO algorithm  Path planning  PUMA robot Target modeling



1 Introduction Path planning has become a central problem in motion planning. Path planning of a robot can be considered as a sequence of translation and rotation from starting position to the destination while avoiding obstacles in its working environment. The classic version of the problem aims to find an obstacle-free path for a given workspace containing a set of obstacles and two sources and destination points. The PUMA robot is a serial 6 degree of freedom(DOF) robots and its cells are ubiquitous within many manufacturing system domains, and are used for fabrication, assembly, packaging, and so forth [1, 2]. So, during the whole planning process, it is necessary to pursue the smallest orientation error, the best system stability, and the minimum total energy consumption etc. Currently, many methods were developed to resolve this problem such as fuzzy logic algorithm [3], ant colony algorithm [4],and genetic algorithm [5] which we will use to solve our problem The problem is that every algorithm has own advantage and disadvantage in different aspect, for example, the multi-objective optimization, the capability of global and complexity etc.

© Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_1

4

S. Qinghua and L. Juntao

Recently, to avoid the difficulty in solving the inverse motion equations during the robot vacuum path planning and to enhance the capability of global and multi-objective optimization, many methods have proposed robot path planning problems using different classical techniques [6], neural network [7], artificial immune system [8], and heuristic optimization algorithms [9]. But high time complexity in large problem spaces and trapping in local optimum are drawbacks for classic techniques and in many meta-heuristic algorithms. These drawbacks cause the classical techniques and inefficient in the various problem spaces. To improve the efficiency of classical methods, many evolutionary algorithms such as Particle swarm optimization (PSO) [10] is used in robot path planning problem. Based on the global information feedback, the paper adopts a method combining the improved particle swarm optimization (PSO) on the basis of re-initialization mechanism algorithm with the BP neural network algorithm to study the question about optimization for the robot vacuum path.

2 PUMA Robot Kinematics and BP Circumstance Model 2.1

PUMA Robot Kinematics

The PUMA robot has a series of rigid links joined by six revolute joints, all of the six revolute joints can rotate (Fig. 1) [1, 2]. The location of any of the joints is usually relative to a neighboring joint. Linking of successive joints is described by 4  4 homogeneous transformation matrices containing the PUMA robot manipulator’s orientation and position. The manipulator’s degree of freedom (DOF) is set by the number of transformation matrices; multiplying the matrices gives the manipulator’s final position and orientation [11]. So, the PUMA robot of kinematics is through the 4  4 matrix, which is based on the method of D-H, and the D-H reference of PUMA robot such as Table 1. The matrix A of the PUMA robot can gain rotation the variables of joint are presented by Eq. (1). T ¼ A1 A2 A3 A4 A5 A6

ð1Þ

Table 1. D-H reference of PUMA robot Revolute joint i 1 2 3 4 5 6

Joint angle hi (°) h1 h2 h3 h4 h5 h6

Torsion angle ai1 (°) −90 0 90 −90 90 0

Length of connecting rod ai1 (mm) 0 ai 0 0 0 0

Connecting rod offset di (mm) 0 d2 0 d4 0 d6

Range of motion (°) −180 * +180 −125 * +125 −138 * +138 −270 * +270 −133.5 * +120 −270 * +270

BP-MPSO Algorithm for PUMA Robot Vacumn Path Planning

2

ci 6 si Ai ¼ 6 40 0

si ki c i ki li 0

si li ci ki ki 0

3 ai c i ai s i 7 7 di 5 1

5

ð2Þ

Matrix A1 is used to denote the position and posture of the first joint to fundamental series, A2 is the second joint’s position and posture towards the first one. Then, the second joint’s position and posture is described by T2 ¼ A1 A2 . Similarly, T3 ¼ A1 A2 A3 , for 6 joint manipulator, the matrix Ti ði [ 1Þ of the end as Eq. (3). T2 ¼ A1 A2 T3 ¼ A1 A2 A3 T4 ¼ A1 A2 A3 A4 T5 ¼ A1 A2 A3 A4 A5

ð3Þ

T = T6 ¼ A1 A2 A3 A4 A5 A6 For saving the space, therein all of the elements in TðT6 Þ is repressed as follow (Eq. 4).

2

nx 6n 6 y T ¼ T6 ¼ 6 4 nz 0

ox oy

ax ay

oz 0

az 0

8 nx ¼ c1 ½c23 ðc4 c5 c6  s4 s6 Þ  s23 s5 c6  þ s1 ðs4 c5 c6 þ c4 s6 Þ > > > > > n ¼ s1 ½c23 ðc4 c5 c6  s4 s6 Þ  s23 s5 c6  þ c1 ðs4 c5 c6 þ c4 s6 Þ > > > y > > n ¼ s23 ðc4 c5 c6  s4 s6 Þ  c23 s5 c6 > > > z > > > o ¼ c1 ½c23 ðc4 c5 s6  s4 c6 Þ þ s23 s5 s6  þ s1 ðc4 s6  s4 c5 s6 Þ > > x > 3 > > px o ¼ s1 ½c23 ðc4 c5 s6  s4 c6 Þ þ s23 s5 s6  þ c1 ðc4 s6  s4 c5 s6 Þ > > y > < o ¼ s ðc c s  s c Þ þ c s s py 7 z 23 4 5 6 4 6 23 5 6 7 7; Thereinto > ax ¼ c1 ðc23 c4 s5 þ s23 c5 Þ  c1 s4 s5 pz 5 > > > > > ay ¼ s1 ðc23 c4 s5 þ s23 c5 Þ þ c1 s4 s5 1 > > > > > > az ¼ s23 c4 s5  c23 c5 > > > > > px ¼ c1 ½a2 c2 þ a3 c23  d4 s23   d2 s1 > > > > > py ¼ s1 ½a2 c2 þ a3 c23  d4 s23   d2 c1 > > : pz ¼ a3 s23  a2 s2  d4 c23

ð4Þ There, ci is cos hi , si is sin hi , ki ¼ cosai , li ¼ sinai , cij is cosðhi þ hj Þ ¼ ci cj  si sj , sij is sinðhi þ hj Þ ¼ ci sj þ si cj . Through Eqs. (1) * (4), the joint angle increment of PUMA-type robot can be transferred into vacuum position and posture information of every joint. Then the vacuum path planning can be very easy when the information about coordinate distributing of barrier in space has known. 2.2

BP Circumstance Model

A BP model is built (Fig. 2) according to the principle of manual network for estimating the collided quality between path and barriers. There are four layers about the

6

S. Qinghua and L. Juntao

Fig. 1. Figure of PUMA robot structure

Fig. 2. BP model of PUMA robot condition information

BP network model which includes; input layer, two hidden layers and the output layer. The neurons nodes excitation function of hidden layers and output the layer is S-function. The ðxi ; yi ; zi Þ expresses a point position coordinate that indicates three coordinate components of a barrier point in the three-dimensional space. Dhi (i ¼ 1; 2; 3; 4; 5; 6Þ indicates the angle increment of joint stance or responding to each Pðxi ; yi ; zi Þ in the first hidden layer, and the first i time of the vacuum path planning, the min and max angle increment of No. j joint in the second hidden layer are denoted Dhjim , Dhjin . The connections between input and output are showed in Eq. (5) which of references is showed in Table 2. 8 Ci ¼ f ðTi Þ > > > M P > > > T ¼ OMm þ hT i > > < m¼1 OMm ¼ f ðIMm Þ > 6 > P > > IMm ¼ whijm Dhij þ hMm > > > j¼1 > : Dhij ¼ Fðxi ; yi ; zi Þ þ D-

ð5Þ

So, the output data of random point coordinate in the whole work space is 1 or 0, the robot doesn’t hit barrier while Ci ¼0.

BP-MPSO Algorithm for PUMA Robot Vacumn Path Planning

7

Table 2. References of the connections between input and output Reference sign hMm

hT Ci Ti OMm IMm whijm D-

Reference explanation The note threshold of the second hidden layer, and The circle’s number in output layer adopt the minus data which is the number of inequality subtract 0.5 The top layer note threshold The top layer note output The top layer note input The second hidden layer output The second hidden layer input The coefficient which confined by inequality The note threshold of the first hidden layer, the joint coefficient of hidden layer and top layer is 1

3 BP-MPSO Path Planning Algorithm 3.1

Path Optimization Function

Recently, The path optimization is important for path planning, which often was solved through to seek a target function limit [12]. Considering control precision of the 0 0 0 veracity, we assumed that the robot fingertip arrived point position is Mðx ; y ; z Þ, the robot fingertip would finally arrived point position is the point Gðx0 ; y0 ; z0 Þ, the connection a random point between the robot fingertip arrived point position and the robot fingertip would finally arrived point position is Pðx; y; zÞ. Base on min-error principles, each joint corner variety modeling function as Eq. (6) in the vacuum. 0

0



0

minDr ¼ ðx  x0 Þ2 þ ðy  y0 Þ2 þ ðz  z0 Þ2 ; st : 0

0

Dhi 2 ½hmin ; hmax  0 0 0 ðx ; y ; z Þ ¼ f ðDhi Þ

ð6Þ

0

Therein, Dr expresses errors about Mðx ; y ; z Þ and Gðx0 ; y0 ; z0 Þ, ½hmin ; hmax  is 0 0 0 bound of the angle of Dhi , ðx ; y ; z Þ ¼ f ðDhi Þ is the connection between a random point Pðx; y; zÞ in the vacuum and each joint corner variety. A Energy function was established to optimize the consumption of energy in during of path planning. The energy function E which is composed with the length function El and the collision punishment function Ec as Eq. (7). El ¼

6 X N 1 X

l2i ¼

i¼1 j¼1

Ec ¼

N X K X

6 X N 1 X

½ðxi þ 1;j þ 1  xi;j Þ2 þ ðyi þ 1;j þ 1  yi;j Þ2 þ ðzi þ 1;j þ 1  zi;j Þ2 

i¼1 j¼1

Cik

i¼1 k¼1

minE ¼ lER þ ð1  lÞEc ð7Þ

8

S. Qinghua and L. Juntao

Therein, the total square sum length of all the vacuum path express El , the total sum of energy which is collision punishment function in all of the path notes expresses Ec , the times of path planning express a N, the number of elements express a K, the collision punishment function express a Cik , and the l is a coefficient. Consideration of the smoothness and consistency in the PUMA robot path planning process [13], adopting Dhði;jÞ;ði þ 1;j þ 1Þ denotes the angle of each two joints, and the least angle of each two joints function can be built as Eq. (8). minh ¼

6 X N1 X

Dhði;jÞ;ði þ 1;j þ 1Þ

ð8Þ

i¼1 j¼1

The point can been satisfied the least principle, through calculating the Eqs. (6) * (8) 3 P for seeking. Then according to infection for path planning, The fi ; fi ¼ 1 can be picked i¼1

(in the paper f1 ¼ 0:4; f2 ¼ 0:3; f3 ¼ 0:3), and the optimization model can be expressed as Eq. (9). J ¼ Minðf1 Dr þ f2 E þ f3 hÞ

ð9Þ

Because the PUMA robot only incepts the joint angle increment, then the last optimization strategy is to consider control vector P ¼ D H ¼ ðDh1 ; Dh2 ; Dh3 ; Dh4 ; Dh5 ; Dh6 Þ and make the function j is least. There are five complex equations, so if we use contradictorily method to seek the best point according to this equation, it would be not only waste much time but also get low precision, and this paper proposes a new MPSO algorithm to solve the problem. 3.2

The MPSO Principles

The PSO algorithm is an evolution algorithm, and it is difficult to escape from the local extremism while single particle is restricted by local extremum [10]. In this section, the method of resolving the stagnation problem is introduced. Firstly, the re-initialization mechanism which is based on the global information feedback to improve particle swarm optimization (MPSO) algorithm. The function f is a real function, S 2 RD , xi ¼ ðxi1 ; xi2 ;    xiD ÞT is the position of particle No:i, mi ¼ ðmi1 ; mi2 ;    ; miD ÞT denotes speed, f ðxi Þ is nonce accommodation, the max accommodation which particle had arrived expresses Pbesti , here, the particle dynamic extension is i ¼ 1; 2;    ; N, X max ¼ ðX1max ; X2max ;    XDmax ÞT , V max ¼ ðV1max ; V2max ;    ; VDmax ÞT is the most fly speed. Secondly, assuming the full most accommodation of No:g era particle Fgmax ¼ maxðpbestg1 ; pbestg2 ;    pbestgN Þ, individual most accommodation Fgaverage ¼ N P 1 max pbestgi . If Fgmax or Fgaverage excel Fgaverage , it means that swarm of þ1 þ 1 excel Fg N i¼1

particle is evolving, on the contrary, if the individual average most accommodation Fgaverage isn’t ameliorated G1 era or the full most accommodation Fgmax isn’t ameliorated

BP-MPSO Algorithm for PUMA Robot Vacumn Path Planning

9

G2 era(G2 [ G1 ), this is said swarm of particle has been stopped and must do re-initialization for part or full particle. Finally, using m denotes the initialized time, A is the particle serial number concourse, j Aj is the number of the element in A, adopting Weighted center of gravity Eq. (10) to calculate the gravity position of the particle and near ones. P

xk f ðxk Þ k2A Gc ¼ P f ðxk Þ

ð10Þ

k2A

Initializing the particle is random according to the gravity position, and the dynamic extension is introduced in Eq. (10), here, mmax  1 and according to X max choose a small normal number. 3.3

The BP-MPSO Path Planning Algorithm Processing

The BP-MPSO path planning algorithm process as follow: Firstly, initialize a group particulate (size m ¼ 40), include random position and speed. The No:i particle is defined as Dhi ¼ ðDh1i ; Dh2i ; Dh3i ; Dh4i ; Dh5i ; Dh6i ÞT , use mi ¼ ðm1i ; m2i ;    ; m6i ÞT , f ðxi Þ and Pbesti to denotes it’s speed, current fitness value, best position at which had arrived Gbesti is the best position at which all of the particle had arrived. Secondly, estimate fitness of each particle. Use evaluating function J ¼ Minðf1 Dd þ f2 E þ f3 hÞ as fitness of each particle. It is partly restricted by the same local extremum, and return to the re-initialization mechanism process. Thirdly, compare the fitness with Pbesti , and choose the better Pbesti for each particle while it is good. Fourthly, compare the fitness with Gbesti , and reset the index number of better Gbesti for each particle while it is good. Fifthly, calculate the speed and position of the change particle, using to Eq. (11). tid ¼ wti1;d þ c1 r1 ðpbestid  Dhid Þ þ c2 r2 ðgbestid  Dhid Þ Dhi;d ¼ Dhi1;d þ tid wmax  wmin w ¼ wmax   iter imax

ð11Þ

There, r1 ; r2 are random data, the scope is 0 * l. c1 ; c2 are study gene, here c1 ¼ c2 ¼ 2, wmax ; wmin stand for the first and the last weightiness respectively, imax is the maximum number of iterations, iter is the current number of iterations, here wmax ¼ 0:92; wmin ¼ 0:41. Finally, suppose the maximum evolution era Gmax ¼ 900, if it isn’t satisfied condition, return to step (2).

10

S. Qinghua and L. Juntao

4 Simulation According to Fig. 1, the simplified schematic structure of PUMA robot is showed in Fig. 3, parameters listed as Table 1. Dhi of each increment would only choose from the set {−2, −1.9, −1.8,…, 1.8, 1.9, 2}. Those are 41 discrete values which precision is 0.1°, and absolute value is no more than 2°. In simulation processing, we use seven pieces of beeline instead of seven rod of the PUMA robot, Connecting rod connected between the revolute joints, AB = 135 mm,BC = 250 mm,CD = 250 mm,DE = 60 mm. We assume that the PUMA robot’s arm from the initial position to avoid obstructions which is in the path space (there are 2 obstacles, one is a triangular which height is lower than AB (Fig. 4b), the other obstacle is a rectangular which height is higher than AB (Fig. 4b), and then robot’s arm moves to the tool chest position which is point (145, 85, 120), to fetch the tool chest. From Fig. 3 and Table 1, we can know that there are 2 cases such as Fig. 4. Figure 4a shows that PUMA robot’s arm reached the aim point around the obstacle; Fig. 4b shows that PUMA robot’s arm reached the aim point from top of the obstacle. In order to verify the effectiveness of the algorithm, we assume that the PUMA robot’s arm from the initial position to avoid obstructions which is in the path space, then move to the tool chest position which is point (145, 85,120), to fetch the tool chest. The same as the front, there are 2 cases as Fig. 4 too. Figure 4a shows that PUMA robot’s arm reached the aim point around the obstacle; Fig. 4b shows that PUMA robot’s arm reached the aim point from top of the obstacle. Simulating BP-MPSO vacuum path planning algorithm on PUMA robot, in this paper, we choose the position of staff AB as the first coordinate origin, the first group size is 40, evolutionary generation is 900, run 50 times randomly, later figure out the curve between target function and evolutionary generation are listed in Fig. 5. From the Fig. 5, The result is clear that the BP-MPSO method is best in the three methods. Comparing with GA method, the BP-MPSO algorithm can be resolved optimize the problems, the precision is higher and time consumption is lower. The evolutionary generation decreased much a lot contrary to the traditional PSO method.

C G B

A

D

H F

E

Fig. 3. Sketch of PUMA robot simplified constructs

Fig. 4. Sketch map among vacuum Path optimizing

The optimal value of the objective function J / m

BP-MPSO Algorithm for PUMA Robot Vacumn Path Planning

11

Comparison of various path optimization algorithm for PUMA robot 21

Optimized by MPSO algorithm Optimized by standard MPSO algorithm Optimized by standard GA algorithm

20.5 20 19.5 19 18.5 18 17.5 17 16.5 16 15.5 15 14.5 14 13.5 13

0

5

10

15

20

25

30

35

40

45

50

55

60

65

Evolution generations / n

Fig. 5. Curve between generation and target function

This algorithm has some innovations: (1) adopting artificial neural network BP algorithm to analyze the PUMA Robot path planning, and built the environmental model; (2) through the PUMA robot Kinematics matrix, getting the optimization target function, then proposed a global information-based feedback to improve particle swarm algorithm, and then solved the problem of PUMA robot path planning. Experimental results show that the hybrid algorithm can not only avoids the long-time operation, but also ensure the optimal solution does not fall into local minimum solution and obtain the global optimal solution, which effectively overcome shortcomings of the traditional particle swarm optimization (PSO) algorithm. And significantly increase the efficiency of PUMA robot path optimization in vacuum.

5 Conclusion This paper presented hybrid algorithm that combined the back-propagation (BP) neural networks with a modified particle swarm optimization (MPSO) algorithm for PUMA robot vacuum path planning to enhance the efficiency of the robot execution. This hybrid (BP-MPSO) algorithm can not only avoids the difficulty in solving the inverse motion equations but also ensures that the optimal solution and can obtains the global optimal aim instead of falling into local extremer. Acknowledgment. This work was supported by Beijing Intelligent Logistics System Collaborative Innovation Center and Young foundation of Beijing Wuzi University.

12

S. Qinghua and L. Juntao

References 1. Aggarval, L., Aggarwal, K., Urbanic, R.J.: Use of artificial neural networks for the development of an inverse kinematic solution and visual identification of singularity zone(s). Procedia CIRP 17, 812–817 (2014) 2. Santos, C., Ferreira, M.: Timed trajectory generation using dynamical systems: Application to a Puma arm. Rob. Auton. Syst. 57(2), 182–193 (2009) 3. Porta Garcia, M.A., Montiel, O., Castilo, O., et al.: Path planning for automomous mobile robot navigation with ant colony optimization and fuzzy cost function evaluation. Appl. Soft Comput. 9, 1102–1110 (2009) 4. Tuncer, A., Yildirim, M.: Dynamic psth planning of mobile robots with improved genetic algorithm. Comput. Electr. Eng. 38, 1564–1572 (2012) 5. Baghli, F.Z., El bakkali, L., Lakhal, Y.: Optimization of arm manipulator trajectory planning in the presence of obstacles by ant colony algorithm. Procedia Eng. 181, 560–567 (2017) 6. Li, C., Bodkin, B., Lancaster, J.: Programming Khepera II robot for autonomous navigation and exploration using the hybrid architecture. In: Proceedings of 47th Annual South East Regional Conference, p. 31. ACM (2009) 7. Das, P.K., Behera, H.S., Jena, P.K., et al.: Multi-robot path planning in a dynamic environment using improved gravitational search algorithm. J. Electr. Syst. Inf. Technol. 3, 295–313 (2016) 8. Das, P.K., Pradhan, S.K., Patro, S.N., et al.: Artificial immune system based path planning of mobile robot. Soft Comput. Tch. Vis. Sci. 395, 195–207 (2012) 9. Das, S., Mukhopadhyay, A., Roy, A., et al.: Exploratory power of the harmony search algorithm analysis and improvements for global numerical optimization. IEEE Trans. Syst. Man Cybern. 41(1), 89–106 (2011) 10. Zhang, Y., Gong, D., Zhang, J.: Robot path planning in uncertain environment using multi-objective particle swarm optimization. Neurocomputing 103, 172–185 (2013) 11. IZadbakhsh, A.: Closed-form dynamic model of PUMA 560 robot arm. In: IEEE Proceedings of the 4th International Conference on Autonomous Robots and Agents, pp. 675–680 (2009) 12. Xie, X., Zhang, W., Yang, Z.: Overview of particle swarm optimization. Control Decis. 3(2), 131–132 (2003) 13. Inkollu, S.S., Kota, V.R.: Optimal setting of FACTS devices for voltage stability improvement using PSO adaptive GSA hybrid algorithm. Eng. Sci. Technol. 19(3), 1166– 1176 (2016)

Modeling and Performance Analysis of Planar Parallel Manipulators Amr Abo Salem(B) , Tarek Y. Khedr, Gamal El Ghazaly, and M.I. Mahmoud Department of Industrial Electronics and Control Engineering, Faculty of Electronic Engineering at Menouf, Menofia University, Menouf, Egypt [email protected], [email protected], [email protected], m i [email protected]

Abstract. Recently, the Parallel Manipulators (PMs) attract the attention of the researchers. This research work is concerned with the Planar Parallel Manipulators (PPMs). An investigation led to a comparative study between the 2-RRR PPM and 3-RRR PPM. The 2-RRR non redundant PPM and 3-RRR redundant PPM, with 2-degree-of freedom, are considered. These two PPMs are introduced with their mechanism construction. The workspace, different properties and performance indices are carried out. Investigation of characteristics of these manipulators should go through the complexity of the direct and inverse kinematics problems, which are solved using the suggested and proper geometrical equations. The dexterous workspace is geometrically obtained where the End-Effector (EE) can reach and illustrate some of its properties. The Jacobian matrix for these manipulators is essential method to complete this analysis. This work is terminated by two characteristic maps of these two manipulators, which are dexterity and manipulability indices that were covering the workspace. Keywords: Planar Parallel Manipulator (PPM) · End-Effector (EE) · Redundant and non-redundant · Direct Geometric Model (DGM) · Inverse Geometric Model (IGM) · Degree of Freedom (DOF) · Workspace · Jacobians matrix · Dexterity Index (DI) · Manipulability index (MI)

1

Introduction

Parallel Manipulator (PM) can be defined as a closed loop mechanism composed of an end-effector (EE) and a fixed base linked together by at least two independent kinematic chains. A serial manipulator referred as an open-loop manipulator because its one end connected to ground and other end is free to move in space. Significance of parallel manipulator over serial manipulator is its higher payload-to-weight ratio, high accuracy, high structural rigidity and low inertia of moving parts. Because the external loads can be shared by the actuators, parallel manipulators tend to have a large load-carrying capacity. On the other hand, c Springer International Publishing AG 2018  A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3 2

14

A.A. Salem et al.

they suffer from relatively small workspaces, complex kinematics and highly singular workspaces. It is considered that PM have a great importance in many industrial and medical applications rather than in flight simulations [1]. This importance came from its design such as the length of the links, types of the joints, position of the actuators, the workspace, velocity and acceleration of the end-effector, ... etc. There are a lot of approaches applied to the PM, that lead to a good performance [2–4]. According to the types of joints, which are Revloute (R) and Prismatic (P), there are seven different types of configuration for a single arm which can be classified as RPP, RRP, RRR, RPR, PRR, PRP and PPR and they are reported in [5]. These configurations produce a lot of PPM such as 3-RRR. Researchers have focused their works for spatial parallel manipulators but usage of such planar configurations may not be neglected. The majority of studies on PM [6,7], unlike serial manipulators, however, the redundancy can be divided into actuation redundancy and kinematic redundancy. Actuation redundancy can be explained as replacing existing passive joints of a manipulator by active ones. Consequently, actuation redundancy does not change the mobility or force workspace of a manipulator but may cause singularity reduction [8]. Kinematic redundancy occurs when extra active joints and links are added to manipulators. Adding kinematic redundancy in parallel manipulators have many advantages such as avoiding most kinematic singularities, enlarging workspace, and also improving dexterity [9]. However, when a manipulator is kinematically redundant, the complexity of actuation schemes is greater since there is an infinite number of solutions for the inverse displacement problem, and therefore, an infinite choice of actuation schemes. There are many research that consider the control of redundant and non-redundant PM [11–16]. To study these types of manipulators, it is essential to fully investigate and analyze the inverse displacement and the workspace. PMs can give both multiple inverse kinematic solutions and multiple direct kinematic solutions. Various applications of such 3-RRR planar parallel configurations are pick and place operation over a plane surface, machining of plane surfaces and mobile base for a spatial manipulator. The main subject of this work is the comparison of 5-bar mechanism which can be written as 2-RRR PPM and three arm PPM which can be written as 3-RRR PPM. Understanding the operation of the PPM needs to have a deep theoretical background and simulation of the robots as it will be explained as the next explanation.

2 2.1

Parallel Manipulator’s Structure Review

Going through the mechanics motion of the closed loop mechanism, it is found that the 4-bar mechanism with only one actuator produces a definite motion with a definite trajectory, however, adding another link and another actuator to the 4-bar mechanism, a 2-RRR PPM is produced which generate a definite motion but with many trajectories. Adding another arm (2-link with one actuator) to the 2-RRR PPM, a 3-RRR PPM will be produced and the generated workspace

Modeling and Performance Analysis of Planar Parallel Manipulators

15

has been reduced to the half. However this disadvantage of the workspace, inside the workspace the 3-RRR PPM gives a high performance to do tasks and it will be shown in this work. 2-RRR Non-Redundant PPM

2.2

In Fig. 1 represents the configuration of 2-RRR PPM which is consisted of the two arms. Each arm is consisted of one active joint Ai where i = 1, 2 for arms 1, 2 respectively, one passive joint Bi , one active link ri , which connects the active joint Ai to the passive joint Bi and one passive link li , which connects the passive joint Bi to the EE.

Fig. 1. The 2-RRR PPM.

2.3

Fig. 2. The 3-RRR PPM.

3-RRR Redundant PPM

One can see that from the Fig. 2, the 3-RRR PPM mechanism is consisted of the 3 arms. Each arm is consisted of one active joint Ai where i = 1, 2, 3 for arms 1, 2, 3 respectively. One passive joint Bi , one active link ri - which connects the active joint Ai to the passive joint Bi . One passive link li - which connects the passive joint Bi to the EE. The three active joints Ai are located at the apex of an equilateral triangle, and the end of the three arms are connected together at point to produce the EE of our mechanism.

3

Kinematic Model

3.1 3.1.1

Forward Kinematic Model (FKM) 2-RRR Non-Redundant PPM

From Fig. 1, the independent equations of this system can be derived to describe the boundaries of the workspace. The two circular loci of EE are:

16

A.A. Salem et al.

(Cx − b1x )2 + (Cy − b1y )2 = l12 (Cx − b2x )2 + (Cy − b2y )2 = l22

(1) (2)

   Cx   G1 G2 = l22 − l12 − G3 Cy

(3)

 where:-

G1 = 2b1x − 2b2x G2 = 2b1y − 2b2y G3 = (b22x + b22y ) − (b21x + b21y )

3.1.2

3-RRR Redundant PPM

From Fig. 2, the three independent equations of this system can be derived to describe the boundaries of the workspace. The three circular loci of EE (point C) are: (Cx − b1x )2 + (Cy − b1y )2 = l12 (Cx − b2x )2 + (Cy − b2y )2 = l22

(4) (5)

(Cx − b3x )2 + (Cy − b3y )2 = l32

(6)

Subtracting Eq. (4) from Eq. (5) and Eq. (4) from Eq. (6), one can obtain that: G1 Cx + G2 Cy + G3 = l22 − l12 G4 Cx + G5 Cy + G6 =

l32



l12

(7) (8)

Rearranging Eqs. (7) and (8) as a matrix equation form: 

  −1  2  Cx G1 G2 l2 − l12 − G3 = Cy G4 G5 l32 − l12 − G6

where: G1 = 2b1x − 2b2x G2 = 2b1y − 2b2y G3 = (b22x + b22y ) − (b21x + b21y ) G4 = 2b1x − 2b3x G5 = 2b1y − 2b3y G6 = (b23x + b23y ) − (b21x + b21y )

(9)

Modeling and Performance Analysis of Planar Parallel Manipulators

17

For 3-RRR PPM with actuation on the first joint, the polynomial solution to the Direct Kinematics problem is obtained by setting [bix biy ]T = [aix + ri Cαi aiy + ri Sαi ]T where:Cαi = cos(αi ), Sαi = sin(αi ) 3.2

Inverse Kinematic Model (IKM)

In triangle A1 B1 C shown in Fig. 2, a relation between the angle α1 and the point C can be found, and using the Law of Cosines: (B1 C)2 = (A1 B1 )2 + (A1 C)2 − 2(A1 B1 )(A1 C) cos(α1 − θ1 ) the angle α1 can be obtained as follow:   (A1 B1 )2 + (A1 C)2 − (B1 C)2 α1 = arccos + θ1 2(A1 B1 )(A1 C)

(10)

and for θ1 we find that θ1 = arctan

Cy − a1y Cx − a1x

(11)

Notice that, A1 B1 = r1 , B1 C = l1 and it is easy to determine A1 C and it will be as follow: A1 C = (Cy − a1y )2 + (Cx − a1x )2 (12) The similar derivation can also be used for determining α2 and α3 .

4

Workspace Analysis

The workspace (WS)for the presented PPM is the area where the EE can move through. To determine this area, there are two constraints that create the circles around the active joint ai , the radius of first one is |ri + li | while the other is |ri − li |. Each circle centered at ai where i = 1, 2, 3 for 3-RRR PPM and i = 1, 2 for the 2-RRR PPM. The intersection of two circles construct the whole workspace for the 2-RRR PPM as shown in Fig. 3, however the interested area are the upper one as in Fig. 4. The intersection of three circles produce the workspace for the 3-RRR as shown in Fig. 5. For the 2-RRR PPM have a divided WS, upper and lower. The research in operating the 2RRR PPM shows that the operation can be done in one part and moving to the other one need a control trick and a mechanical combination to allow working in both area [10]. When comparing these figures, note that, Figs. 4 and 5 are double scale of Fig. 3.

18

A.A. Salem et al.

Fig. 3. WS for whole 2-RRR PPM

Fig. 4. WS for 2-RRR PPM

5

Fig. 5. WS for The 3-RRR PPM

Jacobian Matrix

Another types of research is the PM performance. An important question that arises in the process of designing robotic manipulators is the choice of optimization and performance criteria. In the context of kinematics, several concepts have been used as design guidelines. Some authors develop some definitions that help in optimization and improving the performance of PPM such as manipulability and dexterity indices within the workspace. Differentiating Eq. (9) with respect to time to generate a relationship between joint rates and EE velocities and with some mathematics, one can found: Jx x˙ = Jq q˙ where Jx = form:

∂f ∂x

and Jq =

∂f ∂q

(13)

Thus, the Jacobian equation can be written in the q˙ = J x˙

(14)

Modeling and Performance Analysis of Planar Parallel Manipulators

19

where J = Jq−1 Jx , if the manipulator is non-redundant, i.e., number of actuators ˙ In redundant mechanism, the number of is equal to DOF, then: x˙ = J −1 q. ˙ The vector loop of each actuators is greater than the DOF, therefore:x˙ = J + q. arm can be found as: Cx = xai + ri cos(αi ) + li cos(βi ) Cy = yai + ri sin(αi ) + li sin(βi )

(15) (16)

The manipulator’s jacobian matrix is presented, so, by differentiating Eqs.(15) and (16): C˙x = −ri sin(αi )(α˙i ) − li sin(βi )(β˙i ) C˙y = ri cos(αi )(α˙i ) + li cos(βi )(β˙i )

(17) (18)

Solving Eqs. (17) and (18) which can be done by multiplying Eq. (17) with cos(αi + βi ) and Eq. (18) with sin(αi + βi ), this will be as following: cos(βi )C˙x = −ri sin(αi ) cos(βi )(α˙i ) − li sin(βi ) cos(βi )(β˙i ) sin(βi )C˙y = ri cos(αi ) sin(βi )(α˙i ) + li sin(βi ) cos(βi )(β˙i ) and adding these two previous equations: cos(βi )C˙x + sin(βi )C˙y = −ri sin(αi ) cos(βi )(α˙i ) + ri cos(αi ) sin(βi )(α˙i )

(19)

using the trigonometry equations the final result will be: cos(βi )C˙x + sin(βi )C˙y = ri sin(βi − αi )α˙i

(20)

Then Eq. (20) is as the form of Eq. (13), and by expanding Eq. (20), the result for 3-RRR PPM is: ⎤ ⎡ cos(β1 ) sin(β1 ) Jx = ⎣cos(β2 ) sin(β2 )⎦ cos(β3 ) sin(β3 ) ⎤ ⎡ 0 0 r1 sin(β1 − α1 ) ⎦ 0 0 r2 sin(β2 − α2 ) Jq = ⎣ 0 0 r2 sin(β3 − α3 ) and for the 2-RRR PPM is:  Jx =

Jq =

 cos(β1 ) sin(β1 ) cos(β2 ) sin(β2 )

  r1 sin(β1 − α1 ) 0 0 r2 sin(β2 − α2 )

20

6

A.A. Salem et al.

Singularity Analysis

Considering Eq. 13, three types of singularities can be defined for parallel manipulators [17]: 1. Direct kinematic singularities when Jx is singular. 2. Inverse kinematic singularities when Jq is singular. 3. Combined (complex) singularities when Jx and Jq are singular. Direct singularities (i.e., |Jx | = 0) take place when there are some nonzero velocities of the end-effector that are possible with zero velocities at the actuators. Also, direct kinematic singularities are referred to as force uncertainties or as force unconstrained poses. On the other hand, inverse singularities (i.e., when|Jq | = 0) happen when there exist some nonzero actuator velocities that cause zero velocities for the end-effector.

7

Dexterity Index

Dexterity index (DI) is a measure of a manipulator to achieve different positions and orientations for each point within the workspace. DI shows the various properties of a manipulator. It illustrates the singularity points and also gives an indication for the nearest singular configuration. Therefore, the use of condition number is an indication of the amplification of the error on the position of EE. This number is to be kept as small as possible. The condition number can be found by Singular Value Decomposition SVD of the Jacobian matrix because our manipulator is redundant: J = U ΣV T

(21)

where J = Jq−1 Jx . The condition number is defined as the ratio of the largest singular value, σmax , to the smallest one, σmin and therefore, k = σmax /σmin which represents the amount of change in the EE for one unit of change of the actuators. Using the reciprocal of k -helps to be presentable- and called it η which is the dexterity index and it will change from 0 to 1. Trying to approach a condition number close to one helps the manipulator to have an accuracy close to the accuracy of the actuators and to maintain a good stiffness which are desirable characteristics. η = σmin /σmax Applying these previous equations for each point in the whole workspace, the DI map for 2-RRR PPM and 3-RRR PPM are shown in Figs. 6 and 7 respectively. From Fig. 6 for the 2-RRR PPM it is found that the maximum values of DI located at top left, where these points give a best dexterity performance for the 2-RRR PPM. The minimum values of DI are distributed at very large area in the workspace such as at the boundaries of the workspace and also between the active joints locations, which give a poor performance to the manipulator. In Fig. 7, it is obvious that the maximum DI values are located at the center of the workspace where a good performance has been occurred, however, the minimum values are located around the active joints location of

Modeling and Performance Analysis of Planar Parallel Manipulators

21

3-RRR PPM, which have a poor performance. It is found that from the figures below, the DI map for 2-RRR PPM is smaller and approach to zero at some points and others closed to one, but it is not symmetrical, however, for the 3-RRR PPM it found that the DI map is distributed symmetrically. Consequently, the 3RRR PPM have a good characteristics than the 2-RRR PPM. When comparing this DI values for 2-RRR PPM and 3-RRR PPM respectively, it is found that for example - the area surrounding by 0.4 contour is at the upper left side for 2RRR PPM and around the center for 3-RRR PPM. Over that, in 3-RRR PPM, this area is larger than in 2-RRR PPM which it is a very important advantage.

Fig. 6. DI for the 2-RRR PPM.

8

Fig. 7. DI for the 3-RRR PPM.

Manipulability Index

Another index that be used to show the performance for the manipulators is the Manipulability Index (MI). MI is the agility to perform a task in a specific workspace [18]. In [19], it is measured as the product of ellipsoid’s axes or to be specific is the product of the singular value of theJacobian Matrix : 

(22) μ = det(JJ T ) = λ1 λ2 .....λm = σ1 σ2 ....σm where λ1 , λ2 , ....., λm are the eigenvalues of JJ T and the σ1 , σ2 , ...., σm are the singular values of J. By applying the previous equations for each point in the whole workspace, the manipulability map for both 2-RRR PPM and 3-RRR PPM are shown in Figs. 8 and 9 respectively. It is found that for the 2-RRR that the maximum value of MI is about 0.35 and located at the top left of the workspace, however, in 3-RRR it is found that the values of MI is up to 0.8 and it is located at the center of the workspace. The manipulability gives that how is the closeness of the accuracy in the velocity between the end-effector and the joints.

22

A.A. Salem et al.

Fig. 8. MI for the 2-RRR PPM.

9

Fig. 9. MI for the 3-RRR PPM.

Conclusion

A comparison between 2-RRR PPM and 3-RRR PPM has been done through this research work. The mechanical structure and motion mechanics was investigated for these two PPMs. The workspace and its usability are studied. This is done by passing through the forward and inverse kinematics with the Jacobian matrix. Two performance indices are obtained for this two manipulators; dexterity and manipulability. The simulation work determines and indicates the parameters of these two manipulators. It is found that, the 3-RRR PPM has performance indices better than that of 2-RRR PPM. According to this work, the best parameters and performance indices can be deduced for target of the best values that carried out for a PPM uses. For the Future work, the 3-RRR PPM will be constructed. It is necessary to built this manipulator and applying a specific control algorithm to see how it works. Also, showing the system performance according to the previous deduced indices.

References 1. Patel, Y.D., George, P.M.: Parallel manipulators applicationsa survey. Mod. Mech. Eng. 2(03), 57 (2012) 2. Pandilov, Z., Dukovski, V.: Comparison of the characteristics between serial and parallel robots. Acta Technica Corviniensis-Bull. Eng. 7(1) (2014) 3. Blan, R., Mties, V., Stan, S., Lpuan, C.: On the Control of a 3-RRR Planar Parallel Minirobot. Mecatronica (4) (2004) 4. Tsai, L.W.: Robot Analysis: The Mechanics of Serial and Parallel Manipulators. Wiley (1999) 5. Dash, A.K., Chen, I.M., Yeo, S.H., Yang, G.: Task-oriented configuration design for reconfigurable parallel manipulator systems. Int. J. Comput. Integr. Manuf. 18(7), 615–634 (2005) 6. Maciejewski, A.A., Klein, C.A.: Obstacle avoidance for kinematically redundant manipulators in dynamically varying environments. Int. J. Robot. Res. 4(3), 109– 117 (1985)

Modeling and Performance Analysis of Planar Parallel Manipulators

23

7. Nakamura, Y., Hanafusa, H., Yoshikawa, T.: Task-priority based redundancy control of robot manipulators. Int. J. Robot. Res. (1987) 8. Wang, J., Gosselin, C.M.: Kinematic analysis and design of kinematically redundant parallel mechanisms. Trans.-Am. Soc. Mech. Eng. J,. Mech. Des. 126(1) (2004) 9. Shang, W., Cong, S.: Dexterity and adaptive control of planar parallel manipulators with and without redundant actuation. J. Comput. Nonlinear Dyn. 10(1), 011002 (2015) 10. http://www.mecademic.com/DexTAR.html 11. Cheng, H., Yiu, Y.K., Li, Z.: Dynamics and control of redundantly actuated parallel manipulators. IEEE/ASME Trans. Mechatron. 8(4) (2003) 12. Shayya, S., Krut, S., Baradat, C., Pierrot, F.: Dynamic analysis of 4 degrees of freedom redundant parallel manipulator. In: Advances in Robot Kinematics, pp. 545–553. Springer (2014) 13. Shang, W., Cong, S., Kong, F.: Identification of dynamic and friction parameters of a parallel manipulator with actuation redundancy. Mechatronics 20(2) (2010) 14. Paccot, F., Andreff, N., Martinet, P.: A review on the dynamic control of parallel kinematic machines: theory and experiments. Int. J. Robot. Res. 28(3), 395–416 (2009) 15. Ghorbel, F.H., Chtelat, O., Gunawardana, R., Longchamp, R.: Modeling and set point control of closed-chain mechanisms: theory and experiment. IEEE Trans. Control Syst. Technol. 8(5), 801–815 (2000) 16. Shang, W.W., Cong, S., Li, Z.X., Jiang, S.L.: Augmented nonlinear PD controller for a redundantly actuated parallel manipulator. Adv. Robot. (2009) 17. Gosselin, C., Angeles, J.: Singularity analysis of closed-loop kinematic chains. IEEE Trans. Robot. Autom. 6(3), 281–290 (1990) 18. Yoshikawa, T.: Manipulability of robotic mechanisms. Int. J. Robot. Res. 4(2), 3–9 (1985) 19. Zhang, P., Yao, Z., Du, Z.: Global performance index system for kinematic optimization of robotic mechanism. Contributed by the Mechanisms and Robotics Committee of ASME for Publication in the Journal of Mechanical Design

Design and Simulation of Fuzzy Water Monitoring System Using WSN for Fishing Azza Esam1(&), Mohamed Elkhatib2, and Sameh Ibrahim1 1

Ain Shams University, Cairo, Egypt [email protected], [email protected] 2 Military Technical College, Cairo, Egypt [email protected]

Abstract. People and creatures have built up the capacity to utilize different faculties to help them survive. Multisensory data fusion is a quickly advancing exploration zone that requires interdisciplinary learning in control theory, artificial intelligence, probability and statistics, etc. Multisensory data fusion alludes to the synergistic blend of tactile information from various sensors and related data to give more solid and precise data than could be accomplished by utilizing a solitary, free sensor. Multisensory data fusion is a multilevel, multifaceted process dealing with the automatic detection, association, correlation, estimation, and the mix of information from single and different data sources. The aftereffects of a data fusion handle help clients settle on choices in confused situations. Fish farm owners constantly try to cultivate more than one type of fish per basin as part of their quest for optimal utilization of available resources and profit maximization. However, such attempts always fail in the summer due to problems related to climate change and environmental factors. Consequently, this paper attempts to analyze these problems and identify the factors that can be controlled to rectify them, as wells as the means of controlling said factors. This is done in light of the systematic understanding of the nature of environmental variables and dimensions of the problem. In this paper, we will introduce Fuzzy logic control system used to control and monitor the water parameters. Keywords: Water parameters monitor  Fuzzy logic control  Wireless sensors network

1 Introduction Some applications contain Wireless sensor networks (WSN), for example, environmental monitoring, infrastructure security and also are applied in healthcare applications, and traffic control system [1–3]. The outline of these applications must deliver challenges identified with WSN attributes on the one hand and the applications on the other. Middleware is a software which gives a typical stage to the heterogeneity in WSN, empowering numerous applications to work parallel on a distributed network [4]. The mismanagement of available resources and water quality is problematic as it exposes fish in fish farms to an acute shortage of oxygen at night time. This is due to the unsuitability of the temperature in the middle of the water for fish and the high acidity in ponds. In the summer months, farm owners increase nutrition and © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_3

Design and Simulation of Fuzzy Water Monitoring System

25

fertilization rates, thus exposing the docks at night, especially before sunrise, to an acute shortage of oxygen not to mention other problems relating to the environment. The fish are thus exposed to oxygen shortages and a high-temperature aqueous medium, as well as a high proportion of ammonia and low PH.As the severity of the problem increases, fish start to breathe with difficulty and very quickly choke. That occurs as a result of the accumulation of the above-mentioned factors over a few day period and not in a single day.

2 Review on Fuzzy Logic Theory People can take decisions based on imprecise or uncertain knowledge rather as opposed to traditional computer algorithms that require precise information. It has turned out to be important to figure out how to oversee information that is imprecise or uncertain, and that contains an explicit representation of the uncertainty because the traditional information models regularly experience the ill effects of manipulating imprecise and uncertain information that might be found in some genuine applications. In 1965 Lotfi A. Zadeh from the University of California introduced a new concept called fuzzy logic (FL), which is taken from Fuzzy Sets [5]. Fuzzy logic is one of the valued logic forms; it was developed to be used as the best way to handle and process data. The motivation behind introducing fuzzy logic is to improve the traditional models such that uncertain and imprecise information can be represented and manipulated. This resulted in a lot of contributions, mainly regarding the famous social relational model or to some related form of it. A gathering of client provided human dialect guidelines is the key component of FL. The fuzzy systems can change over these rules to their numerical counterparts and result in a great deal more accurate portrayals of the way frameworks carry on in this present reality. Fuzzy logic is characterized by a logic that enables middle values to be characterized between customary crisp evaluations, for example, true and false [6]. The mathematical formulation and representations of thoughts like rather tall or quick guarantees the use of a human-like state of mind in the programming of computers [7]. Numerous applications have been investigated by scientists in Artificial Intelligence (AI) techniques in the demonstrating of machining process [8–10]. Fuzzy logic (FL) as a notable AI technique is successfully utilized as a part of demonstrating of machining processes. FL was considered for expectation, determination, monitoring, checking, control and enhancement of machining process. Regarding fuzzy segments, the center of gravity strategy was generally used to do defuzzification, and triangular was for the most part considered to perform membership function. The surveys broaden the examination of the capacities, confinements and solid changes of FL in demonstrating given the remarks from past works that have led tests utilizing FL in the displaying and audits by few authors. The analysis drives the author to infer that FL is the most well-known AI strategy utilized as a part of the demonstrating of the machining process [11].

26

A. Esam et al.

3 Fish Mortality: A Problem Definition Fish are cold-blooded animals; that is the degree of their body heat depends on the temperature of the water in which they live. Each type of fish can live within a specific temperature range. Any deviation in altitude or temperature lower than the range above leads to mortality. The second problem is low oxygen concentration since dissolved oxygen is the most important environmental factor which affects the health and growth of fish. Oxygen concentration below recommended limits in waters leads to stress and low immunity, and lower growth rates in fish. When oxygen concentration is extremely below critical levels, this leads to the suffocation of fish and their death. Another problem is the increase of the proportion of ammonia. This occurs when farm owners attempt to increase malnutrition rates in the summer months. This increase in nutrition and fertilization rates results in increasing the proportion of ammonia.

4 Proposed Design and the Solution for the Problem of Fish Mortality In this study, we will use fuzzy logic for temperature, PH and Turbidity control system and it will be implemented in an Arduino Uno R3. Moreover, the Mamdani style of fuzzy inference system will be used to reach a fine, desirable crisp output. This experiment and simulation will be integrated to produce the whole fuzzy system for the control system. In the fuzzy logic algorithm, the triangular membership functions of the FLC will be constructed and it has three classifications which are (Low), (Normal) and (High). Three input variables, temperature sensor, PH sensor and Turbidity sensor, are used in this fuzzy logic system. A rule table is then created. The code will be uploaded on the Arduino IDE (Arduino Uno R3) and based on water temperature, PH value, and Turbidity conditions. The MPU will make decisions based on the classifications. The output behavior of the Heater, Aerator, Gate and the alert will determine whether the temperature, PH, and Turbidity need to be decreased or increased. To convert the analog values to digital fuzzy inputs, we have to use ADC converter. The fuzzy sets will be defuzzified, and this will produce a crisp output which will be fed to the control system using the Arduino Microcontroller. This process will keep the parameters of the water under control and make the water safe for fishing farms.

5 Flow Chart of Water Monitoring System Figure 1 shows the flow chart of the wireless sensor network for the water monitoring system used to control fish farms.

Design and Simulation of Fuzzy Water Monitoring System

27

Fig. 1. Flow chart of the proposed system.

From the fuzzy rules that are shown in the flow chart presented in Fig. 1, Heater and Aerator outputs will control the first input which is the temperature of the water. Therefore, when the temperature is Low the Heater will be high, and Aerator will be off, while if the temperature is high the Heater will be Low and Aerator will be high. On the other hand, Gate and Alert outputs will control PH value and Turbidity level. So if the PH value and Turbidity level are Low, then the Gate and Alert will be off, while if they values are High or one of them is High then the Gate and Alert will be on. This is to change the water by refreshing and clearing it. Moreover, the Alert is used to check whether the Gate opens or not.

6 System Design Using Fuzzy Logic Toolbox The initial step is designing the Fuzzy Logic System to describe fuzzy sets. The information is presented regarding fuzzy linguistic terms or can be viewed as values equal to 0 or 1 and values inside them. The fuzzy membership function is utilized to allocate values regarding fuzzy sets and its degrees of membership. The Triangular

28

A. Esam et al.

Membership Function can be utilized as a part of the system which requires three parameter particulars. The Membership Function Editor is utilized to characterize the shapes of all the membership functions related to every variable. We have three inputs (Temperature, PH, and Turbidity) with three ranges in each input membership function they are Low (L), Normal (N) and High (H) as shown in Fig. 2.

(a) The membership function of the Temperature input signal.

(b) Themembership function of the PH input signal

(c)The membership function of the Turbidity signal.

Fig. 2. The membership functions for the inputs.

.

Design and Simulation of Fuzzy Water Monitoring System

(a).The membership functions for the Heater signal.

(b).The membership functions for theAerator signal.

(c). Themembership functions for the Gate signal.

(d).The membership functions for the Alert signal.

Fig. 3. The membership functions for the outputs.

29

30

A. Esam et al.

And we have four outputs with three cases for the first two outputs. They are Off Normal (N) and High (H). However, the other two outputs only have two cases Off and On. Figure 3 shows the membership functions for all the outputs.

7 The Simulation of the System Using Simulink The system consists of three inputs (Temperature sensor, PH sensor, and Turbidity sensor) which are represented in simulation by three signal builders. To be able to control their values and change their ranges, we need to observe the changes in each output value on the oscilloscopes that are switched with the fuzzy controller outputs port. The first oscilloscope is connected to the first output (Heater), the second shows the second output (Aerator), the third shows the third output (Gate), and the last one is for the last output (Alerts). Figure 4 shows the simulation of our system using Simulink.

Fig. 4. Simulation of the proposed system.

8 The Simulation Results of the Proposed System Figure 5 shows the three input ramp signals which represent the readings of the sensors. Also, the figure presents the simulation for the four controlled output signals which are Heater signal, Aerator signal, Gate signal and Alert signal. The curves of the signal show that the Heater signal begins in High range as the temperature sensor reading is Low then it decreases. Conversely, the Aerator signal begins in Low range as the temperature sensor reading is Low then it increases. Furthermore, the Gate and Alert signals are Low if PH and turbidity are Low then become high when they are high.

Design and Simulation of Fuzzy Water Monitoring System

31

Fig. 5. The inputs and outputs simulation.

9 Hardware Design and Testing Hardware design of the proposed system includes batteries or a power supply module for energy supply, sensor nodes, a central processing module for local data processing and storage, and a wireless transceiver module for wireless data communication. Figure 6 shows the hardware design and the block diagram of the proposed system. A wireless sensor network (WSN) comprises of various committed sensor hubs with detecting and processing capacities which can detect and screen the physical parameters and transmit the gathered information to a focal area utilizing wireless communication technologies. Figure 6 shows common wireless sensor network architecture for monitoring water environments. It consists of sensor nodes, sink nodes, a base station, a server and client terminals. Sensor nodes can detect and monitor the in-situ environmental parameters, for example, water temperature, salinity, turbidity, pH, oxygen thickness and chlorophyll levels, and transmit the gathered information to sink nodes through wireless communication using any communication protocol. Sensor nodes are communicated in usual- point-to-point. A sink node gathers information from a gathering of sensor nodes and transmits the gathered information to the base station via the GPRS network. The server stores and procedures the got information from the base station. The client terminals interface the server over the Internet.

32

A. Esam et al.

Fig. 6. Block diagram of the designed system.

10 Testing and the Results of the Proposed System To test the results in the lab, the system is connected as shown in Fig. 7. The proposed system is tested by connecting three ramp signals to the inputs of the system. Each ramp signal represents the reading of one of the following sensors: Temperature sensor, PH sensor and Turbidity sensor as shown in Fig. 8. These signals are then connected to

Fig. 7. The connections and testing the proposed system.

Design and Simulation of Fuzzy Water Monitoring System

33

Fig. 8. The inputs of the proposed system (three ramp signals).

Fig. 9. The first output from the proposed system which represents the Heater signal.

Fig. 10. The second output from the proposed system which represents the Aerator signal.

34

A. Esam et al.

Fig. 11. The third output which represents the Gate signal.

Fig. 12. The fourth output from the proposed system which represents the Alert signal.

the previously programmed microcontroller. The outputs of the proposed system are connected by two oscilloscopes. Each one has two channels to observe the four outputs signals from the system as shown in Figs. 9, 10, 11 and 12. From the figures shown above, it is clear that the first output signal (the Heater signal)started at a high value and decreased as the first input signal value (the Temperature sensor reading) increased as shown in Fig. 9. This indicates that the heater signal and temperature are inversely proportional. As for the second output signal (the Aerator signal) which also depends on the temperature input, it started at a low value and increased as the first input signal value (Temperature sensor reading) increased as shown in Fig. 10. Both the third and fourth outputs (the Gate and Alert signals respectively) depend on the values of the second and third inputs (PH signal and Turbidity signal respectively). The output signal of the Gate was very low when the values of the second and the third inputs were low. Therefore, the Gate was off (closed). When the value of PH and

Design and Simulation of Fuzzy Water Monitoring System

35

Turbidity signals increased, the Gate turned on (opened) to allow the entrance of freshwater as shown in Figs. 11 and 12. Similarly, the fourth output signal (Alert signal) was low when the values of the second and the third inputs were low. However, if either of the two signals increases, the value of the Alert signal will increase as well emitting an alarm to indicate that the gate has not opened. These are the results obtained from the simulation shown in Fig. 5.

11 Conclusion The success of fish farming operations needs a good program for the management and control of water quality and for the creation of conditions suitable for the growth of the fish to reach optimal productivity in light of limited resources. So, this paper shows a proposed system and its practical application for monitoring a fish farm using temperature, pH and turbidity sensors. There are two main parts in the wireless sensor network: transmitting side and the other is receiving side. At the transmitting side, various sensors, a microcontroller, and a transceiver will be used, and at the receiving side, the transceiver and Personal Computer will be used to monitor the sensed parameters.

References 1. Jang, W.-S., Healy, W.M., Skibniewski, M.J.: Wireless sensor networks as part of a web-based building environmental monitoring system. Autom. Constr. 17, 729–736 (2008) 2. Mittal, R., Bhatia, M.S.: Wireless sensor networks for monitoring the environmental activities. In: 2010 IEEE International Conference on Computational Intelligence and Computing Research (ICCIC), Coimbatore, India (2010) 3. Barrenetxe, G., Ingelrest, F., Schaefer, G., Vetterli, M.: Wireless sensor networks for environmental monitoring: the SensorScope experience. In: 2008 IEEE International Zurich Seminar on Communications, Zurich, Switzerland (2008) 4. Othman, M.F., Shazali, K.: Wireless sensor network applications: a study in environment monitoring system. Procedia Eng. 41, 7 (2012) 5. Zadeh, L., Yager, R.: Development of Fuzzy Logic and Soft Computing Methodologies (1999) 6. Hellmann, M.: Fuzzy logic introduction. Université de Rennes (2001) 7. Zadeh, L.A.: Making computers think like people: the term fuzzy thinking is pejorative when applied to humans, but fuzzy logic is an asset to machines in applications from expert systems to process control. IEEE Spectr. 21(8), 26–32 (1984) 8. Fox, M.S.: Industrial applications of artificial intelligence. Robotics 49, 141–160 (1986) 9. Leondes, C.T.: Fuzzy Logic and Expert Systems Applications, vol. 6. Academic Press, San Diego (1998) 10. Yen, J., Langari, R., Zadeh, L.A.: Industrial Applications of Fuzzy Logic and Intelligent Systems. IEEE Press, New York (1995) 11. Holmblad, L.P., Østergaard, J.-J.: Control of a Cement Kiln by Fuzzy Logic (1982). Smidth

Passivity Based Decoupling of Lagrangian Systems Ahmad Taher Azar1,2(B) and Fernando E. Serrano3 1

Faculty of Computers and Information, Benha University, Banha, Egypt ahmad t [email protected], [email protected] 2 Nile University, 6th of October City, Egypt 3 Central American Technical University UNITEC, Zona Jacaleapa, Tegucigalpa, Honduras [email protected]

Abstract. In this article a novel decoupling strategy for complex systems, in specific, Lagragian models which represents mechanical systems is proposed. In this study a passivity based approach is shown considering that the decoupling law improves some results found in literature in which only a state feedback decoupling law is implemented. The passivity based decoupling law is obtained by selecting an appropriate storage function and then the α and β functions for the passivity based controller are obtained to yield the optimal system performance so the decoupled system response is similar to the coupled system. One of the advantages of the passivity based decoupling is the energy considerations in the design of the decoupling law, so this approach provides an efficient strategy to be implemented in the design of different kinds of controllers where the difference of the response between the decoupled and coupled Lagrangian system is not significant. The Lagrangian system studied in this work is highly coupled considering that most of the mechanical systems and robots have a strong coupling due to the kinematic and dynamic model obtained by the Euler-Lagrange formulation. It is proved by experiments that the theoretical results shown in this study provide optimal results. Keywords: Decoupling

1

· Passivity based control · Lagrangian systems

Introduction

Over the past few years, control algorithms have been very successfully and rigorously studied [1–8,12,15,16,16,17]. In this paper a novel decoupling approach for systems described by a Lagrangian formulation is shown. The approach shown in this article is based on a passivity based decoupling law taking in count that several kinds of systems that can be mechanical or electrical are described by the Lagrangian formulation. Several examples of physical systems are found in literature such as in [9] where an improved optimal sliding mode c Springer International Publishing AG 2018  A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3 4

Passivity Based Decoupling of Lagrangian Systems

37

controller for a nonlinear vehicle active suspension system is shown considering that the complexity of the problem is high because the system is decoupled and is more difficult to design a suitable controller. In [23] a decoupling procedure for two free coupled oscillators with cubic nonlinearities is shown, where the system decoupling is done by an exact procedure because it is not necessary to use approximations. Then in [25] an adaptive compensation of nonlinear friction disturbance for an aerial inertially stabilized platform is shown where a backstepping integral adaptive compensator is designed where the system decoupling is needed in order to ease the compensator design. An example for the system decoupling, in this case a power system, is shown in [13] where an harmonic decoupling procedure for a three phase grid synchronization system is shown where a SISO linear approach is implemented for these purposes. Most of the examples explained before are related to mechanical systems, the previous cited studies are evinced is this article because it is important to remark the complexity of the decoupling procedures for systems in a Lagrangian formulation. Considering that many mechanical systems such as mechanism, mechatronic systems and robots have highly coupled dynamics it is important to facilitate the design of control strategies. Considering the complexity of the kinematics of this mechanism such as in [19,21] the obtention of the dynamic model based on the Euler-Lagrange method yields a highly coupled system that makes it difficult to design suitable control strategies so it is important to provide suitable decoupling procedures. Other examples for the decoupling of mechanical systems can be found in [18,24] where in the first case a parallel mechanism with two translational and one revolute degrees of freedom is proposed providing a decoupled model that decreases the complexity of the controller design, and in the second case, a decoupling procedure for multibody dynamic simulations is shown eliminating kinematic loops which this procedure is implemented in a real-time setup. Finally, to finish this related work survey a decoupling of a free piston linear generator is shown in [22] where considering the dynamics of the system to be stabilized a suitable decoupling procedure is implemented. For these reasons in this paper a novel decoupling approach for Lagrangian systems, in specific, mechanical systems described by this formulation is shown based on the work of [14,20] but more on the works of [10,11], where the main idea is to substitute the state feedback decoupling law by a passivity based decoupling law taking in count that the proposed approach yields a better system response comparing the decoupled and coupled Lagrangian model. The article begins with the problem formulation describing the Lagrangian model in state space and then using a storage function the passivity based decoupling law is obtained then the decoupling laws matrices are obtained finding the α and β functions as shown in [10]. The theoretical results of this study are corroborated by a numerical example in which a coupled and decoupled model are compared when these systems are compared implementing a simple proportional controller when both systems are controlled to follow sinusoidal references. The following sections are shown in this article; in Sect. 2 the problem formulation that is the basis of this study is shown; then in Sect. 3 passivity based

38

A.T. Azar and F.E. Serrano

decoupling is described; then in Sect. 4 passivity based decoupling control law is presented. Numerical Example is shown in Sect. 5. Finally in Sect. 6 the discussion and conclusions of this study are provided.

2

Problem Formulation

To design the decoupling strategy for Lagrangian systems consider the following system: D(q)¨ q + c(q, q) ˙ q˙ + g(q) = τ (1) where q ∈ Rn is the position and/or orientation vector, D(q) ∈ Rn×n is the inertia matrix, c(q, q) ˙ ∈ Rn×n is the coriolis and centrifugal terms matrix, g(q) ∈ n R is the gravity vector and finally τ ∈ Rn is the torque/force input vector. To represent (1) in state variable form consider the following phase variables x1 = q and x2 ∈ q˙ yielding: x˙ 1 = x2 x˙ 2 = −D−1 (x1 )C(x1 , x2 )x1 − D−1 (x1 )g(x1 ) + D−1 (x1 )τ

(2)

so in order to express (2) in the following form: x˙ = F (x) + G(x)u T  where x = x1 x2 , F (x) and G(x) are given by:   x2 F (x) = −D−1 (x1 )C(x1 , x2 )x1 − D−1 (x1 )g(x1 )   0 0n×n G(x) = n×n −1 0n×n D (x1 )   0 u= n τ

(3)

(4)

and with this formulation the passivity based decoupling strategy can be designed in the following section.

3

Passivity Based Decoupling

The main contribution of this article is that the state feedback decoupling law [10] is improved by a passivity based decoupling law and due to the energy consideration of this approach, this strategy surpasses the results obtained by the approach shown in [10]. This proposed decoupling procedure is based on the works of [11,14,20] where sliding mode control, torque decoupling and an energy based decoupling procedure are shown in these studies. To obtain the passivity based decoupling law that will be used in the next section to obtain the decoupling matrix the next theorem is fundamental

Passivity Based Decoupling of Lagrangian Systems

39

Theorem 1. By selecting an storage Vs (x) where Vs (0) = 0 the following decoupling law is obtained for the system input w where v = −K1 G−1 (x)F (x) + K1 G−1 (x)w is the decoupling law with input u = K1−1 v and decoupling matrix K1 Proof. Consider the following storage function: V (x) =

1 T x (t)x(t) 2

(5)

so taking the time derivative of (5) the following result is obtained: V˙ (x) = xT (t)x(t) ˙ = xT (t)F (x) + xT (t)G(x)u

(6)

so by making u = K1−1 v where K1 is the decoupling gain matrix and v is the decoupling passivity based law as shown in v = −K1 G−1 (x)F (x) + K1 G−1 (x)w

(7)

 T where w = 0n τ is the system input so (6) becomes in V˙ (x) = xT w = y T w ≤ y T w

(8)

so the passivity based decoupling controller is obtained by selecting K1 meeting the passivity based requirement and this completes the proof. In the following section the passivity based decoupling matrix K1 is obtained by using the theorem evinced in this section.

4

Passivity Based Decoupling Control Law

In this section the computing of the decoupling matrix K1 is done based on the work of [10], where this matrix is obtained numerically from the function β(x) explained later and then the function α(x) is obtained from the previous results. First, consider the following functions obtained from (7) α(x) = −K1 G−1 (x)F (x) β(x) = K1 G−1 (x)

(9)

so in order to find this functions the Quaker lemma must be implemented as shown in [10], then assume to Δ as:   ∂ ∂ Δ = Span ,..., (10) ∂x1 ∂xk and expressing as: [10] 

 f1 F = f2  1 g G= 2 g

(11)

40

A.T. Azar and F.E. Serrano

 F + Gα = 

f˜1 f˜2

g˜1 Gβ = 2 g˜

  (12)

Then the following conditions must be met [F (x) + G(x)α(x), Δ(x)] ⊂ Δ(x) [G(x)β(x), Δ(x)] ⊂ Δ(x)

(13)

Then it is possible to find s linearly independent vectors from the columns of g 2 [10] (14) b(x) = (b1 (x), . . . , bs (x)) and the function E(x) where [10] E(x) = (bT (x)b(x))−1 bT (x)g 2 (x)

(15)

Then we can find a matrix Q(x) of size m × (m − s) (where m is the input dimension) such as [10]  rank Q(x), E T (x)(E(x)E T (x))−1 = m (16) so β0 is obtained by [10]   β0 (x) = Q(x) E T (x)(E(x)E T (x))−1



0 Im−s −E(x)Q(x) Is

 (17)

then by implementing the last s vector fields of G(x)β0 (x) to span a distribution B(x) such as [10] B(x) = Span ((G(x)β0 (x))j |j = m − s + 1, m − s + 2, . . . , m)

(18)

then β(x) is found [10] [B(x)β1 , Δ] ⊂ Δ(x)   Im−s 0 β(x) = β0 (x) 0 β1 (x)

(19) (20)

so the decoupling gain matrix K1 is obtained from (9) solving numerically the following equation (21) K1 = β(x)G(x) and α(x) is obtained from (9) in the following form α(x) = −K1 (G−1 (x)F (x))

(22)

with these results the passivity based decoupling law could be implemented and in the next section the theoretical results will be corroborated with a numerical example (Fig. 1).

Passivity Based Decoupling of Lagrangian Systems

41

Fig. 1. Cart-pendulum system

5

Numerical Example

In this section the stabilization of a decoupled mechanical system, in this case a cart pendulum system, where the results of the proposed decoupled controlled system is compared with a coupled controlled system. The parameters of the system are g = 9.81 m/s2 , M = 1 Kg, m = 1 Kg, and l = 0.85 m where the inertia and coriolis matrices along with the gravity and input vectors are given in   M + m ml D(q) = m ml   ˙ 0 θsin(θ) C(q, q) ˙ = 0 0   0 g(q) = −mgsin(θ)   u + dcos(θ) τ= (23) d  T where q = x θ with input references u = 0.1sin(2πt) and d = 0.1sin(2πt + 0.3). with a proportional controller matrix   60 0 Kp = (24) 0 60 so as it is noticed in Fig. 2 the reference variable is followed more efficiently by the controlled and decoupled system than the coupled system, this proves that the decoupled Lagrangian dynamic model is more efficient than the coupled system considering that the passivity based approach yields better results and as it is corroborated the error of the proposed approach is smaller than the compared strategy used in this benchmark. Then in Fig. 3 the rotation angle θ with the decoupled and coupled system are shown for comparison purposes, where as it noticed the error obtained from the difference between the reference variable and the state of the system is smaller with the proposed strategy in comparison with the coupled controlled system. In Fig. 4 the displacement error between the reference and state variable is shown and as can be noticed this error is smaller than the error used with the comparison example approach even when the proportional gain is the same.

42

A.T. Azar and F.E. Serrano

Fig. 2. Displacement x

Fig. 3. Rotation angle θ

Fig. 4. Displacement error (m)

In Fig. 5 the rotational error for θ is shown and as can be noticed, similar as the result obtained in the translational error the results obtained by the proposed approach are superior than the example shown in this benchmark. In Figs. 6 and 7 the translational and rotational velocities are shown where as can be expected the velocities according to the position references are smaller with the proposed approach in both cases in comparison with the approach used as an example in this benchmark.

Passivity Based Decoupling of Lagrangian Systems

43

Fig. 5. Rotational error for θ (rads)

Fig. 6. Translational velocity (m/s)

Fig. 7. Rotational velocity (rad/s)

and finally in Figs. 8 and 9 the linear and rotational velocities errors are shown and as can be noticed these figures evinced that the velocity errors are significantly small with the proposed approach corroborating that the optimal system performance is obtained with the proposed approach.

44

A.T. Azar and F.E. Serrano

Fig. 8. Linear velocity error (m/s)

Fig. 9. Rotational velocity error (rad/s)

6

Discussion and Conclusion

The results obtained in this article show that the decoupling by a passivity based approach is superior than the results obtained by implementing only a state feedback decoupling law because the proposed approach is based on the energy considerations of the system where the decoupling matrix K1 can be obtained by implementing a numerical solver for nonlinear algebraic equations. In this work a passivity based decoupling procedure for systems represented in Lagrangian form, specifically, mechanical system is proposed. Considering that many robotics and mechatronics systems are highly coupled this paper is an excellent contribution to the automatic control community because some results of previous works found in literature were significantly improved where the theoretical results were corroborated with numerical examples.

References 1. Azar, A.T., Serrano, F.E.: Adaptive sliding mode control of the furuta pendulum, pp 1–42. Springer International Publishing, Cham (2015) 2. Azar, A.T., Serrano, F.E.: Stabilizatoin and control of mechanical systems with backlash. In: Advances in Computational Intelligence and Robotics (ACIR), IGIGlobal, USA, pp 1–60 (2015)

Passivity Based Decoupling of Lagrangian Systems

45

3. Azar, A.T., Serrano, F.E.: Stabilization of mechanical systems with backlash by PI loop shaping. Int. J. Syst. Dyn. Appl. 5(3), 21–46 (2016) 4. Azar, A.T., Serrano, F.E.: Robust control for asynchronous switched nonlinear systems with time varying delays, pp. 891–899. Springer International Publishing, Cham (2017) 5. Azar, A.T., Vaidyanathan, S.: Handboook of Research on Advanced Intelligent Control Engineering and Automation. IGI Global, New York (2015) 6. Azar, A.T., Vaidyanathan, S.: Advances in chaos theory and intelligent control, vol. 337. Springer, Germany (2016) 7. Azar, A.T., Zhu, Q.: Advances and applications in sliding mode control systems. In: Studies in Computational Intelligence, vol. 576. Springer (2015) 8. Azar, A.T., Vaidyanathan, S., Ouannas, A.: Fractional order control and synchronization of chaotic systems. In: Studies in Computational Intelligence, vol. 688. Springer, Germany (2017) 9. Chen, S.A., Wang, J.C., Yao, M., Kim, Y.B.: Improved optimal sliding mode control for a non-linear vehicle active suspension system. J. Sound Vib. 395, 1–25 (2017) 10. Cheng, D., Hu, X., Shen, T.: Analysis and Design of Nonlinear Control Systems. Springer, Heidelberg (2010) 11. Chwa, D., Hong, K.S.: Nonlinear control of 3-d overhead cranes: Energy-based decoupling. IFAC Proc. 38(1), 275–280 (2005) 12. Ghoudelbourk, S., Dib, D., Omeiri, A., Azar, A.T.: Mppt control in wind energy conversion systems and the application of fractional control (piα) in pitch wind turbine. Int. J. Model. Ident. Control 26(2), 140–151 (2016) 13. Luo, Z., Su, M., Sun, Y., Wang, H., Yuan, W.: Stability analysis and concept extension of harmonic decoupling network for the three-phase grid synchronization systems. Int. J. Electr. Power Energy Syst. 89, 1–10 (2017) 14. Mao, J.F., Wu, G.Q., Wu, A.H., Zhang, X.D.: Nonlinear decoupling sliding mode control of permanent magnet linear synchronous motor based on α-th order inverse system method. Procedia Eng. 15, 561–567 (2011) 15. Meghni, B., Dib, D., Azar, A.T.: A second-order sliding mode and fuzzy logic control to optimal energy management in wind turbine with battery storage. Neural Comput. Appl. 28, 1417–1434 (2016) 16. Meghni, B., Dib, D., Azar, A.T., Ghoudelbourk, S., Saadoun, A.: Robust adaptive supervisory fractional order controller for optimal energy management in wind turbine with battery storage, pp. 165–202. Springer International Publishing, Cham (2017) 17. Mekki, H., Boukhetala, D., Azar, A.T.: Sliding modes for fault tolerant control, pp. 407–433. Springer International Publishing, Cham (2015) 18. Omar, M.: Decoupling kinematic loops for real-time multibody dynamic simulations. In: MATEC Web of Conferences, vol. 51, p. 01 (2016) 19. Qiang, S., Lin, L.: Mechanical decoupling algorithm applied to electric drive test bed. Math. Probl. Eng. 84, 1–6 (2014). (Article ID 710865) 20. Ruderman, M., Iwasaki, M.: Control of nonlinear elastic joint robots using feedforward torque decoupling. IFAC-PapersOnLine 28(11), 137–142 (2015) 21. Shin, H.P., Lee, D.: A new decoupling method for explicit stiffness analysis of kinematically redundant planar parallel kinematic mechanism. Math. Probl. Eng. 2015, 1–11 (2015). (Article ID 957269) 22. Sun, P., Zhang, C., Chen, J., Zhao, F., Liao, Y., Yang, G., Chen, C.: Decoupling design and verification of a free-piston linear generator. Energies 9(12), 1–23 (2016)

46

A.T. Azar and F.E. Serrano

23. Theotokoglou, E., Panayotounakos, D.: Nonlinear asymptotic analysis of a system of two free coupled oscillators with cubic nonlinearities. Appl. Math. Model. 43, 509–520 (2017) 24. Zeng, D., Jing, G., Su, Y., Wang, Y., Hou, Y.: A novel decoupled parallel mechanism with two translational and one rotational degree of freedom and its performance indices analysis. Adv. Mechan. Eng. 8(5), 1–10 (2016) 25. Zhou, X., Zhao, B., Liu, W., Yue, H., Yu, R., Zhao, Y.: A compound scheme on parameters identification and adaptive compensation of nonlinear friction disturbance for the aerial inertially stabilized platform. ISA Trans. 67, 293–305 (2017)

Control of New Type of Fractional Chaos Synchronization Ahmad Taher Azar1,2(B) , Adel Ouannas3 , and Shikha Singh4 1

Faculty of Computers and Information, Benha University, Banha, Egypt ahmad t [email protected], [email protected] 2 Nile University, 6th of October City, Egypt 3 Laboratory of Mathematics, Informatics and Systems (LAMIS), University of Larbi Tebessi, 12002 Tebessa, Algeria [email protected] 4 Faculty of Natural Sciences, Jamia Millia Islamia, New Delhi, India [email protected]

Abstract. Based on stability theory of linear fractional order systems and stability theory of linear integer order systems, the problem of coexistence of various types of synchronization between different dimensional fractional chaotic systems is investigated in this paper. Numerical and simulation results have clearly shown the effectiveness of the novel approach developed herein. Keywords: Fractional chaos · Synchronization ent dimensions · Incommensurate systems

1

· Co-existence · Differ-

Introduction

Fractional chaos synchronization becomes a challenging and interesting problem, mainly due to its potential applications especially in secure communications [11]. Several control approaches, have already been successfully applied to the problem of synchronization of fractional order chaotic dynamical systems [1,2,7]. Also, different types of synchronization for the fractional-order chaotic systems have been presented [3,6,15–20,22–26]. Among all types of fractional chaos synchronization, full state hybrid function projective synchronization (FSHFPS) [28], generalized synchronization (GS) [9], Q-S synchronization [17,27] and Θ − Φ synchronization [13] are the most effective synchronization approaches that has been used widely to achieve the synchronization between chaotic and hyperchaotic systems. When studying the synchronization of chaotic systems, an interesting phenomenon that may occur is the co-existence of several synchronization types [14]. Recently, many researchers start to study the problem of coexistence of different types of chaos synchronization. For example, a new approach to rigorously study the coexistence of some synchronization types between chaotic maps with different dimensions is presented in [12]. In [15], c Springer International Publishing AG 2018  A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3 5

48

A.T. Azar et al.

the co-existence of some types of fractional chaos synchronization is investigated. The co-existence of synchronization types is very useful in secure communication and chaotic encryption schemes. Based on these considerations, this paper presents new approach to rigorously study the co-existence of some chaos synchronization types between fractional dynamical systems with different dimensions. By exploiting stability theory of linear fractional order systems and stability theory of linear integer order systems, the paper analyzes the coexistence of FSHFPS, GS, Q-S synchronization and Φ − Θ synchronization when the master system is a general three-dimensional incommensurate fractional order system and the slave system is a general four-dimensional incommensurate fractional system. Numerical and simulation results of co-existence of synchronization types are illustrated, with the aim to show the effectiveness of the novel approach developed herein. The rest of this study is organized as follows. In Sect. 2, some preliminaries and basic concepts are presented. The problem of co-existence is formulated in Sect. 3. Section 4 analytical results are derived. Numerical examples and simulation results are presented in Sect. 5 and 6, respectively. Finally in Sect. 7 the conclusion of this study is provided.

2

Preliminaries

Definition 1. [4] The Caputo fractional derivative of f (t) is defined as, Dtp X (t) = J m−p X m (t) with 0 < p ≤ 1,

(1) m

where m = [p] (m is the first integer which is not less than p), X (t) is the m-order derivative in the usual sense, and J q (q > 0) is the q-order ReimannLiouville integral operator with expression: 1 J Y (t) = Γ (q) q

t (t − τ )

q−1

Y (τ ) dτ,

(2)

0

where Γ denotes Gamma function. Consider the following master system Lemma 1. [21] Suppose f (t) has a continuous kth derivative on [0, t] (k ∈ N, t > 0), and let p, q > 0 be such that there exists some  ∈ N with  ≤ k and p, p + q ∈ [ − 1, ]. Then: Dtp Dtq f (t) = Dtp+q f (t) .

(3)

Lemma 2. [10] The n-dimensional fractional order linear system Dtp X (t) = AX (t) , Dtp

(4)

[Dtp1 , Dtp2 , ..., Dtpn ] ,

= 0 < pi ≤ 1, 1 ≤ i ≤ n and A ∈ Rn×n , is where asymptotically stable if all roots λ of the equation     (5) det diag λM p1 , λM p2 , ..., λM pn − A = 0, satisfy |arg (λ)| > tors of pi ’s

π 2M ,

where M is the least common multiple of the denomina-

Control of New Type of Fractional Chaos Synchronization

3

49

Problem Formulation

The master chaotic system is defined by: Dtpi xi (t) = fi (X (t)), i = 1, 2, 3,

(6)

T

where X(t) = (x1 (t), x2 (t), x3 (t)) is the state vector of the master system, fi : R3 → R, 0 < pi ≤ 1, and Dtpi is the Caputo fractional derivative of order pi . Suppose that the slave hyperchaotic system can be described in the following form 4  bij yj (t) + gi (Y (t)) + ui , i = 1, 2, 3, 4, (7) Dtqi yi (t) = j=1 T

where Y (t) = (y1 (t), y2 (t), y3 (t), y4 (t)) is the state vector of the slave system, (bij ) ∈ R4×4 is the linear part of the slave system, gi : R4 → R, i = 1, 2, 3, 4, is the nonlinear part of the slave system, 0 < qi ≤ 1, Dtqi are the Caputo fractional derivatives of order qi and ui , i = 1, 2, 3, 4, are controllers to be determined. The problem of co-existence of FSHFPS, GS, Q − S synchronization and Θ − Φ synchronization between the master system (6) and the slave system (7), is to find controllers ui , i = 1, 2, 3, 4, such that the errors e1 (t) = y1 (t) −

3 

αj (t)xj (t), e2 (t) = y2 (t) − φ(X(t)),

j=1

(8)

e3 (t) = Q(Y (t)) − S(X(t)), e4 (t) = Θ(t)Y (t) − Φ(t)X(t), satisfy limt→∞ ei (t) = 0, (i = 1, 2, 3, 4), where αj (t) , j = 1, 2, 3, are differentiable functions, φ : R3 → R is a differentiable function, Q : R4 → R, S : R3 → R are two scaling differentiable functions and Θ (t) = (Θij (t))1×4 , Φ (t) = (Φij (t))1×3 are two scaling function matrix. Throughout this paper we ∂Q assume that ∂y , Θ14 (t) = 0. 3

4

Analytical Results

The controllers ui , i = 1, 2, 3, 4, are designed as follows: ⎛ ⎞ 4 3   b1j yj (t) − g1 (Y (t)) + Dtq1 ⎝ αj (t) xj (t)⎠ , (9) u1 = − |b11 | e1 (t) − j=1

u2 = − |b22 | e2 (t) −

4 

j=1

b2j yj (t) − g2 (Y (t)) + Dtq2 φ (X (t)) ,

j=1

u3 = −

4 

b3j yj (t) − g3 (Y (t)) + J

1−q3

j=1

u4 = −

4  j=1

b4j yj (t) − g4 (Y (t)) + J 1−q4



1 ∂Q ∂y3

(− |b33 | e3 (t) + R) ,

1 Θ14 (t)

(− |b44 | e4 (t) + T ) .

50

A.T. Azar et al.

where R=−

4 3   ∂Q ∂S y˙ j + x˙ j , ∂y ∂x j j j=1 j=1

(10)

j=3

T =−

3 

Θ1j (t) y˙ j (t) −

j=1

4 

Θ˙ 1j (t) yj (t) +

j=1

3  j=1

Φ˙ (t)1j (t) xj (t) +

3  j=1

Φ (t)1j x˙ j (t) .

By substituting the control law (9) into Eq. (7), one can have ⎛ ⎞ 3  αj (t) xj (t)⎠ , Dtq1 y1 (t) = − |b11 | e1 (t) + Dtq1 ⎝

(11)

j=1

Dtq2 y2 (t) = − |b22 | e2 (t) + Dtq2 φ (X (t)) ,

1 q3 Dt y3 (t) = J 1−q3 ∂Q (− |b33 | e3 (t) + R) , Dtq4 y4 (t) = J 1−q4



∂y3

1 Θ14 (t)

(− |b44 | e4 (t) + T ) .

The error system (8) between the master system (6) and the slave system (7) can be differentiated as follows ⎛ ⎞ 3  Dtq1 e1 (t) = Dtq1 y1 (t) − Dtq1 ⎝ αj (t) xj (t)⎠ , (12) j=1

Dtq2 e2 (t)

e˙ 3 (t) =

∂Q ∂y3

y˙ 3 (t) +

4  ∂Q

∂yj j=1

y˙ j −

j=3

e˙ 4 (t) = Θ14 (t) y˙ 4 (t) +

3 

=

Dtq2 y2 3  ∂S j=1

∂xj

Θ1j (t) y˙ j (t) +

j=1

(t) −

Dtq2 φ (X

(t)) ,

(13)

x˙ j ,

4 

˙ 1j (t) yj (t) − Θ

j=1

3  j=1

Φ˙ (t)1j (t) xj (t) −

3  j=1

Φ (t)1j x˙ j (t) .

According to Lemma 1, y˙ 3 (t) = Dt1−q3 (Dtq3 y3 (t))

1 1−q3 1−q3 J (− |b33 | e3 (t) + R) = Dt ∂Q ∂y3

=

1 ∂Q ∂y3

(− |b33 | e3 (t) + R) ,

(14)

and with the same procedure, we can get y˙ 4 (t) =

1 (− |b44 | e4 (t) + T ) . Θ14 (t)

(15)

Control of New Type of Fractional Chaos Synchronization

51

Furthermore, the error system between the master system (6) and the slave system (7) can be described a follows Dtq1 e1 (t) = −|b11 |e1 (t), e˙ 3 (t) = −|b33 |e3 (t),

Dtq2 e2 (t) = −|b22 |e2 (t)

(16)

e˙ 4 (t) = −|b44 |e4 (t).

(17)

Rewriting the systems described by Eqs. (16) and (17) in the compact forms Dtq eI (t) = BI eI (t),

(18)

e˙ II (t) = BII eII (t),

(19)

T

T

q2 where Dtq eI (t) = (Dtq1 e1 (t),  Dt e2 (t)) , e˙ II (t) = (e˙ 3 (t), e˙ 4 (t)) , BI =  − |b33 | 0 − |b11 | 0 , BII = . Using simple calculations, we 0 − |b22 | 0 − |b44 |     can show that the roots of the equation det diag λM q1 , λM q2 − BI = 0, where M is the least common multiple of the denominators of q1 and q2 ,   1 π π M qi cos M qi + sin M qi , i = 1, 2. Then, it is easy to see that are: λi = |bii | π |arg (λi )| > 2M , i = 1, 2. According to Lemma 2, we conclude that

lim e1 (t) = lim e2 (t) = 0.

t→∞

t→∞

(20)

Also, we can see that all eigenvalues of BII have negative real part. Thus, by asymptotic stability of linear integer order systems, it is immediate that all solutions of error system (19) go to zero as t → ∞ i.e., lim e3 (t) = lim e4 (t) = 0.

t→∞

t→∞

(21)

Now, we can state the following result. Theorem 1. The coexistence of FSHFPS, GS, Q-S synchronization and Θ − Φ synchronization between the master system (6) and the slave system (7) is achieved under the control law (9).

5

Numerical Results

To validate numerically the derived analytical results in the previous section, we consider the incommensurate fractional order Liu system as the master system and the controlled hyperchaotic fractional-order Chen system as the slave system. The master system is defined as: Dp1 x1 = a(x2 − x1 ), Dp2 x2 = bx1 − x1 x3 , Dp3 x3 = −cx3 + 4x21

(22)

where x1 , x2 and x3 are states. For example, chaotic attractors are found in [8], when (p1 , p2 , p3 ) = (0.93, 0.94, 0.95) and (a, b, c) = (10, 40, 2.5). The slave system is given by: Dq1 y1 = b1 (y2 − y1 ) + y4 + u1 , Dq2 y2 = b2 y2 + 7y1 − y1 y3 + u2 , Dq3 y3 = b3 y3 + y1 y2 + u3 , Dq4 y4 = b4 y4 + y2 y3 + u4

(23)

52

A.T. Azar et al.

where y1 , y2 , y3 , y4 are states and ui , i = 1, 2, 3, 4, are synchronization controllers. The uncontrolled system (23) (i.e. the system (23) with u1 = u2 = u3 = u4 = 0) exhibits hyperchaotic behavior when (q1 , q2 , q3 , q4 ) = (0.98, 0.96, 0.97, 0.99) and (b1 , b2 , b3 , b4 ) = (35, 12, −8, 0.3) [5]. The error system between the master system (22) and the slave system (23) can be defined as e1 = y1 −

3 

αj (t)xj , e2 = y2 − φ(x1 , x2 , x3 ), e3 = Q(y1 , y2 , y3 , y4 ) − S(x1 , x2 , x3 ),

j=1

e4 = Θ(t) × (y1 , y2 , y3 , y4 )T − Φ(t) × (x1 , x2 , x3 )T

(24) where (α1 (t), α2 (t), α3 (t)) = (t, 2, 3t), φ(x1 , x2 , x3 ) = x1 x2 x3 , Q(y1 , y2 , y3 , y4 ) = y1 y2 + 2y3 + y4 , S(x1 , x2 , x3 ) = x1 x2 + x23 , Θ(t) = (Θij (t))1×4 = (t2 , exp(t), 3, t2 + 4), Φ(t) = (Φij (t))1×3 = (cos t, sin t, t).

(25) so, ∂ Q (y1 , y2 , y3 , y4 ) = 2 and Θ14 (t) = 4. ∂y3 According to Eqs. (9) and (10), the controllers ui , i = 1, 2, 3, 4, are constructed as follows u1 = −35e1 − 35 (y2 − y1 ) − y4 + D0.98 (tx1 + 2x2 + 3tx3 ) , u2 = −12e2 − 7y1 − 12y2 + y1 y3 + D0.96 (x1 x2 x3 ) , 1 u3 = 8y3 − y1 y2 − J 0.03 (8e3 + y1 + y2 − x2 − x1 ) , 2   V u4 = −0.3y4 − y2 y3 − J 0.01 2 t +4

(26)

V = 0.3e4 + 2ty1 + exp(t)(y2 + y˙ 2 ) + 2ty4 + t2 y˙ 1 + 3y˙ 3 +(t2 + 4)y4 − x˙ 1 cos t + x1 sin t − x˙ 2 sin t − x˙ 2 cos t − x3 − tx˙ 3 . Using the notations presented previously, the matrices BI and BII are given by     −35 0 −8 0 , BII = . BI = 0 −12 0 −0.3 We can see that the matrices BI and BII satisfy the conditions of stability that are used in the proof of Theorem 1. Hence, the synchronization between systems (22) and (23) is achieved and the error system can be described as follows: D0.98 e1 = −35e1 , e˙ 3 = −8e3 ,

D0.96 e2 = −12e2 , e˙ 4 = −0.3e4 .

(27) (28)

Control of New Type of Fractional Chaos Synchronization

6

53

Simulation Results

For the simulation results, fractional Euler integration method has been used to solve the master system (22), the uncontrolled slave system (23) and the error system (27). Also, fourth order Runge–Kutta integration method has been used to solve the error system (28). In addition, simulation time T m = 120 s and time step h = 0.005 s have been employed. The initial values of the master system and the slave system are (x1 (0), x2 (0), x3 (0)) = (0, 3, 9) and (y1 (0), y2 (0), y3 (0), y4 (0)) = (0.2, 0.3, 1.5, −0.5) , respectively. Then, the initial states of the errors are (e1 (0), e2 (0)) = (5.8, 0.3) and (e3 (0), e4 (0)) = (−78.44, 2.8). Figures 1, 2, 3, and 4 displays attractors of the master system (22), attractors of the uncontrolled slave system (23), time evolution of the errors e1 , e2 and time evolution of the errors e3 , e4 , respectively.

Fig. 1. Attractors of the system (22) when (p1 , p2 , p3 ) = (0.93, 0.94, 0.95), (a, b, c) = (10, 40, 2.5) and initial value (x1 (0), x2 (0), x3 (0)) = (0, 3, 9) .

Fig. 2. Attractors of the uncontrolled system (23) when (q1 , q2 , q3 , q4 ) = (0.98, 0.96, 0.97, 0.99), (b1 , b2 , b3 , b4 ) = (35, 12, −8, 0.3), (u1 , u2 , u3 , u4 ) = (0, 0, 0, 0) and initial value (y1 (0), y2 (0), y3 (0), y4 (0)) = (0.2, 0.3, 1.5, −0.5)

Fig. 3. Time-history of the synchronization errors e1 and e2 .

Fig. 4. Time-history of the synchronization errors e3 and e4 .

54

7

A.T. Azar et al.

Conclusion

This paper has developed new approach to study the co-existence of various types of chaos synchronization between different dimensional fractional order chaotic systems. Specifically, by using some properties of fractional derivatives, stability theory of linear fractional-order differential systems and stability properties of linear integer–order differential systems, the paper has analyzed the co-existence of FSHFPS, GS, Q-S synchronization and Θ − Φ synchronization between 3D incommensurate fractional order master system and 4D incommensurate fractional order slave system. Numerical results and computer simulations are reported, with the aim to illustrate the capabilities of the novel scheme proposed herein. Further developments and extended analysis related to the application of the proposed approach in chaotic communication devices and secure communication systems. Also, new complex fractional schemes of synchronization will be investigated in future works.

References 1. Azar, A.T., Vaidyanathan, S.: Advances in Chaos Theory and Intelligent Control, vol. 337. Springer, Berlin (2016) 2. Azar, A.T., Vaidyanathan, S., Ouannas, A.: Fractional Order Control and Synchronization of Chaotic Systems. Studies in Computational Intelligence, vol. 688. Springer, Berlin (2017) 3. Azar, A.T., Volos, C., Gerodimos, N.A., Tombras, G.S., Pham, V.T., Radwan, A.G., Vaidyanathan, S., Ouannas, A., Munoz-Pacheco, J.M.: A novel chaotic system without equilibrium: dynamics, synchronization, and circuit realization. Complexity, Article ID 7871467, 11 pages (2017) 4. Caputo, M.: Linear models of dissipation whose q is almost frequency independentii. Geophys. J. R. Astron. Soc. 13(5), 529–539 (1967) 5. Chen, H., Chen, W., Zhang, B., Cao, H.: Robust synchronization of incommensurate fractional-order chaotic systems via second-order sliding mode technique. J. Appl. Math., Article ID 321253, 11 pages (2013) 6. Chun-Lai, L., Mei, Z., Feng, Z., Xuan-Bing, Y.: Projective synchronization for a fractional-order chaotic system via single sinusoidal coupling. Optik - Int. J. Light Electron Opt. 127(5), 2830–2836 (2016) 7. Li, C.L., Wu, L.: Sliding mode control for synchronization of fractional permanent magnet synchronous motors with finite time. Optik - Int. J. Light Electron Opt. 127(6), 3329–3332 (2016) 8. Liu, C., Liu, T., Liu, L., Liu, K.: A new chaotic attractor. Chaos, Solitons Fractals 22(5), 1031–1038 (2004) 9. Mart´ınex-Guerra, R., Mata-Machuca, J.L.: Fractional generalized synchronization in a class of nonlinear fractional order systems. Nonlinear Dyn. 77(4), 1237–1244 (2014) 10. Matignon, D.: Stability results for fractional differential equations with applications to control processing. In: Proceedings of the IMACS Multiconference on Computational Engineering in Systems Applications, pp. 963–968 (1996) 11. Muthukumar, P., Balasubramaniam, P.: Feedback synchronization of the fractional order reverse butterfly-shaped chaotic system and its applicationto digital cryptography. Nonlinear Dyn. 74, 1169–1181 (2013)

Control of New Type of Fractional Chaos Synchronization

55

12. Ouannas, A., Grassi, G.: A new approach to study the coexistence of some synchronization types between chaotic maps with different dimensions. Nonlinear Dyn. 86(2), 1319–1328 (2016) 13. Ouannas, A., Al-sawalha, M.M., Ziar, T.: Fractional chaos synchronization schemes for different dimensional systems with non-identical fractional-orders via two scaling matrices. Optik - Int. J. Light Electron Opt. 127(20), 8410–8418 (2016) 14. Ouannas, A., Azar, A.T., Abu-Saris, R.: A new type of hybrid synchronization between arbitrary hyperchaotic maps. Int. J. Mach. Learn. Cybern., 1–8 (2016), http://dx.doi.org/10.1007/s13042-016-0566-3 15. Ouannas, A., Azar, A.T., Vaidyanathan, S.: A robust method for new fractional hybrid chaos synchronization. Math. Methods Appl. Sci. 30(5), 1804–1812 (2016) 16. Ouannas, A., Azar, A.T., Vaidyanathan, S.: New hybrid synchronization schemes based on coexistence of various types of synchronization between master-slave hyperchaotic systems. Int. J. Comput. Appl. Technol. 55(2), 112–120 (2017) 17. Ouannas, A., Azar, A.T., Vaidyanathan, S.: On a simple approach for q-s synchronization of chaotic dynamical systems in continuous-time. Int. J. Comput. Sci. Math. 8(1), 20–27 (2017) 18. Ouannas, A., Azar, A.T., Ziar, T., Vaidyanathan, S.: Fractional inverse generalized chaos synchronization between different dimensional systems. In: Azar, A.T., Vaidyanathan, S., Ouannas, A. (eds.) Fractional Order Control and Synchronization of Chaotic Systems, pp. 525–551. Springer, Cham (2017) 19. Ouannas, A., Azar, A.T., Ziar, T., Vaidyanathan, S.: A new method to synchronize fractional chaotic systems with different dimensions. In: Azar, A.T., Vaidyanathan, S., Ouannas, A. (eds.) Fractional Order Control and Synchronization of Chaotic Systems, pp. 581–611. Springer, Cham (2017), doi:10.1007/978-3-319-50249-6 20 20. Pham, V.T., Vaidyanathan, S., Volos, C.K., Azar, A.T., Hoang, T.M., Van Yem, V.: A three-dimensional no-equilibrium chaotic system: Analysis, synchronization and its fractional order form. In: Azar, A.T., Vaidyanathan, S., Ouannas, A. (eds.) Fractional Order Control and Synchronization of Chaotic Systems, pp. 449–470. Springer, Cham (2017) 21. Si, G., Sun, Z., Zhang, Y., Chen, W.: Projective synchronization of different fractional-order chaotic systems with non-identical orders. Nonlinear Anal. Real World Appl. 13(4), 1761–1771 (2012) 22. Vaidyanathan, S., Azar, A.T., Ouannas, A.: An eight-term 3-D novel chaotic system with three quadratic nonlinearities, its adaptive feedback control and synchronization. In: Azar, A.T., Vaidyanathan, S., Ouannas, A. (eds.) Fractional Order Control and Synchronization of Chaotic Systems, pp. 719–746. Springer, Cham (2017) 23. Vaidyanathan, S., Azar, A.T., Ouannas, A.: Hyperchaos and adaptive control of a novel hyperchaotic system with two quadratic nonlinearities. In: Azar, A.T., Vaidyanathan, S., Ouannas, A. (eds.) Fractional Order Control and Synchronization of Chaotic Systems, pp. 773–803. Springer, Cham (2017) 24. Vaidyanathan, S., Zhu, Q., Azar, A.T.: Adaptive control of a novel nonlinear double convection chaotic system. In: Azar, A.T., Vaidyanathan, S., Ouannas, A. (eds.) Fractional Order Control and Synchronization of Chaotic Systems, pp. 357–385. Springer, Cham (2017) 25. Wang, Z., Volos, C., Kingni, S.T., Azar, A.T., Pham, V.T.: Four-wing attractors in a novel chaotic system with hyperbolic sine nonlinearity. Optik - Int. J. Light Electron Opt. 131, 1071–1078 (2017)

56

A.T. Azar et al.

26. Xi, H., Li, Y., Huang, X.: Adaptive function projective combination synchronization of three different fractional-order chaotic systems. Optik - Int. J. Light Electron Opt. 126(24), 5346–5349 (2015) 27. Yi, C., Liping, C., Ranchao, W., Juan, D.: Q-S synchronization of the fractionalorder unified system. Pramana 80(3), 449–461 (2013) 28. Zhang, L., Liu, T.: Full state hybrid projective synchronization of variable-order fractional chaotic/hyperchaotic systems with nonlinear external disturbances and unknown parameters. J. Nonlinear Sci. Appl. 9(3), 1064–1076 (2016)

Control of a Two Link Planar Electrically-Driven Rigid Robotic Manipulator Using Fractional Order SOFC Ahmad Taher Azar1,2(&), Jitendra Kumar3, Vineet Kumar3, and K.P.S. Rana3 1

Faculty of Computers and Information, Benha University, Banha, Egypt [email protected] 2 Nile University, 6th of October City, Egypt [email protected] 3 Division of instrumentation and control Engineering, Netaji Subhas Institute of Technology, Dwarka 110078, New Delhi, India [email protected], [email protected], [email protected]

Abstract. An intelligent adaptive fuzzy logic control technique, Fractional Order Self Organizing Fuzzy Controller (FOSOFC) is presented and applied to control a two link planar electrically-driven rigid robotic (EDRR) manipulator system. As EDRR is a multi-input multi-output complex nonlinear system, an intelligent adaptive controller, FOSOFC is considered to control it perfectly. To show the efficacy of the FOSOFC controller, the obtained performance is compared with fractional order fuzzy proportional integral and derivative (FOFPID) controller for study in servo as well as the regulatory problems. Gains of the controllers are tuned by a meta-heuristic bio-inspired algorithm namely Cuckoo Search Algorithm. Based on the trajectory tracking and disturbance rejection (DR) performances, efficiency of controllers has been accessed and it has been found that FOSOFC outperforms on FOFPID controller. Keywords: Robotic manipulator  Fractional Order Self Organizing Fuzzy Controller  Electrically-driven rigid robotic manipulator

1 Introduction Efficient controller design for nonlinear, coupled, multi-input multi-output (MIMO), complex and open-loop unstable system is always a challenge for researchers since last seven decades because linear proportional integral and derivative controller is not suggested for such complex systems [1]. Classical adaptive controllers like model reference adaptive control, self-tuning regulator, gain scheduling etc. are evolved in [1] to cope up with these composite problems which are presented. The basic difficulties to design classical adaptive controllers that these designs need complete plant model which explores another complicated research area for control engineers. To overcome this problem an intelligent technique, Fuzzy logic was evolved by L.A. Zadeh to deal with poorly known systems [2–4]. Further, fuzzy logic technique was explored by © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_6

58

A.T. Azar et al.

Mamdani and his co-workers to design fuzzy logic controller (FLC) for industrial applications [5–9]. After that FLC was extensively used by several control engineers for nonlinear complex plants [10]. But for practical applications, linear FLC has certain limitations which needs enhancement to make it a robust controller design. To improve the efficacy of FLC, Procyk and Mamdani have made developments and designed a new controller which was termed as Self Organizing Fuzzy Controller (SOFC) [11]. This new controller has adaptive capability which comes from another fuzzy logic controller block to deal with nonlinear complex systems. In this technique, adaptive fuzzy control rules were developed by learning the dynamic behaviour of the system as a substitute of expert thinking. It was claimed by Procyk and Mamdani that SOFC performed much better than simple FLC. Further, SOFC was explored by Yamazaki and Mamdani and it was shown that SOFC show superior performance than FLC controller [12]. To enhance the capabilities of SOFC controller further, several investigations have been made which have been reported in [13]. Scientists in the field of control engineering always want more tunable parameters to increase the degree of freedom of a controller. It increases the robustness of the controller which further increases the efficacy of the controller. In this context, a fractional order self-organizing fuzzy controller (FOSOFC) has been proposed in the present work to control a two link planar electrically-driven rigid robotic (EDRR) manipulator system. Fractional order operators have been considered in the proposed scheme which increases the robustness of the controller [14–16]. EDRR is a nonlinear, coupled, multi-input multi-output (MIMO), complex and open-loop unstable system and the mathematical model of this system is considered from [17]. Effective control of these types of systems always makes a big challenge for control engineers. The proposed controller having an intelligent adaptive behaviour and can cope up with complex systems like EDRR. Further the gains of controller show a vital role for controlling capability of SOFC. Till date, there is no fixed method has been reported to find the tuned parameters of the intelligent controller like FOSOFC. To find the optimized value of the gains of the controller in the present work, a meta-heuristic search method, Cuckoo Search Algorithm is used where a predefined cost function is minimized. The CSA was proposed by X.S. Yang and S. Deb in 2009 and it is based on the brood parasitic breeding behaviour of some species of Cuckoos [18]. It has been found in literature survey that the comparison of FOSOFC on two links EDRR with FOFPID is not yet reported. So, to make a relative study in the present work, a comparison of performance of proposed FOSOFC with FOFPID has been made and the obtained results have been presented.

2 Plant Description A two link EDRR manipulator system with two degree of freedom is described in this section and shown in Fig. 1. The first link is mounted on a solid base and the second link is attached with a frictionless ball bearing to the end of first link. Input to the EDRR is considered as the applied voltages V with range −12 V to 12 V. The dynamic equations considered in the present work are taken from [17].

Control of a Two Link Planar Electrically-Driven Rigid Robotic Manipulator

59

Fig. 1. Two link planar rigid robotic manipulator system diagram.

The dynamic equations of a manipulator which show the relation between controllers output (Torque) and link positions ðhÞ can be written as:   M ðhÞ€h þ C h; h_ þ GðhÞ ¼ HI

ð1Þ

LI_ þ RI þ Kb h_ ¼ V

ð2Þ

Further (1) and (2) can be written as,  

        €h1 C1 G1 H1 0 I1 €h2 þ C2 þ G2 ¼ 0 H2 I2           I1 0 0 R1 0 Kb1 V1 I_1 h_ 1 þ þ ¼ L2 I_2 0 R2 I2 0 Kb2 h_ 2 V2

M11 M21

L1 0

where h ¼ ½ h1





ð3Þ ð4Þ

h2 T is the angular position of end effector of two links. 

M ðhÞ ¼

M12 M22

l21 ðm1 þ m2 Þ þ l22 m2 þ 2m2 l1 l2 cos h2 m2 l1 l2 cos h2 þ m2 l22

C h; h_



" ¼

dh dh  1

dt

2

dt

 m2 l1 l2 sin h2 dh 2

m2 l1 l2 sin h2 

G ð hÞ ¼

2m2 l1 l2 sin h2

m2 l1 l2 cos h2 þ m2 l22 m2 l22 dh 2 # 2

dt

1

 ð5Þ

ð6Þ

dt

ðm1 þ m2 Þl1 g cos h1 þ m2 gl2 cos (h1 þ h2 Þ m2 gl2 cos (h1 þ h2 Þ

 ð7Þ

H is an invertible constant diagonal matrix characterizing the electro-mechanical conversion between the current vector and the torque vector. I is the vector of motor armature current where L represents a constant diagonal matrix of electrical inductance. R represents the electrical resistance matrix, Kb is a constant matrix for the motor

60

A.T. Azar et al.

back-emf effect and V is the control input voltage. In the present work constants m1 ¼ 0:1 kg, m2 ¼ 0:1 kg, l1 ¼ 0:8 m, l2 ¼ 0:4 m, g ¼ 9:8 m=s2 , H1 ¼ 20 N m=A, H2 ¼ 20N  m=A, L1 ¼ 0:025H, L2 ¼ 0:025H, R1 ¼ 10 X, R2 ¼ 10 X, Kb1 ¼ 1 vol/rad/sec and Kb2 ¼ 1 vol/rad/sec are considered to define the system correctly.

3 Fractional Order Implementation In addition of a fractional order mathematical operators increase the degree of freedom and as result more precise solutions are obtained rather that integer order controllers which have been used in the field of control in several applications. In the present work, Grunwald-Letnikov (G-L) method (8) is used to implement the fractional order operators. A fractional order differentiator and integrator of a function f(t) is denoted as, Da f ðtÞ and Db f ðtÞ respectively where 0\a\1 and 0\b\1 where the initial value of a and b are found by CSA optimization algorithm in the present work. A fractional order operator by applying G-L method is defined as, c a Dt gðtÞ ¼ limh!0

 1 X½ðtcÞ=h i c gðt  ihÞ ð 1 Þ i¼0 i hc

ð8Þ

Where c is the order of fractional operator.

4 Design and Implementation of FOSOFC The block diagram implementation of FOSOFC is shown in Fig. 2 where two layers of fractional order FLC (FOFLC) are used. The first layer of FLC is a simple structure of fractional order (FO) FPI + FPD controller. Error signal (e) and rate of change of error signal (de) are considered as the input to the FO fuzzy controller. In the block diagram i of FOSOFC, kpi is gain of error signal, kdi is gain of rate of change of error signal, kupd is i gain of output of FOFPD controller and kupi is the gain of FOFPI controller where i ¼ 1; 2. Seven symmetrical input as well as output membership functions are used in which five are triangular and two are trapezoidal as shown in Fig. 3. Zero order Takagi Sugeno Kang (TSK) inference method is used in this scheme where constant output membership functions are considered. The final output of this inference system is the weighted average of all rule outputs which can be explored as: u1 ¼

X i; j



V ½lEi ðe1 Þ lEi ðDe1 Þ : Unði; jÞ V ½lEi ðe1 Þ lEi ðDe1 Þ

ð9Þ

V lEi ðe1 Þ lEi ðDe1 Þ denotes the intersection of fuzzy set lEi ðe1 Þ and lEi ðDe1 Þ, which is defined as the two fuzzy sets as: V minimum operation between V lEi ðe1 Þ lEi ðDe1 Þ = minimum [lEi ðe1 Þ lEi ðDe1 Þ] which is also called the firing strength of that particular rule. Unði; jÞ is the corresponding output level constant from

Control of a Two Link Planar Electrically-Driven Rigid Robotic Manipulator

61

Fig. 2. SOFC block diagram.

Degree of membership

1

NB

NM

NS

Z

PS

PM

PB

0.8 0.6 0.4 0.2 0 -1

-0.8

-0.6

-0.4

-0.2

0 Input

0.2

0.4

0.6

0.8

1

Fig. 3. Input and Output membership functions.

rule table. In this scheme, the robustness in FOSOFC comes from second layer which is also called as FO adaptive layer. This second layer is also a FO FPI + FPD controller but the rule base of both layers is different. The rule base for both the layer is given in the Tables 1 and 2 and the surface plot are shown in Figs. 4 and 5. It can be easily observed from the surface plot of second layer that if error and rate of error will become high, strong adaptive action will be produced by this because the rule base of second layer is more aggressive. Input and output gains of adaptive layer are considered same as first layer. The output of FOFPID controller is the summation of output of first layer fuzzy PD and fuzzy PI controller. In this scheme the output of first layer FOFPID and the output of adaptive layer FOFPID is added to find the output of FOSOFC which can be written as: h i 1 1 Z 1 u1 ðtÞ ¼ kupd u11 ðtÞ þ kupi u1 ðtÞdt

ð10Þ

62

A.T. Azar et al.

where, u11 is defined as: u11 ¼ u1f þ u1a

ð11Þ

where, u1 ðtÞ is the output of FOSOFC for first link, u11 is the summation of outputs of first layer FOFPD and adaptive layer FOFPD controller and u1f is considered as output of first layer while u1a is output of adaptive layer. Table 1. Fuzzy rule table for first layer.

1

1

0.5

0.5 Output1

Output1

Table 2. Fuzzy rule table for second layer.

0 -0.5

0 -0.5

-1 1 0.5 0 -0.5 Input2

-1 -1

-0.5

0

0.5

Input1

Fig. 4. Surface plot for first layer.

1

-1 1 0.5 0 -0.5 Input2

-1

-1

-0.5

0

0.5

Input1

Fig. 5. Surface plot for second layer.

1

Control of a Two Link Planar Electrically-Driven Rigid Robotic Manipulator

63

5 Optimization of SOFC Gains To find the optimized gains of the FOFPID and FOSOFC, a meta-heuristic algorithm namely, CSA is used in the present work [18]. This is naturally evolved algorithm, having the ability to find the optimized solution in case of multi-objective functions. Basic introduction of CSA is presented as follows. 5.1

Cuckoo Search Algorithm (CSA)

CSA is a nature inspired meta-heuristic bio-inspired algorithm which is based on the brood parasitic behaviour of some Cuckoo species in addition with Levy Flights. The idea to design this algorithm came from some species of Cuckoo which uses to lay their eggs in the nests of other birds to increase the hatching probability of their own eggs. Host birds can determine the alien eggs then they can abandon the nest or can build new nest on other places. This specific natural behaviour of Cuckoo is used to evolve this optimization algorithm which is explored as follows. A. One egg is laid by each Cuckoo at a time and dumps it in a randomly chosen nest. B. The best nests contain the healthier eggs and it will move to the next generations. C. Number of host nests is unchanged. The probability to discover the alien egg by host bird is Pa  (0, 1). In this case, the alien egg can be demolished by host bird or they can move totally in the new nest. D. After changing the old population, iteration will start from new population till the optimized solution is achieved.

6 Performance Evaluation The optimized gains obtained by CSA for FOFPID and FOSOFC techniques are listed in the Table 3. The simulation work has been carried out in MATLAB (R2014a) whereas the Simulink model was created and has been solved by fourth order Runge-Kutta method. During the simulation work, the sampling time was considered as 0.001 s. The input voltage constraint for both the links have been taken as [−12 12] V. The objective function F has been preferred as: F ¼ w1 f1 þ w2 f2

ð12Þ

Where, w1 ¼ 0:999 and w2 ¼ 0:001 are weights for f1 and f2 . Weights w1 and w2 are chosen in order to minimize the fluctuation in controller output. In the present work, f1 is considered as the summation of integral of absolute error (IAE) for both the links

64

A.T. Azar et al.

whereas, f2 is chosen as the summation of Integral of Absolute Change in Controller Output (IACCO) for both the links and it is defined in (13) and (14), respectively. Z

Z

f1 ¼ je1 jdt þ je2 jdt f2 ¼

Z

jDs1 jdt þ

Z

ð13Þ ð14Þ

jDs2 jdt

In the present trajectory tracking task, the reference trajectory have been chosen as hr1 for first link and hr2 for second link which is shown as: hr1 ¼

0:75  t2  0:25  t3 ; 0\t\2 1:5 þ 3  t  1:125  t2 þ 0:125t3 ; 2  t  4

hr2 ¼

1:5  t2  0:5  t3 ; 0\t\2 12  12  t þ 4:5  t2  0:5t3 ; 2  t  4

ð15Þ

ð16Þ

After performing the optimization task, the objective function vs. iteration curve is shown in Fig. 6 and it can be observed that the convergence rate of FOSOFC controller is faster than FOFPID controller. The value of objective function obtained are, 0.0254 and 0.0091 for FOFPID and FOSOFC controllers, respectively. It can be revealed that FOSOFC controller show 64.17% better result on FOFPID controller after comparing the objective function for trajectory tracking task. Table 3. Optimized gains of FOFPID and SOFC. Parameters FLC FOSOFC Parameters FLC 1 6.4192 4.9810 k2p 11.166 kp k1d

9.2632

k1upd k1upi 1

0.0113 k2d 8.1477 140.83 k2upd 8.4887

a

0.5816 0.0167

b

1

25.327

FOSOFC 4.8862

4.3590 7.4167

k2upi 2

10.926

0.9900 a 0.3939 b2

0.0100 44.140 130.80

0.2381 0.0833

0.5978 0.7130

FOFPID FOSOFC

Objective function

8

6

4

0.03 0.02 0.01 0

2

99.54 99.56 99.58 0 0

10

20

30

40

50

60

70

Number of iteration

Fig. 6. Cost function vs. Iteration curve.

80

90

100

Control of a Two Link Planar Electrically-Driven Rigid Robotic Manipulator

6.1

65

Trajectory Tracking

In this section, the performances of FOFPID and FOSOFC are obtained for trajectory tracking task and presented. All two set of gains have been applied in both the controllers and corresponding results were obtained for both links. The trajectory tracking task, corresponding controller output curve, error curve are shown in Figs. 7, 8 and 9, respectively. X-Y coordinates of end-point of manipulator is shown in Fig. 10. The IAE values for both the controllers for link-1 and link-2 are listed in Table 4. Based on the obtained IAE values and objective function, it can be inferred that FOSOFC yielded better result than FOFPID controller. 5

3 2 1

0.992 0.99

0 -1 0

0.5

1

x 10

1.5 1 0.5

3

3.5

-0.5 0

4

0.5

1

2 Time (s)

2.5

3

1.2

FOFPID link-1 FOFPID link-2 FOSOFC link-1 FOSOFC link-2

3.5

4

Reference FOFPID FOSOFC

1

Y-position

0.8

4 2

0.61

0.6 0.4

0.605

0.2

0 -2 0

1.5

Fig. 8. Corresponding controller output.

-3

6

Error (radian)

2

0

1.898 1.8981 1.8981 1.5 2 2.5 Time (s)

Fig. 7. Trajectory tracking performance.

8

FOFPID link-1 FOFPID link-2 FOSOFC link-1 FOSOFC link-2

2.5 Controller output (V)

4 Position (radian)

3

Reference trajectory link-1 Reference trajectory link-2 FOFPID link-1 FOFPID link-2 FOSOFC link-1 FOSOFC link-2

0.0824 0.0825 0.0826

0

0.5

1

1.5

2 Time (s)

2.5

3

3.5

4

Fig. 9. Corresponding error signal.

-0.2 0

0.2

0.4

0.6

0.8

1

1.2

Fig. 10. X-Y curve of tracked trajectory.

Table 4. IAE values. For reference trajectory tracking IAE values Objective function Link-1 Link-2 FOFPID 0.0086 0.0161 0.0254 FOSOFC 0.0022 0.0067 0.0091

1.4

X-position

For disturbance rejection IAE values Objective function Link-1 Link-2 46.590 0.02169 46.5663 0.0071 0.01470 0.0240

66

A.T. Azar et al.

6.2

Disturbance Rejection (DR)

Another important task of an adaptive controller is to minimize the effect of unavoidable disturbances present inside the control loop of a feedback system so that the output of system is not degraded. In this section the disturbance rejection study of both the controllers is performed. A disturbance is added to the output of the controller to observe the disturbance rejection capability of FOFPID and FOSOFC. The disturbance is a pulse signal of amplitude 5 V, existing from t ¼ 1 s to t ¼ 2 s. The trajectory tracking performance of this study is shown in graphical form in Fig. 11and it can be seen that after t ¼ 1 s, FOFPID controller is unable to track the desired trajectory for link-1 whereas FOSOFC shows satisfactory result. Corresponding controller output curve, error curve and X-Y plot of end-point are shown in Figs. 12, 13 and 14. After observing these curves it can be revealed that for disturbance rejection task, FOFPID controller show very poor performance but FOSOFC show much satisfactory performance. Obtained IAE values and objective functions are listed in Table 4 and same is shown in graphical form in Fig. 15. In this case study FOSOFC show 99.94% better performance on FOFPID controller after comparing the obtained objective function.

Position (radian)

25 20 15

Reference trajectory link-1 Reference trajectory link-2 FOFPID link-1 FOFPID link-2 FOSOFC link-1 FOSOFC link-2

10

3.515 3.51

10

5

3.3586 3.3586

5 0 -5 0

0.5

1

1.5

2 Time (s)

2.5

3

3.5

4

Controller output (V)

30

0 -5

-15 0

5 x 10

1.5

2 Time (s)

2.5

3

3.5

-5 -10

-10

1.5766 1.5768

1.577

-15 FOFPID link-1 FOFPID link-2 FOSOFC link-1 FOSOFC link-2 0.5

1

4

Reference FOFPID FOSOFC

1

Y-position

Error (radian)

-3

0

-5

-30 0

1

1.5

0

-25

0.5

Fig. 12. Controller output for DR

Fig. 11. Trajectory tracking for DR

-20

FOFPID link-1 FOFPID link-2 FOSOFC link-1 FOSOFC link-2

-10

0.5 0 -0.5

1.5

2 Time (s)

2.5

3

3.5

Fig. 13. Error for disturbance rejection.

4

-1 -1

-0.5

0

X-position

0.5

1

1.5

Fig. 14. X-Y curve for disturbance rejection.

IAE values

Objective function

Reference trajectory tracking FOFPID

Link 1

Link 2

IAE values

67

46.5663 0.024

0.02169 0.0147

Link 2

46.59 0.0071

Link 1

0.0254 0.0091

0.0161 0.0067

50 40 30 20 10 0

0.0086 0.0022

Control of a Two Link Planar Electrically-Driven Rigid Robotic Manipulator

Objective function

Disturbance rejection FOSOFC

Fig. 15. Bar chart of IAE for trajectory tracking and disturbance rejection.

7 Conclusions In the present work, Fractional Order Self Organizing Fuzzy Controller (FOSOFC) is presented to control a nonlinear, multi-input multi-output complex system, two link electrically-driven rigid robotic (EDRR) manipulator system. FOSOFC is a type of intelligent adaptive controller and it has the strong capability to deal with such type of complex systems. To show the effective behavior of the FOSOFC, the obtained performance is compared with fractional order fuzzy proportional integral and derivative (FOFPID) controller for trajectory tracking as well as the disturbance rejection study also. A meta-heuristic bio-inspired algorithm, Cuckoo Search Algorithm is used to find the gains of the controller. In trajectory tracking study, 64.17% and in disturbance rejection study, 99.94% improvements are observed by FOSOFC on FOFPID controller which reveals that FOSOFC controller show much superior performance than FOFPID controller.

References Åström, K.J., Wittenmark, B.: Adaptive Control. Dover Publications, Mineola (2008) Zadeh, L.A.: Fuzzy algorithms. Inf. Control 12, 94–102 (1968) Zadeh, L.A.: Fuzzy sets. Inf. Control 8, 338–353 (1965) Zadeh, L.A.: The concept of a linguistic variable and its application to approximate reasoning - Part I. Inf. Sci. 8, 199–249 (1975) 5. Mamdani, E.H., Assilian, S.: An experiment in linguistic synthesis with a fuzzy logic controller. Inf. Sci. 7, 1–13 (1975) 6. Mamdani, E.H.: Application of fuzzy algorithms for control of simple dynamics plant. Proc. Inst. Electr. Contr. Sci. 121, 1585–1588 (1974) 7. Mamdani, E.H., Assilian, S.: An experiment in linguistic synthesis with a fuzzy logic controller. Int. J. Hum Comput Stud. 51, 135–147 (1999) 1. 2. 3. 4.

68

A.T. Azar et al.

8. Mamdani, E.H.: Prescriptive method for deriving control policy in a fuzzy logic controller. Electron. Lett. 11, 625–626 (1975) 9. Mamdani, E.H., Procyk, T., Baaklini, N.: Application of fuzzy logic to controller design based on linguistic protocol. Discrete Systems and Fuzzy Reasoning, pp. 125–149. Queen Mary College, University of London (1976) 10. Holmblad, L.P., Ostergaard, J.J.: Control of a cement kiln by fuzzy logic. In: Fuzzy Information and Decision Process, pp. 389–399. North-Holland (1982) 11. Procyk, T.J., Mamdani, E.H.: A linguistic self-organizing process controller. Automatica 15 (1), 15–30 (1979) 12. Yamazaki, T., Mamdani, E.H.: On the performance of a rule-based self-organizing controller. In: Proceedings of the IEEE International Conference on Application of Adaptive and Multivariable Control, Hull, England, pp. 50–55 (1982) 13. Lin, J., Lian, R.-J.: Stability indices for a self-organizing fuzzy controlled robot: a case study. Eng. Appl. Artif. Intell. 23, 1019–1034 (2010) 14. Sharma, R., Rana, K.P.S., Kumar, V.: Performance analysis of fractional order fuzzy PID controllers applied to a robotic manipulator. Expert Syst. Appl. 41(9), 4274–4289 (2014) 15. Kumar, V., Rana, K. P.S., Kumar, J., Mishra, P.: Self-tuned robust fractional order fuzzy PD controller for uncertain and nonlinear active suspension system. Neural Comput. Appl. 1–17 (2016). doi:10.1007/s00521-016-2774-x 16. Ghoudelbourk, S., Dib, D., Omeiri, A., Azar, A.T.: MPPT control in wind energy conversion systems and the application of fractional control (PIa) in pitch wind turbine. Int. J. Modell. Ident. Control 26(2), 140–151 (2016) 17. Huang, A.-C., Chien, M.-C.: Adaptive Control of Robot Manipulators a Unified Regressor-Free Approach. World Scientific, Singapore (2010) 18. Yang, X.-S.: Nature-Inspired Optimization Algorithms, 1st edn. Elsevier, London (2014)

Wavefront and A-Star Algorithms for Mobile Robot Path Planning Issa Mtanos Zidane and Khalil Ibrahim(&) Department of Mechanical Engineering, Faculty of Engineering, Assiut University, Asyut, Egypt [email protected], [email protected]

Abstract. In the last years, many strategies of route planning have been invented. But some problems still be there, such as dead end, U-shape, shortest path, and the required time which is the main element if the environment is dynamic. The main idea of this paper is how we can reduce the required time when we deal with a picture with any size which represents the map to explore the main elements (Obstacles, Target, Robot position) from it and finding the shortest path for the robot to move. Instructions of movement depend basically on WAVEFRONT Algorithm (WFA) and A_STAR (A*) algorithm. By using MATLAB software we can make a simulation for algorithms that applied on the map that figured out from image processing to find the shortest path between target and robot position without collision with obstacles and calculate the processing time. Keywords: Path planning  Image processing algorithm  Matlab software

 Wavefront algorithm  A_star

1 Introduction Ambulant robots which move by their self-control are demanded in robotic fields to do jobs in environments such as hazardous, chemical, burning, radiating, and war environments where people can’t intervene. These robots must be on a high degree of intelligence to execute their missions by their own decision [1]. The backbone of the decision depends mainly on the used algorithm to find the optimal path. So many approaches were used to find proper robot’s path of the given environment. These approaches are divided into deterministic, heuristic and randomized algorithms. Deterministic algorithms are commonly preferred when the size of the map is low that’s mean degrees of freedom of the representative are limited, that leads to find paths with low quality of smartness. The environment acts a significant role in path planning problems. Based on nature of the location of work, path planning can be classified as offline and online. Planning includes finding a sequence of activities that convert beginning state into desired target state. We can decide if the robot’s path is the best one or not by its transition cost, whenever the cost is minimum, the path will be more optimal. Also, the strategy becomes more accurate if it produces the optimal track in proper time when the path really exists, or makes a note of telling us that there isn’t any path exist [2]. There are various methods to plan a movement track from the map, Some of the commonly used algorithms are Dijkstra algorithm, A* algorithm [3], © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_7

70

I.M. Zidane and K. Ibrahim Table 1. Stages of Dijkstra’s algorithm improvement until reach to A_STAR

Name of inventor Edsger Dijkstra “1959” Nils Nilsson “1964” Bertram Raphael “1967” Peter E. Hart “1968”

The development

Name of algorithm The basic algorithm Dijkstra’s algorithm Created a heuristic-based method to increase the quickness of A1 Dijkstra’s algorithm Prepared major enhancements upon this algorithm, and tried A2 to present optimality but failed Presented a dispute that proved A2 was optimal when using a A* conformable heuristic with only small modifications

breadth-first search (BFS), depth-first search (DFS), wavefront-based planners, and rapidly exploring random trees [4, 5]. But among the previous algorithms, the wavefront and A_star are the simplest and fastest algorithms and they will be depended for this project [6]. The A* (A_star) algorithm is a development of Edsger Dijkstra’s algorithm in 1959. The stages of development showed in the Table 1 [7]. A* obtains better execution (with respect to the shortest path) by using heuristics. The A* algorithm joins characteristics of pure heuristic search and uniform-cost search to usefully compute optimal solutions. The main principle of this method depends on the cost function F(x) which used to calculate the distances from the start and the goal position for each point [8]. On the other hand, The wavefront planner (also known as grassfire) is an effective method to plan the shortest possible path on a grid map [9]. The wavefront propagation algorithm has appeared as the controlling method for path planning in discrete grid maps [10]. The strategy is based on the spreading of wavefronts that encrypt the distance from the robot’s current location to any point in its environment until reach the target location. Each wave generates a higher value than the previous wave. The shortest path can be determined by choosing target point on the map and then following the highest descent of wavefronts back to the source [11]. In the presented algorithms the robot’s environment is obtained by a vision sensor. Robots basically need many sensors to tell them if there are any obstacles in the environment, for that reason vision sensor can be used. This kind of sensors provides us with a huge amount of important information about the details of the map comparing with other types of sensors such as ultrasonic sensors, touch sensors, IR sensors, which present specific information about the distances or degrees of colures. Cameras are the basic part of the vision sensors, which capture the image of the environment either by use a horizontal camera which watch the environment from a high place, or an overhead camera mounted on the front of robot. In this paper a horizontal camera is used to send the captured picture to computer by wireless device, then Matlab software will take the image and uses image processing toolbox to figure out the details of the environment (obstacles, spaces), then makes a simulation for finding the optimal path by using A_STAR and wavefront algorithms, as the Fig. 1 illustrated [12].

Wavefront and A-Star Algorithms for Mobile Robot Path Planning

71

Fig. 1. The work system

The purpose work is to create the optimal path by dealing with sectors of points that taken from the picture instead of dealing with each point or pixel. That’s logic because the size of the robot will cover a group of pixels; this idea will help the algorithms to reduce the processing time because each sector will take an average value for a set of neighbor points. The picture of the environment will be subjected to a series of operations to remove noise and unwanted information and obtain main elements such as obstacles, empty spaces, target position and current position. These details are used by the proposed algorithms to create the optimal shortest path from the source to the destination location of the robot without a crash. By using MATLAB software we will make a simulation for robot movement according to WFA and A* instructions, and we will show the time spent on creating the proper path. This paper is organized as follows: Sect. 2 presents how we can deal with the image which captured by a horizontal camera and all required operations to get a clear image to be used by the enhanced algorithms (WFA and A*). Section 3 explains the wavefront algorithm with its two approaches 8 sector connectivity or 4 sector connectivity. In Sect. 4 A* algorithm will particularly be described. Then we will view results and analysis of this study in Sect. 5. Section 6 presents limitations and suggested solutions. Finally, future scope and conclusion in Sect. 7.

2 Image Acquisition and Processing The image of the environment contains a lot of details which represent the inputs of the image processing toolbox in Matlab software. The output form of image processing could be numbers or characteristics related to the main image of the environment. In this days, robotic applications which use vision sensors as a camera are quickly expanding, that because they provide us with a wealthy data about the environment compare with traditional sensors which present a specific information about distance or degree of colors. Also, webcams are descending in cost more quickly than any other

Fig. 2. Virtual reality

72

I.M. Zidane and K. Ibrahim

sensor [13, 14]. An image of the environment is obtained by a horizontal camera as showed in Fig. 2, which in turn send this image to Matlab software. Fundamental morphological instructions are executed on this image by using Image Processing toolbox [15] to be released from the noise and unnecessary details and figure out the current location of the robot, obstacles with its shapes, spaces, and target [12]. The steps given below in Fig. 3 are followed to get the final image before applying Wavefront and A* algorithms.

Fig. 3. Stages of dealing with the captured image of the environment

We can see the previous steps in Matlab simulation of image processing, as the next three stages in Fig. 4:

Image of Environment

Binary image

Fig. 4. Stages of simulation

Clear Image without noise or unwanted distortion

Wavefront and A-Star Algorithms for Mobile Robot Path Planning

73

3 Wavefront Algorithm (WFA) The wavefront mapping algorithm provides us with a very simple and operative implementation that creates a path for the robot with proper time fulfillment. This algorithm includes a width first search of the graph starting at the target sector until it reaches the start sector. First, sectors of obstacles are indicated with a ‘1’ and the destination sector is marked with any minor number other than ‘1’ such as ‘2’. Wavefront sectors matrix is created either by using 8 sector connectivity or 4 sector connectivity. The obstacle avoiding track is specified by any continuous sequence of decreasing matrix element values that lead to the target [12]. 3.1

Wavefront Based on 4-Sector Connectivity First step: give a value greater than ‘1’ to the target sector such as ‘2’. Then give the value ‘3’ to four neighbor sectors of target and value ‘4’ to the neighbor sectors of value ‘3’. Second step: keep increasing the value for each 4 adjacent sectors until reach to start one. Third step: when the start sector is reached, the path will be found by following the values in reverse arrangement from the greatest value (start position) until the lowest value (target position) except the value ‘1’. All steps illustrated in Fig. 5

0 0 0 0 0

4 0 1 0 0

3 4 1 1 0

2 3 4 0 0

3 4 0 0 0

5 6 7 8 9

4 5 1 9 8

2 3 4 5 6

3 4 1 1 7

3 4 5 6 7

5 6 7 8 9

4 5 1 9 8

3 4 1 1 7

2 3 4 5 6

3 4 5 6 7

Fig. 5. Stages of WFA based on 4_sector connectivity from left to right

3.2

Wavefront Based on 8-Sector Connectivity

All stages are similar to that used in 4-sector connectivity. But here we examine the eight neighbor sector of the current sector instead of four as illustrated in Fig. (6) [14].

0 0 0 0 0

0 0 1 0 0

3 3 1 1 0

2 3 0 0 0

3 3 0 0 0

5 5 6 7 8

4 4 1 7 7

3 3 1 1 6

2 3 4 5 6

3 3 4 5 6

5 5 6 7 8

4 4 1 7 7

3 3 1 1 6

Fig. 6. Stages of WFA based on 8_sector connectivity from left to right

2 3 4 5 6

3 3 4 5 6

74

I.M. Zidane and K. Ibrahim

4 A_Star (A*) Algorithm A* is one of the various search approaches that receives an input, calculates a several of possible tracks and produces a solution. A* (as “A_star”) is a computer science algorithm that is greatly used in path planning and graph traversal (the operation of plotting a reliable traversable path between positions). A* uses a best-first search and creates a path with least cost from a given start sector to the desired one. As A* crosses the map, it follows a track of the lowest known heuristic cost, keeping an arranged priority queue of consecutive track sectors along the path. This algorithm has a high accuracy because it takes into account the sectors that have already been calculated. This algorithm finds the least-cost track to the sector which makes it a best-first search algorithm. The basic principle of this method depends on the equation f(x) = g(x) + h (x) where X is a sector on the map, g(x) is the total distance from the start sector to the current one “X”, h(x) is the heuristic function that is used to calculate distance from the current position “X” to the desired location. This method produces a way by which the robot explores another path once it reaches a dead end, and avoids paths that lead to a dead end. This is done by creating two lists CLOSED and OPEN. Closed list and open list are the basic characteristics for building the A* algorithm, “closed list” used to

Fig. 7. Flow chart of A_star algorithm

Wavefront and A-Star Algorithms for Mobile Robot Path Planning

75

write and save evaluated sectors that have been tested, “open list” used to record adjacent sectors to those already calculated, and calculate the distances moved from the “initial sector” with distances to the “target sector” and also saves the parent sector of each sector, these parents are used at the last step of the algorithm to plan the track from the target to the Start location, therefore finding the optimal path [8]. The A_star algorithm is illustrated in Fig. 7.

5 Results and Discussion Each picture after divide into sectors will be as Fig. 8

Fig. 8. Represent the environment by using sectors

5.1

First Test Using WFA

We will take an image in Fig. 8 and apply the two approaches (4_sector and 8_sector connectivity) on it, and compare the results in the Table 2. Table 2. Comparisons between 4_sector connectivity and 8_sector connectivity Parameters Code complexity

4_sector connectivity Simple

target

Optimal Path shape

8_sector connectivity More complex

start

target

start

Time to finish

132.993 [sec]

Path length

625 [sector]

143.106 [sec] 563 ector]

76

I.M. Zidane and K. Ibrahim

5.2

Second Test Using WFA

A maze is a complex shape that can be solved by wavefront algorithm such as Fig. 9.

Fig. 9. 4_sector connectivity VS 8_sector connectivity

Table 3 shows a comparison between basic parameters of each approach. Table 3. Results of simulation maze map solved by 4_sector and 8_sector connectivity Parameters Sectors explored Number of turns Total angel turned Time to finish Path length

5.3

4_sector connectivity 15616 27 2430[degrees] 6.280[sec] 471 sectors

8_sector connectivity 15617 20 900 [degrees] 7.873[sec] 383 sectors

Third Test Using A_STAR

Let’s take the Fig. 8 and implement A* algorithm (Table 4).

Table 4. Results of implementation A* algorithm Code complex

Very complex

Optimal path shape

Number of turns Time to finish contained image processing time

6 5356.735 [second]

Wavefront and A-Star Algorithms for Mobile Robot Path Planning

77

This algorithm also can solve a maze shape, as we can see in Fig. 10.

Fig. 10. Virtual maze solved by A_Star algorithm

The MATLAB simulation of this algorithm takes a lot of time because it consists of many files, the main file (A_STAR.m) that contains the algorithm which we need to execute it to run the program, the sub-function ‘distance’ which calculate the distance between the sectors, another sub function to take a sector and returns the widened list of successors, sub-function to calculate the cost function for each sector of successors, also we need a sub-function to choose the smallest cost function between the successors, ‘index’ sub-function to save the index of the sectors that have the smallest cost function and organize them to create an optimal path. 5.4

Fourth Test Using A_STAR and WFA

Figure 11 represents the model of the environment. This environment consists of some obstacles, noise, and spaces. The required work is to capture the image and send to Matlab to determine the size of the photo and gather the pixels to make sectors, and then apply the algorithms to find the proper path. Then image processing toolbox applies its instructions to convert the image to binary image without noise, and determine the obstacles and empty space positions as shown in Fig. 12.

50

100

150

200

250

300

350

400

450

500 50

Fig. 11. Original image

100

150

200

250

300

350

400

Fig. 12. Binary image

450

500

78

I.M. Zidane and K. Ibrahim

After that, we choose start and goal sector on the map, then wavefront algorithm with 8_sector connectivity and A* algorithm will be applied to find the optimal and shortest path between the beginning position and desired position, as we see in the Table 5. Table 5. Comparison between A_STAR and WAVEFRONT 8_sector algorithm parameter

Wavefront algorithm

A_star algorithm

relatively Small Longer than A_STAR

So great Relatively short

Optimal path shape

Time execution Path length

5.5

Relation Between Number of Sectors and the Required Time

We repeated the algorithms for one map but in each time we changed the number of sectors and scored the time required for finding the optimal path such as Fig. 13.

Fig. 13. Map with a different number of sectors

We can note the relation between the number of sectors and the required time from the Fig. 14.

Fig. 14. Relation between number of sectors and the required time

Wavefront and A-Star Algorithms for Mobile Robot Path Planning

79

As we see from the previous figure we can conclude that the required time increases when the number of sectors increases because each sector will take apart of time to be examined. 5.6

Relation Between Number of Sectors and the Optimal Path

Number of sectors is a very important factor to path planning because the Track consists of links between the sectors. When the sectors increase, the links between them become more accurate and the distances become shorter between each two neighbor links such as in Fig. 15. The four paths represent a different number of sectors, the first path represents the smallest number of sectors Fig. 15. Relation between number of sectors and the so the links between them optimal path will be longer than the other paths. The resolution becomes greater when the sectors increase because the additional sectors provide us with additional angles of movement as we see in the fourth path which is the optimal path.

6 Limitations and Suggested Solutions • Using sectors instead of points reduce the image size by using instructions of image processing toolbox but that may deform the image features. • Image processing has a lot of considerations which cause significant problems when the obstacles have the same color of the background, so we can’t distinguish the obstacles by using a horizontal camera, for that we can use another camera with another angle to find the obstacle from its high. Also if there’s a gap filled with water, here we can use edge detection properties from image processing toolbox. • The complexity of the algorithms increases with increase in the number of details on the map, so the number of sectors will be bigger. • The main drawback of A* algorithm and indeed of any best-first search is its memory requirement to execute its mission, so if we can reduce the number of functions in each algorithm, the requested size of memory will be smaller and also the processing time.

80

I.M. Zidane and K. Ibrahim

7 Conclusions and Future Scope This study produced a simulation for robot navigation system with obstacles avoiding, depending on dividing the image into sectors to reduce the processing time. MATLAB software helped us to build wavefront and A_star (A*) algorithms to find the optimal path according to environment’s map. In this study, some problems were solved such as required time, dead end, U shape and shortest path. Mobile robot path planning is a very wide domain with its two branches online or offline. So a lot of algorithms and technics still be developed to provide optimal solutions for all considerations that they face. Future work would be to translate the created optimal path into commands to send to actual robot. In future, the domain of work can be extended further by increasing the number of robots. Also, the same technic can be developed for navigation through video processing (a series of images).

References 1. Hachour, O.: The proposed genetic FPGA implementation for path planning of autonomous mobile robot. Int. J. Circ. Syst. Sig. Process. 2(2), 151–167 (2008) 2. Ferguson, D., Likhachev, M., Stentz, A.: A guide to heuristic-based path planning. School of Computer Science, Carnegie Mellon University Pittsburgh, PA, USA. American Association for Artificial Intelligence (2005). www.aaai.org 3. Sariff, N., Buniyamin, N.: An overview of autonomous mobile robot path planning algorithms. In: Proceedings of 4th Student Conference on Research and Development, pp. 183–188 (2006) 4. Buniyamin, N., Sariff, N., Wan Ngah, W.A.J., Mohamad, Z.: Robot global path planning overview and a variation of ant colony system algorithm. Int. J. Math. Comput. Simul. 5(1), 9–16 (2011) 5. Ali, M.A.H., Mailah, M., Hing, T.H.: Path planning of mobile robot for autonomous navigation of road roundabout intersection. Int. J. Mech. 6(4), 203–211 (2012) 6. Galve, R.O.: Laser-based obstacle avoidance for mobile robots. Bachelor’s thesis, Technical University of Denmark, May 2008 7. http://en.wikipedia.org/wiki/. A* search algorithm 8. Reddy, H.: Path Finding - Dijkstra’s and A* Algorithm’s, 13 December 2013 9. Ryther, C.A., Madsen, O.B.: Obstacle detection and avoidance for mobile robots. Technical University of Denmark (2009) 10. Al-Jumaily, A., Leung, C.: Wavefront propagation and fuzzy based autonomous navigation. Int. J. Adv. Robot. Syst. 2(2), 93–102 (2005) 11. Naumov, V., Karova, M., Zhelyazkov, D., Todorova, M., Penev, I., Nikolov, V., Petkov, V.: Robot path planning algorithm. Int. J. Comput. Commun. 9 (2015) 12. Chandak, A., Gosavi, K., Giri, S., Agrawal, S., Kulkarni, P.: Path planning for mobile robot navigation using image processing. Int. J. Sci. Eng. Res. 4(6), 1490–1495 (2013) 13. Shojaeipour, S., et al.: Vision-based mobile robot navigation using image processing and cell decomposition. In: IVIC 2009. LNCS, vol. 5857, pp. 90–96 (2009) 14. Campbell, J., Sukthankar, R., Nourbakhsh, I., Pahwa, A.: A robust visual odometry and precipice detection system using consumer-grade monocular vision. In: Proceedings of ICRA 2005, Barcelona, Spain (2005) 15. Hachour, O.: Path planning of Autonomous Mobile robot. In: 15th WSEAS International Conference on Systems, vol. 2(4), pp. 178–190 (2008)

Novel Multi-input Multi-output Brain Emotional Learning Based Intelligent Controller for PUMA 560 Robotic Arm Mohamed Hamdy El-Saify1(&), Gamal Ahmed El-Sheikh2, and Ahmed Mohamed El-Garhy1 1

2

Faculty of Engineering, Helwan University, Cairo, Egypt [email protected] Pyramids High Institute for Engineering and Technology, 6th of October, Giza, Egypt

Abstract. A novel Multi-Input Multi-Output Brain Emotional Learning Based Intelligent Controller (MIMO-BELBIC) is introduced and applied as a controller of PUMA 560 robotic arm. PUMA 560 model is strongly coupled highly nonlinear model, which necessitate effective controller capable of dealing with high degree of coupling and nonlinearity. Furthermore, the robot is subjected to many sources of disturbances, which can affect the performance significantly. Mathematical model of MIMO-BELBIC is introduced and tailored to work as a controller of PUMA 560. Moreover, new optimization algorithm, designed especially for this problem, is used to optimize the 51 parameters of the controller. The results show remarkable success of the proposed controller in decreasing the tracking error (with/without) disturbances in comparison to the traditional PID controllers that were optimized by two different algorithms. Moreover, the proposed controller has minimal control effort with respect to the PID controllers. Keywords: Brain emotional learning  MIMO-BELBIC  Robot  Optimization  Control  Mathematical modeling

1 Introduction The past decades have witnessed the emergence and flourish of the Artificial Intelligence (AI). Nowadays, it is one of the hottest topics in many engineering fields. In the heart of AI are the bio-inspired AI systems. Genetic algorithms, artificial neural networks, particle swarm optimization, ant colony optimization and others are some of the bio-inspired AI systems. Recently, a new member was added to the family of bio-inspired AI systems. Brain emotional learning model since it was introduced [1, 2] and shared for control purpose [3] had attracted many researchers. The Brain Emotional Learning Based Intelligent Controller (BELBIC) is preferred due to its simplicity, fast training and low computation effort [4]. However, BELBIC is used as a Single-Input single-Output (SISO) system since it was introduced. Recently, we proposed a new architecture of brain emotional learning, which is MIMO, and deployed it as a decoupler for strongly coupled distillation columns [5]. In this research, we tailor the © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_8

82

M.H. El-Saify et al.

proposed MIMO brain emotional model to work as a MIMO controller (MIMO-BELBIC) for the first time. Mathematical formulation of the Problem in hand, which is the dynamic equations of PUMA 560 robot, is studied and the challenges are addressed. In addition, the mathematical model of the MIMO-BELBIC is proposed. The Mathematical model of the MIMO-BELBIC shows a challenging problem that faces the designer, which is optimizing the parameters of the model. The number of parameters to be optimized varies according to the size of the controller (number of inputs and outputs) and the number of sensory and reward signals. In this research, the position control of PUMA 560 robot requires a 3 input/3 output controller. The controller has 51 parameters to be optimized. The search space is large and may have many local optima that trap conventional optimization algorithms, such as Particle Swarm Optimization (PSO). Furthermore, this optimization may be a time consuming process or need many resources due to the complexity of the computations. In this regard, we introduced a new improved optimization algorithm [6] for global optimization in multimodal problems for systems with limited resources. This algorithm proves its ability to avoid trapping in local optima using low computational effort compared to PSO, genetic algorithms and many others, such as FGLT-PSO [7]. Although we provide this optimization algorithm to overcome the challenging optimization problem of MIMO-BELBIC, the optimization algorithm can be used for a wide range of optimization problems. The rest of this paper is organized as follows: the dynamic model of PUMA 560 is presented and studied in Sect. 2. The proposed MIMO-BELBIC model is presented in Sect. 3. In Sect. 4, the results are listed and analyzed. Finally, the paper is concluded in Sect. 5.

2 PUMA 560 Dynamics Model A robotic arm is constituted by a kinematic chain, which is a set of rigid bodies (links), attached to articulations (joints) that permit the relative motion between two elements. The PUMA 560 robot has six links and six Degrees of Freedom (DOF), which are rotary type joints. The first three DOF’s, located in the arm, allow determining the robot position while the following three DOF’s, located in the end effector, provide the orientation. In order to control a robot, many aspects have to be studied. Kinematics, dynamics, actuation, sensing, motion planning and motion control are some of these aspects [8]. Kinematics studies the motion of bodies (joints and links) in a robotic mechanism without regard to the forces/torques that cause the motion. Kinematics is the most fundamental aspect of robot design, analysis, control, and simulation. On the other hand, the dynamic equations of motion provide the relationships between actuation and contact forces acting on robot mechanisms, and the acceleration and motion trajectories that result. The following dynamic model of PUMA 560 is built based on the kinematics convention of Khalil and Dombre [9], which is an adaptation of Denavit-Hartenberg (D-H) convention [10]. The main concept of D-H convention is to attach a reference frame to each link of the robot, then to locate any reference frame relative to another. This convention considers the links as rigid bodies, and it is suitable for serial chain (not branched) manipulators.

Novel Multi-input Multi-output Brain Emotional Learning

83

Many formulations can be employed to derive the dynamic model of a manipulator, Lagrange-Euler, Newton-Euler and d’Alembert equations are good examples of these formulations. Lagrange-Euler (L-E) formulation is an energy-based approach. It is widely used because it is simple and systematic. The L-E equation is applied to all the links of the manipulator to find the torque vector applied to its joints. The dynamic model of a manipulator can be expressed as:   AðqÞ:€q þ BðqÞ:½q_ q_  þ C ðqÞ: q_ 2 þ GðqÞ ¼ C

ð1Þ

where q is n  1 position vector, A(q) is n  n inertia matrix of the manipulator, B(q) is n  n(n–1)/2 matrix of Coriolis torques, C(q) is n  n matrix of Centrifugal torques, G(q) is n  1 vector of gravity terms, and C is n  1 vector of torques. In this context, the configuration space equation presented in [11] will be used. The robot is disassembled and the inertial properties of each link are found. For position control of PUMA 560, q4, q5 and q6 are set to zero. To put Eq. (1) in form that is more suitable (i.e. the resulting acceleration in one side while the input torque and the robot dynamics in the other), we set:     T ¼ C  BðqÞ:½q_ q_  þ CðqÞ: q_ 2 þ GðqÞ

ð2Þ

By solving for the first three joints, this yield: €q ¼ A1 ðqÞ:T

ð3Þ

  : : : : : : : 2 : 2 T1 ¼ C1  ðb112 :q1 q2 þ b113 :q1 q3 þ b123 :q2 q3 Þ  c12 :q2 þ c13 :q3

ð4Þ

  T2 ¼ C2  ðb223 :q_ 2 q_ 3 Þ  c21 :q_ 21 þ c23 :q_ 23  G2

ð5Þ

  T3 ¼ C3  c31 :q_ 21 þ c32 :q_ 23  G3

ð6Þ

where:

The configuration space Eq. (3) and its components (4–6) show the high degree of nonlinearity and strong coupling between the links. For example, T1 value implies that the motion of link 1 will depend on the joint velocities of links 2 and 3 ðq_ 2 ; q_ 3 Þ. Furthermore, b112, b113, b123, c12 and c13 depends on the positions of links 2 and 3. Links 2 and 3 are also coupled with other links. More details and constants’ values are listed in [11]. In industrial and commercial robot arms, controllers are usually PID controllers. However, the dynamics is highly nonlinear with strong couplings between joints, which results in complicating the task of a simple PID controller, especially if the velocities and accelerations of the robot are high [12]. In robotic manipulators, many sources exert disturbances to the system. They can be divided in two main parts, internal disturbances and external disturbances. The internal disturbances contain unmodeled dynamics and uncertainties. On the other hand, the external disturbances include external forces on end-effector (in many robotic

84

M.H. El-Saify et al.

tasks, such as deburring, grinding and precision assembly, the end-effector of the robot is in contact with environment), friction in joints, and torque ripple of the actuators. In fact, disturbances affect the performance of the system significantly [13]. These points of interests are studied and tested in simulation environment in the next sections.

3 The Proposed MIMO-BELBIC Controller The BELBIC model introduced in [3] has one output. It is used widely to control SISO linear and non-linear systems [14, 15]. In [5], we introduced MIMO architecture of brain emotional learning, and then deployed it to work as a decoupler for 4 input/4 output strongly coupled system. In this research, we propose MIMO-BELBIC to work as a controller of MIMO systems for the first time. This configuration allows the model to control every loop/output taking into considerations the state of other loops/outputs. This property allows compensating for the interactions between loops and provides more stable performance. Figure 1 shows the MIMO architecture of brain emotional learning and the following equations specifies its operations. More details are available in [5]. A1th ¼ maxðS1i Þ; . . .; ANth ¼ maxðSNi Þ

ð7Þ

A1i ¼ S1i V1i ; . . .; ANi ¼ SNi VNi    X DV1i ¼ a1 S1i max 0; Rew1  A ; . . .; 1j j    X A DVNi ¼ aN SNi max 0; RewN  Nj j

ð8Þ

O1i ¼ S1i W1i ; . . .; ONi ¼ SNi WNi       DW1i ¼ b1 S1i E10 Rew1 ; . . .; DWNi ¼ bN SNi EN0 RewN E1 ¼

X i

A1i 

X i

O1i ðincluding A1th Þ; . . .; EN ¼

X i

ANi 

X i

ð9Þ ð10Þ ð11Þ

ONi ðincluding ANth Þ ð12Þ

X A1i  O1i ðnot including Ath Þ; . . .; i X X A  ONi ðnot including Ath Þ EN0 ¼ i Ni i

E10 ¼

X

i

Si1 ¼ fi1 ðe1 ; . . .; eN ; u1 ; . . .; uN ; y1 ; . . .; yN Þ; . . .; SiN ¼ fiN ðe1 ; . . .; eN ; u1 ; . . .; uN ; y1 ; . . .; yN ÞZ Rew1 ¼ J1 ðS1i ; . . .; SNi ; e1 ; . . .; eN ; u1 ; . . .; uN ; y1 ; . . .; yN Þ; . . .; RewN ¼ JN ðS1i ; . . .; SNi ; e1 ; . . .; eN ; u1 ; . . .; uN ; y1 ; . . .; yN Þ

ð13Þ

ð14Þ

ð15Þ

Some researchers use BELBIC to modify the main controller online. In this research, we use BELBIC as a main controller. As shown in Fig. 2, BELBIC as a main

Novel Multi-input Multi-output Brain Emotional Learning

85

controller consists of sensory inputs generator and reward signals generator in addition to BELBIC itself. In MIMO-BELBIC, we extend this architecture to work as MIMO controller. The proper choice of sensory inputs and reward signals is essential to achieve good performance. The position control of the PUMA 560 end-effector requires control of the first three joints of the arm. 3 inputs/3 outputs BEBLIC is developed to control the arm. We generate nine sensory inputs and three reward signals. The sensory signals are divided into three groups, three signals each. Each group of sensory signals is fed to A nodes and O nodes belong to one controller output. Ath is set to zero. The MIMO-BELBIC is connected as a main controller as shown in Fig. 2. The sensory and reward signals are generated from the error signals of the three joints. The error signals are the differences between the PUMA 560 outputs and the reference signals. The following equations represent the first group of sensory inputs, which are related to the MIMO-BELBIC output u1: Z s11 ¼ kp11 e1 þ ki11

e1 dt

ð16Þ

e2 dt

ð17Þ

e3 dt

ð18Þ

Z s12 ¼ kp12 e2 þ ki12 Z s13 ¼ kp13 e3 þ ki13

The kp11, kp12,…, etc. are gains to be optimized. The following equation represents the first reward signal: d Rew1 ¼ krp11 e1 þ krd11 e1 þ kri11 dt

Z

d e1 dt þ krp12 e2 þ krd12 e2 þ kri12 dt Z d þ krp13 e3 þ krd13 e3 þ kri13 e3 dt dt

Z e2 dt ð19Þ

The krp11, krd11,…, etc. are gains to be optimized. The rest of sensory inputs and reward signals equations are defined by the analogy to Eqs. (16–19). Note that the above gains (kp11, ki11, kp12, ki12 …etc.) are related to the control signal u1 and it will be called (kp21, ki21, kp22, ki22 …etc.) for u2 and so on. The optimization of this controller is a challenging problem. PSO failed to provide acceptable results. Every time PSO is done, it provides a different unacceptable result, which implies that it is trapped in a local optimum. In this regard, an improved PSO algorithm is proposed to overcome this challenge. We introduced this optimization algorithm to solve the MIMO-BELBIC optimization problem, but it proved its superiority in optimizing multimodal multidimensional problems with limited resources. It provides minimal computation effort which is vital for many modern/smart limited resources devices (such as smart phones, Internet of Things devices (IoT), self-driving cars … etc.). The proposed algorithm, Improved Clustered Optimized Particle Swarm

86

M.H. El-Saify et al.

Optimization (ICO-PSO), is explained in details in [6]. ICO-PSO is used to optimize the MIMO-BELBIC gains and learning rate constants (a1,2,3, b1,2,3). Four test cases are applied. In three cases, a step input is applied as a reference signal at one of the joints while the other two joints should maintain their initial position. These cases test the controller ability to control one joint while compensating for decoupling at the other joints in order to maintain their initial position. In the fourth case, the step input is applied to all joints. This case tests the accuracy of the controller to control all joints simultaneously despite the high degree of nonlinearity and coupling. The tracking error is computed in all four cases. This error is considered as the cost function of the optimization. The tracking error is converted to absolute value, and then it is integrated over the simulation time. The transient response is vital in the arm performance. Transient response includes many points of interest such as the rise time

Fig. 1. Graphical depiction of MIMO brain emotional learning

Novel Multi-input Multi-output Brain Emotional Learning

87

and overshoots. In order to enhance the transient response, we add tracking error in the transient response to the cost function again to increase its impact. The cost function Fm is given by: Fm ¼

4 X 3 X i¼1 j¼1

0 @

Zt¼5 t¼0

  eij dt þ

tZ ¼1:5

1   eij dtA

ð20Þ

t¼1

where i represents the test case number and j represents the output number (the joint number). For example, e21 represents the tracking error at output 1 in test case number 2. The test cases are listed in Table 1. The total simulation time is 5 s. The step response is applied at t = 1 s. We consider the time from t = 1 s to time t = 1.5 s as the time of transient response. Adding the tracking error in transient time to the total tracking error again means it is taken into consideration twice. This technique will emphasize the tracking error impact in the transient response in the optimization problem. Another advantage of this technique is emphasizing the effect of coupling on

Fig. 2. MIMO-BELBIC as a main controller Table 1. Test cases of the MIMO-BELBIC controller and PID controllers Inputs r1 r2 r3

Test case 1 Test case 2 Test case 3 Test case 4 Step 0 0 Step 0 Step 0 Step 0 0 Step Step

other joints when it should maintain its initial position in the first three cases. The PID controllers are the traditional controllers of PUMA 560 robotic arm. Each PID controller controls one joint separately. We optimized the three PID

88

M.H. El-Saify et al.

controllers via PSO using the same cost function (20). The performance of PID is used for comparison purpose.

4 Simulation and Results The models are built in MATLAB environment, where the results are compared to the PSO-optimized PID controllers. Both controllers are optimized using the same cost function (20). Figure 3 shows detailed responses in the four test cases. The

Fig. 3(a)

Fig. 3(b)

Fig. 3(c)

Fig. 3(d)

Fig. 3. Simulation results of MIMO-BELBIC (solid line) and PSO-optimized PID controllers (dashed line) in the four test cases listed in Table 1; (a) test case 1, (b) test case 2, (c) test case 3, and (d) test case 4

Novel Multi-input Multi-output Brain Emotional Learning

89

Table 2. Tracking errors of PSO-PID and MIMO-BELBIC in all cases (without disturbances) Controller Case 1 Case 2 Case 3 Case 4 Total PSO-PID 0.291 0.449 0.317 0.893 1.951 MIMO-BELBIC 0.230 0.280 0.254 0.622 1.386

MIMO-BELBIC outperforms the PID controllers in many aspects. It has faster response with less overshoots. The disturbances due to coupling are less in most of the cases. The tracking errors of the four cases are listed in Table 2. The total tracking error is reduced by 29% with respect to PID controllers.

Fig. 4(a)

Fig. 4(b)

Fig. 4(c)

Fig. 4(d)

Fig. 4. Simulation results of MIMO-BELBIC (solid line) and PSO-optimized PID controllers (dashed line) in the four test cases in presence of disturbances; (a) test case 1, (b) test case 2, (c) test case 3, and (d) test case 4

90

M.H. El-Saify et al.

Table 3. Tracking errors of PSO-PID and MIMO-BELBIC in all cases (with disturbances) Controller Case 1 Case 2 Case 3 Case 4 Total PSO-PID 9.419 9.421 9.476 9.953 38.270 MIMO-BELBIC 1.366 1.389 1.359 1.998 6.112

These four test cases are repeated with strong disturbances in order to test the disturbance rejection behavior of the controllers. We used external disturbances, in form of external torque added to the process. The robot arm is subjected to many sources of external disturbances during its operation. Figure 4 shows the responses in the four test cases. It is obvious that MIMO-BELBIC has more ability to reject disturbances than the PID controllers do. This is the advantage of online fast learning of the BELBIC. It is clear, especially at the dashed circle in Fig. 4c, that the online learning resists the disturbances. This is done by the orbitofrontal cortex, which inhibits the output when it is necessary. The tracking errors of the four cases are listed in Table 3. The total tracking error in presence of the disturbances is reduced by 84% with respect to PID controllers. Finally, The PID controllers have only nine gains to be optimized while MIMO-BELBIC has 51 parameters. Therefore, we used the PSO to optimize the PID controllers. For the fair of comparison, we repeated the optimization process of the PID controllers by the same ICO-PSO, which is used to optimize the MIMO-BELBIC. We carried out the same four test cases with and without the disturbances. Figure 5 shows

Fig. 5(a)

Fig. 5(b)

Fig. 5. Simulation results of MIMO-BELBIC (solid line) and ICO-PSO optimized PID controllers (dashed line) in the fourth test cases, (a) without disturbances, and (b) in presence of disturbances

Novel Multi-input Multi-output Brain Emotional Learning

91

Table 4. Tracking error of ICO-PSO PID and MIMO-BELBIC in all cases (with/without disturbances) Without disturbances Case 1 Case 2 Case 3 ICO-PSO PID 0.276 0.298 0.271 MIMO-BELBIC 0.230 0.280 0.254 With disturbances ICO-PSO PID 3.178 3.203 3.219 MIMO-BELBIC 1.366 1.389 1.359

Case 4 Total 0.701 1.547 0.622 1.386 3.673 1.998

13.272 6.112

the fourth test case with and without disturbances. The ICO-PSO optimized PID provides better performance than PSO-optimized PID. However, as shown in Table 4, MIMO-BELBIC still has the best performance. It decreases the total tracking error by 10.4% without disturbances and 53.9% with disturbances with respect to ICO-PSO optimized PID controllers. Further analysis of the ICO-PSO optimized PID controllers revealed that performance enhancement is achieved by high cost. The control signals are much higher than PSO-optimized PID. Moreover, the control signals are not smooth and have many sparks that are not preferred in the control field. On the other hand, MIMO-BELBIC has smooth control signals with much lower values. As declared in Table 5, the total control effort of ICO-PSO optimized PID, which is the integration of the absolute value of the control signals, is approximately 100 times higher than PSO-optimized PID and 200 times higher than MIMO-BEBIC. Furthermore, MIMO-BELBIC has lower rise Table 5. Control effort of the three controllers Controller ICO-PSO PID PSO-PID MIMO-BELBIC 6 4 2.32  10 1.06  104 Control effort 2.07  10

29% 10.4%

54.3% 99.5% 84%

53.9%

Fig. 6(a)*

Fig. 6(b) *

Fig. 6(c) **

Fig. 6. Comparison of the three controllers, (a) tracking error without disturbances, (b) tracking error with disturbances, and (c) control effort without disturbances (zoomed). *(bars 1–4 represent tracking error in test cases 1–4 and 5 represents total tracking error). ** (bars 1–3 represent control efforts at joints 1–3 and 4 represents total control effort)

92

M.H. El-Saify et al.

time and higher accuracy. Average rise times in the forth test case (without disturbances) are 0.106 s, 0.132 s and 0.110 s for MIMO-BELBIC, PSO-optimized PID and ICO-PSO optimized PID respectively, while average steady state errors are 9.63*10−5, 1.9*10−3 and 1.2*10−3 respectively. MIMO-BELBIC has better performance with lower control effort. Comparison of the three controllers is declared by Fig. 6.

5 Conclusion Novel MIMO-BELBIC controller is proposed. The controller is utilized to control the position of the PUMA 560 end-effector. The simulation results demonstrate the effectiveness of the MIMO-BELBIC to provide more accuracy, faster response and lower control effort. Furthermore, the online learning capability of the controller provides performance that is more acceptable in existence of disturbances.

References 1. Balkenius, C., Moren, J.: Emotional learning: a computational model of the amygdala. Cybern. Syst. 32(6), 611–636 (2001) 2. Moren, J.: Emotion and learning—a computational model of the amygdala [Ph.D. thesis], Lund University, Lund, Sweden (2002) 3. Lucas, C., Shahmirzadi, D., Sheikholeslami, N.: Introducing BELBIC: brain emotional learning based intelligent controller. Intell. Autom. Soft Comput. 10(1), 11–21 (2004) 4. Beheshti, Z., Hashim, S.Z.M.: A review of emotional learning and it’s utilization in control engineering. Int. J. Adv. Soft Comput. Appl 2(2), 191–208 (2010) 5. El-Saify, M.H., El-Garhy, A.M., El-Sheikh, G.A.: Brain emotional learning based intelligent decoupler for nonlinear multi-input multi-output distillation columns. Mathematical Problems in Engineering (2017) 6. El-Saify, M.H., El-Sheikh, G.A., El-Garhy, A.M.: Improved clustered optimized particle swarm optimization for global optimization in multimodal problems for systems with limited resources. J. Multidisciplinary Eng. Sci. Technol. (JMEST), 4(1) (2017) 7. Beheshti, Z., Shamsuddin, S.M., Sulaiman, S.: Fusion global-local-topology particle swarm optimization for global optimization problems. Mathematical Problems in Engineering (2014) 8. Siciliano, B., Khatib, O., (eds.): Springer Handbook of Robotics. Springer (2016) 9. Khalil, W., Dombre, E.: Modeling, Identification and Control of Robots. Taylor Francis, New York (2002) 10. Hartenberg, R.S., Denavit, J.: A kinematic notation for lower pair mechanisms based on matrices. J. Appl. Mech. 77(2), 215–221 (1955) 11. Armstrong, B., Khatib, O., Burdick, J.: The explicit dynamic model and inertial parameters of the PUMA 560 arm. In: 1986 IEEE International Conference on Robotics and Automation, Proceedings, vol. 3, pp. 510–518. IEEE, April 1986 12. Vivas, A., Mosquera, V.: Predictive functional control of a PUMA robot. In: ACSE 05 Conference, CICC, 19–21 December 2005 13. Nikoobin, A., Haghighi, R.: Lyapunov-based nonlinear disturbance observer for serial n-link robot manipulators. J. Intell. Rob. Syst. 55(2), 135–153 (2009)

Novel Multi-input Multi-output Brain Emotional Learning

93

14. Khalghani, M.R., Khooban, M.H., Mahboubi-Moghaddam, E., Vafamand, N., Goodarzi, M.: A self-tuning load frequency control strategy for microgrids: Human brain emotional learning. Int. J. Electr. Power Energy Syst. 75, 311–319 (2016) 15. Khorashadizadeh, S., Mahdian, M.: Voltage tracking control of DC-DC boost converter using brain emotional learning. In: 2016 4th International Conference on Control, Instrumentation, and Automation (ICCIA), pp. 268–272. IEEE, January 2016

Informatics

A Computational Offloading Framework for Object Detection in Mobile Devices Maged AbdelAty1(&) and Amr Mokhtar2 1

2

Informatics Research Institute, SRTA-City, Alexandria, Egypt [email protected] Faculty of Engineering, Alexandria University, Alexandria, Egypt [email protected]

Abstract. Recently, the role of mobile devices has changed from a calling or entertaining device to a tool for making life easier. However, this growing role is associated with extensive computing requirements to execute tasks such as object detection. Moreover, executing heavy tasks in a mobile with limited resources takes a long processing time and consumes much energy. This paper presents a computational offloading framework to improve the performance of object detection tasks. The framework uses a simple decision model to select between local processing and offloading based on the network context. A demo has been developed to evaluate the framework performance. The experimental work includes different image sizes and employs 3G and Wi-Fi networks. The results show a response time speedup that could reach five times for small images and 1.5 times for big images. The energy saving also ranges from 80% to 50%. Furthermore, offloading through a Wi-Fi network shows more performance stability than a 3G network. Finally, results demonstrate that offloading the object detection computation decreases the memory allocations to less than 1% in comparison with local processing. Keywords: Mobile cloud computing  Computation offloading detection  Fast R-CNN  Mobile computing



Object

1 Introduction Mobile devices play a vital role in lives of many people. This role starts from communication and entertainment, continues through GPS-based navigation and ends with a production tools in enterprises. Blind people are an important group that is targeted with mobile applications to make their life easier and safer. One of these applications is object detection, which should be done in almost real time and with high accuracy. Object detection has many approaches including the handcrafted features technologies and the deep learning techniques. The handcrafted approaches rely on the developer who define some specific features to distinguish the required object. Deep learning started to gain the attention of the computer vision community after its performance had exceeded the traditional handcrafted techniques [1]. However, utilizing deep learning techniques in mobile applications incurs high processing and memory loads. Consequently, these applications have a very long response time and drain the device © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_9

98

M. AbdelAty and A. Mokhtar

battery rapidly. On the other hand, the resourceful nature of cloud computing can add unlimited data storage and processing power to the mobile device. In other words, transferring computations from a mobile to a resourceful cloud platform decreases the response time and increases the battery life. Computation offloading removes the obstacles from employing the deep learning techniques in mobile devices. However, the time and energy cost of transmitting data through the network depends on the mobile context. Thus, the mobile device uses its context awareness to select between local and remote processing by estimating the offloading cost before transmitting the data to the cloud. In this paper, a mobile cloud computing framework is developed to support the mobile object detection operations. The aim of this framework is to shorten response time and reduce the consumed energy. The framework uses a simple and a lightweight decision function. Moreover, it employs pre-trained neural networks to remove the training burden from the mobile. Experiments are performed with Microsoft Azure cloud to evaluate the framework performance. The performance metrics are response time and consumed energy together with the allocated memory. The performance stability over different network types such as 3G and Wi-Fi is studied to show the impact of network type on the overall framework performance. The rest of this paper is organized as follows: Section 2 introduces related works with deep learning and computation offloading. Section 3 proposes the system architecture, and then, Section 4 details the implementation. Section 5 shows the experimental results and discussions. Section 6 concludes this work and gives important areas of future work.

2 Related Work This section is dedicated to present some of related researches in the area of mobile cloud computing (MCC) and object detection techniques. The first subsection concentrates on MCC frameworks and their features and drawbacks. The second subsection focuses on the object detection techniques coupled with deep learning frameworks. 2.1

Works in MCC

Saab et al. [2] have proposed a framework that optimizes the energy consumption in mobile devices while considering some security measures. They have used the advanced encryption standard (AES) encryption/decryption operations in communication between the mobile and the cloud. They also studied the effect of many factors including; data size, network type, security operations and signal strength on the overall framework performance. However, the framework does not consider the case of forcing remote processing when there is no enough resources in the mobile device. Lin et al. [3] have developed a framework named Ternary Decision Maker (TDM), which targets both of time and energy performance improvements. Moreover, the framework considers the mobile’s onboard graphics processing unit (GPU) as a second offloading destination. In order to evaluate the framework, they measured the false

A Computational Offloading Framework for Object Detection

99

offloading decision rate and it was less than 15%. However, the framework does not handle the lack of sufficient local resources situation, which makes offloading a single choice. Kumar and Lu [4] have presented a novel decision model focusing on energy consumption saving. The decision correctness depends on the network bandwidth estimation and stability over time. However, the framework offloads the complete application, which increases the data transmission overhead in case of big applications. This offloading scheme also requires full compatibility between the mobile device and the cloud platform to suspend/resume the application without problems. 2.2

Works in Object Detection

Guo et al. [5] have proposed a review for some of recent deep learning algorithms and their application in many vision tasks including object detection. The review defines the three main causes of the booming of deep learning; the massive raise in processing power of chips especially the GPUs, the decreasing prices of high speed computing devices, and the significant improvements in the machine learning techniques. The Visual Object Classes (VOC) 2007 and VOC 2012 challenges are used to compare between the accomplishments of many deep learning algorithms for object detection. Girshick et al. [6] have proposed an algorithm that is called regions with convolutional neural networks (R-CNN). As a first stage, the algorithm employs methods like selective search [7] to identify regions with candidate objects. After that, a large CNN such as Caffe [8] is employed to process each candidate region and extracts a fixed-length feature vector. The third stage uses a linear support vector machines (SVM) classifier to score each extracted feature vector using a set of class-specific SVMs. Then for each class, they apply a greedy non-maximum suppression to discard proposals that have an intersection over union (IOU) overlap with a higher scoring selected region larger than a learned threshold. R-CNN achieves mean average precision (mAP) of 53.3% on VOC 2012. Fast R-CNN [9] builds upon the achievements of R-CNN. The proposed system takes the entire image together with a set of object proposals as input. It computes a convolutional feature map for the input image. Then several processing stages are applied to achieve a faster and more accurate detection.

3 System Architecture This section presents an overview of the proposed framework modules. The framework architecture is shown in Fig. 1. It consists of two main parts: the mobile part and the cloud part. The mobile part is responsible for taking the optimum decision about offloading or not. At the same time, the cloud part is responsible for processing the offloaded data and operations. The framework modules are described in the following subsections.

100

M. AbdelAty and A. Mokhtar

Fig. 1. Architecture of the proposed framework.

3.1

The Mobile Part

The Monitoring Engine. This engine monitors the overall application performance by collecting the following parameters: • The processing time of the detection process in mobile Tmc ¼ C=M, where C is the number of the required instructions and M is the mobile processing speed in instructions per second. • The processing time of the detection process in the cloud Tcc ¼ C=S, where S is the cloud processing speed in instructions per second. • The required data to complete the detection operation including the input image and  the image returned after detection Dup &Ddown . • The memory usage of the object detection service from start to end. • The battery consumption during the detection process from start to end. • The processing location, which is used to distinguish between the different cloud providers if available. Moreover, the monitoring engine calculates the total response time, which is used as a performance metric. The response time is computed from end to end including any time taking in communication, data read/write and application suspend/resume. The monitoring records are stored in a lightweight database to be queried by other modules. Network bandwidth estimation is conducted by uploading/downloading a 500 KB file to and from the cloud. Then a continuous estimation is computed after every offloading operation. This procedure ensures a small overhead is introduced in the initial bandwidth estimation. Communication Engine. The communication engine is responsible for the offloading process starting from uploading data, passing with connection maintaining during the processing on the cloud and ends with downloading results. This module employs the representational state transfer (RESTful) web services in communication between mobile and cloud sides. Christensen [10] has listed many advantages from using RESTful web service such as being easy to invoke and is not affected with the network volatility. The communication engine acts as a RESTful client that starts the object detection service on the cloud side in case of offloading. The web service requests are conducted in asynchronous mode to keep the user free to interact with the application while processing is happening on the cloud.

A Computational Offloading Framework for Object Detection

101

Object Detection Engine. Object detection engine can be any of the recent object detection algorithms as stated in the related works section. However, the algorithm is configured to use a limited processing and memory loads because the application crashes if the allocated memory exceeds the heap size. The application also can take long response time in local processing until the user loses his interest in results. Pre-trained Neural Network. Training a deep network is expensive in space and time that it may take days on GPUs [9]. As a result, the training procedure is split from the detection process and a pre-trained network is used on the mobile device. Offloading Engine. Offloading engine is responsible for determining whether offloading or not. Moreover, this engine controls the framework execution flow. The main aim of the decision is reducing the mobile energy consumption through computation offloading to the cloud platform. Kumar and Lu [4] have proposed a decision model to save energy. Many research papers in the MCC area have used this model besides response time estimations. However, a complex decision model can add unnecessary overhead because the proposed framework has a single intensive computation task. This engine uses parameters obtained from the monitoring engine, specifications of the cloud platform and other device specific parameters. The cloud platform specification includes: • S – The total computation speed for the available cores in instructions per second. • X – The factor of computation speedup, which is resulted from the huge memory, solid-state disks and aggressive pipelining. • ProvID – The cloud provider unique identifier, which is used to distinguish between different cloud providers. These parameters are obtained for one time and are saved on the device for future use. Moreover, the device specific parameters include the following power consumptions in watts: • Pc – The consumed power in local processing. • Pi – The consumed power in idle state (waiting for results from the cloud). • Ptr – The consumed power to transmit data to the cloud, assuming no difference between uploading/downloading. Form the collected parameters, the saved energy in case of offloading a task is Esaved ¼ Pc  Tmc  Pi  Tcc  Ptr  Dup =Bup þ Ddown =Bdown



ð1Þ

where Tmc ¼ C=M and Tcc ¼ C=S. The formula can be rewritten as  Esaved ¼ Tmc  ðPc  Pi =F Þ  Dup þ Ddown  Ptr =B

ð2Þ

102

M. AbdelAty and A. Mokhtar

where F ¼ X  S=M and Tcc ¼ Tmc =F. From the previous equation, offloading begins to be feasible if Esaved  0 and the minimum required bandwidth is  B0 ¼ Dup þ Ddown  Ptr =ðTmc  ðPc  Pi =F ÞÞ

ð3Þ

For example, a Lenovo A2010-a mobile device with a 988 MHz ðM ¼ 988Þ and has the following values Pc  0:45 W; Pi  0:18 W; and Ptr  0:19 W. If the cloud side uses a one-core server with a clock speed of 2:4 GHz and X ¼ 5, the server speedup F is given by S=M ¼ 2:4  1000  5=988  12. Equation (3) becomes   B0  Dup þ Ddown  0:19=ðTmc  0:435Þ  0:44  Dup þ Ddown =Tmc

ð4Þ

Before proceeding with the object detection task, the offloading engine compares the profiled network bandwidth with B0 to take the appropriate decision. Equation (4) assumes that the same amount of instructions happen in both of mobile and cloud. However, the implementations of the object detection module in the cloud side can be changed to add more features and to benefit from the available resources. Accordingly, Eq. (4) is convenient to make the offloading decision in the first few times. The decision accuracy increases after collecting enough profiling records to use Eq. (2) directly to find the minimum bandwidth. Moreover, the user has the choice of setting preferences to force local or remote processing. 3.2

The Cloud Part

Communication Engine. Cloud communication Engine acts as a RESTful server. This cloud side module handles the requests of mobile clients and starts the selected object detection algorithm. Object Detection Engine. This engine can utilize one or more detection algorithms due to the resourceful nature of the cloud. Each algorithm is mapped via the communication engine to a RESTful web service that can be invoked from the mobile device. Pre-trained Neural Network. This cloud module is employed by the detection algorithm to extract features from each candidate region. Moreover, the resourceful nature of the cloud helps to add new classes to the pre-trained network, which increases the number of detectable objects. The framework processing flow is summed up in Fig. 2.

A Computational Offloading Framework for Object Detection

103

Fig. 2. Processing flow of the proposed framework.

4 System Implementation This section presents details regarding the experimental setup, demo mobile application and demo cloud application. The mobile application is deployed in a Lenovo A2010-a mobile device with android version 5.1. The cloud application is deployed in Azure standard F4 machine (4 cores, 8 GB memory) with Ubuntu Server 14.04.3 LTS. Two network types are utilized for testing: 3G from Vodafone Egypt and a four Mbps Wi-Fi. A variable workload of six images is used to show the impact of this term Dup þ Ddown in the overall performance. For the demo purpose, a mobile application is implemented in java. The Volley [11] framework is used as a communication engine. The object detection module uses the fast R-CNN [9] algorithm with a Caffe [8] pre-trained network. Lin [12] has presented an implementation of the fast R-CNN that fits with Android. Furthermore, the selective search algorithm bounds the number of region proposals to 200 to keep the mobile application robust. The monitoring module employs the PowerTutor [13] application as a power monitoring service. Figure 3 shows two screenshots of the main and the object detection activities. The first screenshot contains the user preferences that are used to force local or remote processing. The second screenshot presents the results of local processing of an image that is adapted from the fast R-CNN GitHub.

Fig. 3. Screenshots of the mobile application.

104

M. AbdelAty and A. Mokhtar

The cloud demo application is written in Python 2.7. Moreover, the Falcon [14] framework is utilized as a RESTful communication engine. The object detection engine uses the python bindings of the Fast R-CNN [9] and Caffe [8]. The selective search algorithm here returns a variable number of region proposals to increase accuracy which requires additional computations. These selections in the communication and object detection engines can be changed with other algorithms due to the resourceful nature of the cloud.

5 Results This section discusses experimental evaluation of the proposed framework. The experiments employ energy consumption and response time as a performance metric in both of local and remote processing. Comparing between local and remote processing performance is used to verify the offloading decision correctness. The measurements are from end to end including communication, data read/write and application suspend/resume. The experiments also show the effect of network connection type, image size and bandwidth stability on the framework performance. 5.1

Time and Energy Performance

Figure 4 shows the mean response time for different image sizes. The object detection operation has a convergent response time during the local processing mode. This happen because the selective search algorithm returns a number of candidates that is bounded to 200. Accordingly, the mobile device has to perform almost the same amount of calculations on all tested images. Offloading the object detection computations to the cloud gives a response time speedup with about five times in case of a small image size. For example, offloading a 67 KB image takes about 8 s in both of 3G and Wi-Fi connections and it takes around 47 s to process the same image in the mobile. The response time speedup degrades for big images and it reaches nearly 1.5 times due to the increasing number of the candidate regions. The mean energy consumption of the object detection operation is presented in Fig. 5. Offloading the heavy computations to the cloud saves almost 80% of the required energy in case of small images. For example, detecting objects in the 214 KB image consumes about 4 joules in case of processing in the cloud while it needs around

Fig. 4. Mean response time

Fig. 5. Mean energy consumption

A Computational Offloading Framework for Object Detection

105

Fig. 6. Time cost of communication and processing in the cloud

15 joules to detect the same objects in the mobile device. The saving ratio degrades to reach 50% for big images as noticed in the 985 KB image. This is a result of increasing the required time and energy to establish connections, send and receive data. The effect of increasing the image size is illustrated in Fig. 6. Increasing the image size extends the communication share in the overall response time. The analysis shows that most of the communication time-share has been spent in the connection establishing process not in transferring the actual data. The computation cost on the cloud has a proportional relation with the image size because of increasing the number of candidates found by the selective search algorithm. 5.2

Network Connection Type and Bandwidth Stability

Figures 7 and 8 show the effect of bandwidth stability on the framework performance during runtime. The small bandwidth difference between 3G and Wi-Fi connections makes both a good choice generally. The mobile service provider puts a limit on the bandwidth usage of each user, which minimizes the mutual effect between network users. This effect is clear in the eighth run where another user has utilized most of the available bandwidth in the Wi-Fi network leading to a big communication time. Utilizing a 3G connection results in a performance fluctuations that is ordinary due to the user mobility and the distance to the base station.

Fig. 7. Time performance during offloading the 985 KB image.

Fig. 8. Energy performance during offloading the 985 KB image

106

5.3

M. AbdelAty and A. Mokhtar

Memory Requirements

Object detection is a high memory consuming operation because of loading the pre-trained Caffe model inside the ram of mobile device. For instance, local processing of the 67 KB image requires nearly 230 MB of memory while offloading just takes about 264 KB of memory. Moreover, around 500 MB is allocated to the demo application while processing the 985 KB image. This memory allocation appears as a growth in the total private dirty memory usage. The private dirty RAM is extremely expensive because it is occupied by only the running application. Moreover, Android does not utilize swap so this type of memory exists only in RAM and cannot be paged to storage. As a result, approximate estimation of the required memory should be done before deciding local processing to avoid application crash.

6 Conclusions and Future Work This paper presents a framework to increase the robustness of object detection algorithms in mobile devices through utilizing the computational capabilities of the cloud. A demo is implemented in both of mobile and cloud to validate the framework applicability. The experiments are conducted using different data sizes and two network types to study the framework performance in different situations. Results show that the response time speedup reaches five times and the energy consumption saving approaches 80% for small images. Moreover, a stable network connection is important because a significant share of the response time and consumed energy is spent in communications. The experiments also show the big memory allocation that is required in local processing. This allocation increases the offloading importance for devices with small RAM size. The future work has three directions. First, the mobile part can add security and privacy-related features because users may utilize images from the very near area. Second, the cloud part can utilize parallelization and GPUs to minimize the response time for big images. Finally, the framework can use the monetary cost as a factor in the decision function to control the expected increasing costs in case of adapting GPUs and parallelization.

References 1. Wang, X.: Deep learning in object recognition, detection, and segmentation. Found. Trends® Signal Process. 8(4), 217–382 (2016) 2. Saab, S.A., Saab, F., Kayssi, A., Chehab, A., Elhajj, I.H.: Partial mobile application offloading to the cloud for energy-efficiency with security measures. Sustain. Comput. Inf. Syst. 8, 38–46 (2015) 3. Lin, Y.-D.D., Chu, E.T.-H.H., Lai, Y.C., Huang, T.J.: Time-and-energy-aware computation offloading in handheld devices to coprocessors and clouds. IEEE Syst. J. 9(2), 393–405 (2015) 4. Kumar, K., Lu, Y.-H.: Cloud computing for mobile users: can offloading save energy? IEEE Comput. 43(April), 51–56 (2010)

A Computational Offloading Framework for Object Detection

107

5. Guo, Y., Liu, Y., Oerlemans, A., Lao, S., Wu, S., Lew, M.S.: Deep learning for visual understanding: a review. Neurocomputing 187, 27–48 (2016) 6. Girshick, R., Donahue, J., Darrell, T., Malik, J.: Rich feature hierarchies for accurate object detection and semantic segmentation. In: Proceedings of IEEE Computer Society Conference on Computer Vision and Pattern Recognition, pp. 580–587 (2014) 7. Uijlings, J.R.R., van de Sande, K.E.A., Gevers, T., Smeulders, A.W.M.: Selective search for object recognition. Int. J. Comput. Vis. 104(2), 154–171 (2013) 8. Jia, Y., Shelhamer, E., Donahue, J., Karayev, S., Long, J., Girshick, R., Guadarrama, S., Darrell, T.: Caffe: convolutional architecture for fast feature embedding. In: ACM International Conference on Multimedia, pp. 675–678 (2014) 9. Girshick, R.: Fast R-CNN. In: 2015 IEEE International Conference on Computer Vision (ICCV), pp. 1440–1448, 11–18 December 2015 10. Christensen, J.H.: Using RESTful web-services and cloud computing to create next generation mobile applications. In: Proceedings of 24th ACM SIGPLAN Conference Companion on Object Oriented Programming Systems, Languages and Applications, OOPSLA 2009, p. 627 (2009) 11. Transmitting Network Data Using Volley, http://developer.android.com/training/volley/ index.html. Accessed 20 Sep 2016 12. Android Object Detection, https://github.com/tzutalin/Android-Object-Detection. Accessed 20 Sep 2016 13. PowerTutor. http://ziyang.eecs.umich.edu/projects/powertutor/. Accessed 20 Sep 2016 14. Falcon framework. http://falconframework.org/. Accessed 20 Sep 2016

A Hybrid EEG Signals Classification Approach Based on Grey Wolf Optimizer Enhanced SVMs for Epileptic Detection Asmaa Hamad1,3(B) , Essam H. Houssein1,3 , Aboul Ella Hassanien2,3 , and Aly A. Fahmy2 1 2

Faculty of Computers and Information, Minia University, Minya, Egypt asmaa [email protected] Faculty of Computers and Information, Cairo University, Cairo, Egypt 3 Scientific Research Group in Egypt (SRGE), Cairo, Egypt http://www.egyptscience.net

Abstract. This paper proposes a hybrid Electroencephalogram (EEG) classification approach based on grey wolf optimizer (GWO) enhanced support vector machines (SVMs) called GWO-SVM approach for automatic seizure detection. In order to decompose EEG into five subband components, the discrete wavelet transform (DWT) was utilized to extracted features set. Then, this features are used to train the SVM with radial basis function (RBF) kernel function. Further, GWO was used for selecting the significant feature subset and the optimal parameters of SVM in order to obtain a successful EEG classification. The experimental results proved that the proposed GWO-SVM approach, able to detect epileptic and could thus further enhance the diagnosis of epilepsy with accuracy 100%. Furthermore, the proposed approach has been compared with genetic algorithm (GA) with support vector machines (GA-SVMs) and SVM using RBF kernel function. The computational results reveal that GWO-SVM approach achieved better classification accuracy outperforms both GA-SVM and typical SVMs. Keywords: Epilepsy

1

· EEG · DWT · SVMS · GWO

Introduction

Epilepsy is a common and chronic neurological disorder which is characterized by the recurrence of sudden abnormal reactions of the brain as epileptic seizures [1]. According to World Wide Web, around 50 million people worldwide has epilepsy and is suffering with this recurring and unpredictable seizure disorder [2]. Therefore, diagnosing and predicting epileptic seizures precisely appear to be particularly important, which is able to fetch more effective prevention and treatment for the patients. Clinically to predict and diagnose epileptic seizures, the brain activities are to be observed through EEG signals which contain the markers of epilepsy. c Springer International Publishing AG 2018  A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3 10

A Hybrid EEG Signals Classification Approach

109

Electroencephalography (EEG) is the recording of the electrical activity of the brain, regularly taken through several electrodes at the scalp. EEG contains lots of worthy information relating to the numerous physiological states of the brain and thus is a very useful tool for understanding the brain disease, such as epilepsy [3]. EEG signals of epileptic patients exhibit two states of abnormal activities namely interictal or seizure free and ictal [4]. EEG signals are commonly decomposed into five EEG sub-bands: delta, theta, alpha, beta, and gamma [5]. This research presents a method for selecting features that used as input data for classifiers and the best parameters for SVMs via applying an optimization algorithm. Selecting these parameters correctly guarantees to obtain the best classification accuracy [6]. SVMs have two types of parameters (penalty constant C parameter and kernel functions parameters), and the values of these parameters affect the performance of SVMs [7]. Accordingly, this paper adopts GWO to present a novel GWO-SVM hybrid optimized classification system for epileptic EEG signals classification. The obtained experimental results obviously indicate significant enhancements in terms of classification accuracy achieved by the proposed GWO-SVMs classification system compared to classification accuracy achieved by the typical SVMs classification algorithm and Genetic Algorithm with SVM (GA-SVM). The rest of the paper is drawn as follows: the literature review is introduced in Sect. 2. Section 3 presents the materials and methods. The proposed classification approach is provided in Sect. 4. Experimental results and discussions are provided in Sect. 5. The conclusion of this paper is reported in Sect. 6.

2

Literature Review

Several algorithms have been developed in the literature to improve the detection and classification of EEG Signals. Authors in [8], proposed a hierarchical epileptic seizure detection approach. In this approach, the original EEG signals performed by wavelet packet coefficients and using basis-based wavelet packet entropy method to extract feature. In the training stage, hybrid the k-Nearest Neighbour (KNN) with the cross-validation (CV) methods are utilized, on the other hand, the top-ranked discriminative rules are used in the testing stage to compute the classification accuracy and rejection rate. Furthermore, in [9], authors proposed automated epileptic seizure detection that used permutation entropy (PE) as a feature. SVM is used to classify segments of normal and epileptic EEG based on PE values. The proposed system uses the fact that the EEG during epileptic seizures is described by PE than normal EEG. In the same manner, in [10], authors presented an automatic epileptic seizure detection method, which uses approximately entropy features derived from multiwavelet transform. Artificial neural network (ANN) is combined with entropy to classify the EEG signals regarding the existence or absence of a seizure. Moreover, in [11], authors presented a clustering-based least square support vector machine approach for the classification of EEG signals. The proposed

110

A. Hamad et al.

approach comprises the following two stages. In the first stage, clustering technique (CT) has been used to extract representative features of EEG data. In the second stage, least square support vector machine (LS-SVM) is applied to the extracted features to classify EEG signals. Finally, in [12], authors developed a scheme for detecting epileptic seizures from EEG data recorded from epileptic patients and normal subjects. This scheme is based on DWT analysis and approximate entropy (ApEn) of EEG signals. SVM and (feedforward backpropagation neural network) FBNN are used for classification purpose.

3

Materials and Methods

This section introduces the Materials and Methods used in this paper. 3.1

EEG Data Acquisition

The data utilized in this paper was taken from publicly available data at the Department of Epileptology, University of Bonn [13]. This dataset includes five sets (denoted as A, B, C, D, and E), each including 100 single-channel EEG segments of 23.6 s duration, with a sampling rate of 173.6 Hz. Where each data segment contains N = 4097 data points accumulated at intervals of 1/173.61th of 1 s. Data sets A and B consist of segments extracted from EEG surface recordings that were performed in five healthy volunteers using a unified electrodes positioning scheme. The volunteers relaxed in an open-eyes wake state (A) and eyes closed (B), respectively. Data sets C, D and E are detected by epileptic subjects via intracranial electrodes for epileptic ictal and interictal activity 3.2

Discrete Wavelet Transforms (DWT)

Many signals like EEG having the non-stationary and transient characteristics; in such situation ideally Fourier transform may not be applied directly. But time-frequency methods can be used [14]. We used DWT method to extract the individual EEG sub-bands and reconstruct the information accurately because the wavelet transform has the advantages of time-frequency localization, multirate filtering, and scale-space analysis. DWT can expose more details from the signal in both time and frequency domain precisely. This makes it become a robust tool in biomedical engineering, particularly in epileptic seizure detection. In this paper, DWT is utilized to analyze the EEG signals into various frequency bands. The DWT decomposes a specific signal into approximation and detail coefficients at the first level. Then the approximation coefficients are additional decomposed into next level of approximation and detail coefficients [15]. In the first stage of the DWT, an LP and HP filters are used to pass the signal concurrently. At the first level, the outputs from low and high pass filters are indicated to as approximation (A1) and detailed (D1) coefficients. The output signals holding half the frequency bandwidth of the original signal can be

A Hybrid EEG Signals Classification Approach

111

downsampled by two due to Nyquist rule. The same procedure can be duplicated for the first level approximation and the detail coefficients fetch the second level coefficients. 3.3

Gray Wolf Optimization (GWO)

Grey wolf optimizer (GWO) is a new meta-heuristic technique [16]. For solving optimized problems, it can be applied and achieves excellent results [17,18]. In nature, The GWO algorithm mimics the leadership hierarchy and hunting mechanism of grey wolves. There are four types of grey wolves which are alpha (α), beta (β), delta (δ) and omega (ω). Those four types can be used for simulating the leadership hierarchy. In this algorithm, the hunting (optimization) is guided by three wolves (α, β and δ). The wolves follow them these three wolves [17]. Encircling Prey. To hunt a prey, grey wolves encircling it. Mathematically, this encircling behavior is modeled by the following equations [17–19]. → − − → → −→ − D = | C · Xp (t) − X (t)|

(1)

→ − − → − → −→ (2) X (t + 1) = Xp (t) − A · D → − → − −→ Where t is the current iteration, A and C are coefficient vectors, Xp is the vector → − → − of the prey position, and X indicates the vector of the grey wolf position. A and → − C vectors can be calculated as follows: − → − → → − a A = 2a · − r1 − →

(3)

− → → C =2·− r2

(4) − → where components of a are linearly decreased from 2 to 0, over the course of → → iterations and − r1 , − r2 are random vectors in [0, 1]. Hunting. To simulate the hunting process of grey wolves, assume that the α (the best candidate solution), β and δ have better knowledge about the possible position of prey. Therefore, the best obtained three solutions are saved so far and oblige other search agents (including ω) to update their positions according to the position of the best search agents. This updating for the grey wolves positions is as in the following equations [17,18]: − → −→ − → −→ − → −→ − → − → − → − → − → −→ Dα = |C1 · Xβ − X |, Dβ = |C2 · Xβ − X |, Dδ = |C3 · Xδ − X | − → −→ − → −→ −→ −→ − → −→ −→ − → − → − → X1 = Xα − A1 · (Dα ), X2 = Xβ − A2 · (Dβ ), X3 = Xδ − A3 · (Dδ ) → − → − → − → − X1 + X 2 + X 3 X (t + 1) = 3

(5) (6) (7)

112

3.4

A. Hamad et al.

Support Vector Machine (SVM)

SVM proposed by Cortes and Vapnik [20]. SVM is a powerful classifier in the field of biomedical science for the detection of abnormalities from biomedical signals. In this paper, to evaluate the performance of the proposed technique we are having four test cases with two different sets of class so we preferred this classifier for better accuracy results. The structural design of the SVM depends on the following: first, the regularization parameter, C, is used to control the trade-off between the maximization of margin and a number of misclassifications. Second, kernel functions of nonlinear SVMs are used for mapping of training data from an input space to a higher dimensional feature space. All kernel functions like linear, polynomial, radial basis function and sigmoid having some free parameters are called hyperparameters. To date, the kernel generally used in Brain-Computer Interface research was the Gaussian or radial basis function (RBF) kernel with width σ [21]. (8) K(x, y) = exp(−||x − y||2 /2σ 2 ) Where, K(x, y) is termed as the kernel function, which is built upon the dot product of two invariant x and y. Suitable trade-off parameter C and the kernel parameter σ are required to train SVM classifier and usually obtained by the K-fold cross-validation technique. In this study, we have used default 10-fold scheme to achieve best performance accuracies.

4

The Proposed Classification GWO-SVM Approach

In this study, we proposed GWO-SVM system for the EEG signal classification. The aim of this approach is to optimize the SVM classifier accuracy by automatically estimating the optimal feature subset and best values of the SVM parameters for the SVM model. The proposed classification approach consists of four main phases. In the first phase, EEG data sets (A, B, C, D, and E) are pre-processed by DWT to decompose into five sub-band signals using four levels decomposition. In the second phase, useful features like Entropy, Min, Max, Mean, Median, and Standard deviation, Variance, Skewness, Energy and Relative Wave Energy (RWE) are derived from each sub-band of wavelet coefficients. In the third phase, the relevant features are selected from the extracted features and the parameter values (C, σ) of SVM are dynamically optimized by GWO for EEG signals classification. After that, selected features are applied as an input to SVM-RBF classifier for epilepsy classification task with the obtained optimal parameter values. Finally, the obtained results are evaluated using five different measurements such as classification accuracy, sensitivity, specificity, precession, and F-Measure. The overall process of the proposed method is illustrated in Fig. 1. 4.1

Pre-processing and Feature Extraction Using DWT

To achieve better results in feature extraction, wavelet decomposition has been used as a pre-processing level for EEG segments to extract five physiological

A Hybrid EEG Signals Classification Approach

113

Fig. 1. Classification approach for SVM based on GWO.

EEG bands, delta (0–4 Hz), theta (4–8 Hz), alpha (8–13 Hz), beta (13–30 Hz), and gamma (30–60 Hz). For this purpose, four levels DWT with fourth -order Daubechies (db4) wavelet function have been utilized. Since our dataset is in the range 0–60 Hz, coefficients D1, D2, D3, D4 and A4 corresponding to 30–60 Hz, 15–30 Hz, 8–15 Hz, 4–8 Hz and 0–4 Hz respectively were extracted, that are almost standard physiological sub-bands. In our previous work, we have extracted ten features of wavelet coefficients from each sub-band that were chosen to classify EEG signals as shown in [22]. 4.2

Features Selection and Parameters Optimization Using GWO

Better performance may be achieved by removing irrelevant and redundant data while maintaining the discriminating power of the data by feature selection. GWO has the potential to generate both the optimal feature subset and SVM parameters at the same time. Parameters setting of SVM have an important impact on its classification accuracy. Inappropriate parameter settings lead to poor classification results. The parameters that should be optimized include the parameter C and the kernel function parameters σ for the radial basis kernel. 4.3

Fitness Function

The classification accuracy is chosen as the solution qualifier through the search process. Classification accuracy is between the range [0; 1], each wolf

114

A. Hamad et al.

(Search Agent) reflects a number of accuracies depend on cross-validation strategy. Moreover, each wolf reflects ten accuracy values for each fold and all accuracy values for all folds are averaged to return fitness value to the search algorithm as illustrated in the following equation. f (w, t) =

N 

accw,t,k /N

(9)

k=1

where f (w, t) the fitness value for wolf w in iteration t, N represents the number of folds selected for cross validation and accw,t,k is the accuracy resultant.

5 5.1

Experimental Results and Discussion Performance Evaluation Measurements

In this paper, the set A, B, C, and D are considered as positive class and set E is considered as the negative class respectively. To evaluate the classification performance for different test cases in this paper, we have used five measures, which are: (1) Accuracy (Acc), (2) Sensitivity (Sens), (3) Specificity (Spec), (4) Precision (Prec), and (5) F-Measure (F). In general, all mentioned performance measures depend on four main metrics of a binary classification result (positive/Negative); True Positive (TP), True Negative (TN), False Positive (FP), False Negative (FN). Where True Positive stands for correctly identified nonseizure activity, True Negative is the correctly identified seizure activity, False Positive is the false identification of non-seizure activity, and False Negative is the falsely recognized seizure activity. 5.2

Experimental Results

In this paper, the proposed technique is tested on the four different test cases as described in Table 1. The input feature vector is randomly divided into training data set and testing data set based 10- fold cross-validation. The data set for the present binary classifier task consists of 200 observations of 50 features for case 1 to case 4. We implement the GWO-SVM algorithm in MATLAB (R2015a). The parameter setting for the GWO are No. of agents (wolves) is 30, No. of iteration is 10, C in between [1, 1000], σ range is [1, 100] and Feature subset range is [0, 1]. Same number of agents and same number of iterations are used for GA. Classification accuracy rate of the experiment was computed by averaging resultant accuracies from all 10-folds. Figures 2, 3, 4 to 5 show classification results obtained via applying the proposed GWO-SVM against traditional SVM classification approach and Genetic Algorithm (GA) with SVM for RBF kernel function for case 1 to case 4 respectively. As can be seen, the proposed GWOSVM owns the highest results. Also GA-SVM is in second place and SVM is the worst one.

A Hybrid EEG Signals Classification Approach

115

Table 1. The classification description of different test cases along with their EEG data sets. Test case Cases for seizure Classification description Case 1

Set A vs. Set E

Healthy Persons with eye open vs. Epileptic patients during seizure activity

Case 2

Set B vs. Set E

Healthy Persons with eye close vs. Epileptic patients during seizure activity

Case 3

Set C vs. Set E

Hippocampal seizure free vs. Epileptic patients during seizure activity

Case 4

Set D vs. Set E

Epileptic seizure free vs. Epileptic patients during seizure activity

Fig. 2. Comparative performance measures of case 1.

Fig. 3. Comparative performance measures of case 2.

Fig. 4. Comparative performance measures of case 3.

116

A. Hamad et al.

Fig. 5. Comparative performance measures of case 4.

6

Conclusion

In this paper, DWT is used for analysis of EEG to detect epilepsy. EEG signals are decomposed into different sub-bands through DWT to obtain ten features from each sub-band to classify EEG signal. This paper develops an approach using GWO for feature selection with SVM parameters optimization and the SVM classifier for automatic seizure detection in EEG signals. The 100% classification accuracies are obtained using GWO-SVM for case 1,99.577% for case 2,99.472% for case 3 and 99.232% for case 4. These results illustrate the effectiveness of using GWO and SVM classifier for seizure detection in EEG signals. The success of the proposed method is verified by comparing the performance of classification problems as addressed by other researchers. Also, experimental results indicated that the proposed GWO-SVMs approach outperformed GA-SVM and the typical SVMs classification algorithm for RBF kernel function. As future work, we plan to conduct experiments with more robust classifiers for further investigation in this domain.

References 1. Yuan, Q., Zhou, W., Li, S., Cai, D.: Epileptic EEG classification based on extreme learning machine and nonlinear features. Epilepsy Res. 96(1), 29–38 (2011) 2. Supriya, S., Siuly, S., Wang, H., Cao, J., Zhang, Y.: Weighted visibility graph with complex network features in the detection of epilepsy. IEEE Access 4, 6554–6566 (2016) 3. Guo, L., Rivero, D., Dorado, J., Munteanu, C.R., Pazos, A.: Automatic feature extraction using genetic programming: an application to epileptic EEG classification. Exp. Syst. Appl. 38(8), 10425–10436 (2011) 4. Acharya, U.R., Fujita, H., Sudarshan, V.K., Bhat, S., Koh, J.E.: Application of entropies for automated diagnosis of epilepsy using EEG signals: a review. Knowl. Based Syst. 88, 85–96 (2015) 5. Houssein, E.H., Hassanien, A.E., Ismaeel, A.A.K.: EEG signals classification for epileptic detection: a review. In: Second International Conference on Internet of Things and Cloud Computing Proceedings, ICC 2017, 22 March 2017, Cambridge, United Kingdom. ACM (2017) 6. Gaspar, P., Carbonell, J., Oliveira, J.L.: On the parameter optimization of support vector machines for binary classification. J. Integr. Bioinform. (JIB) 9(3), 33–43 (2012)

A Hybrid EEG Signals Classification Approach

117

7. Garˇsva, G., Danenas, P.: Particle swarm optimization for linear support vector machines based classifier selection. Nonlinear Anal. Model. Control 19(1), 26–42 (2014) 8. Wang, D., Miao, D., Xie, C.: Best basis-based wavelet packet entropy feature extraction and hierarchical EEG classification for epileptic detection. Exp. Syst. Appl. 38(11), 14314–14320 (2011) 9. Nicolaou, N., Georgiou, J.: Detection of epileptic electroencephalogram based on permutation entropy and support vector machines. Exp. Syst. Appl. 39(1), 202– 209 (2012) 10. Guo, L., Rivero, D., Pazos, A.: Epileptic seizure detection using multiwavelet transform based approximate entropy and artificial neural networks. J. Neurosci. Meth. 193(1), 156–163 (2010) 11. Li, Y., Wen, P.P., et al.: Clustering technique-based least square support vector machine for EEG signal classification. Comput. Meth. Programs Biomed. 104(3), 358–372 (2011) 12. Kumar, Y., Dewal, M., Anand, R.: Epileptic seizures detection in EEG using DWTbased ApEn and artificial neural network. Sig. Image Video Process. 8(7), 1323– 1334 (2014) 13. Department of Epileptology University of Bonn: EEG time series data. http:// www.meb.uni-bonn.de/epileptologie/science/physik/eegdata.html. Accessed Oct 2016 14. Kumar, Y., Dewal, M., Anand, R.: Epileptic seizure detection using DWT based fuzzy approximate entropy and support vector machine. Neurocomputing 133, 271–279 (2014) 15. Faust, O., Acharya, U.R., Adeli, H., Adeli, A.: Wavelet-based EEG processing for computer-aided seizure detection and epilepsy diagnosis. Seizure 26, 56–64 (2015) 16. Hassanien, A.E., Emary, E.: Swarm Intelligence: Principles, Advances, and Applications. CRC Press, Boca Raton (2016) 17. Mirjalili, S., Mirjalili, S.M., Lewis, A.: Grey wolf optimizer. Adv. Eng. Soft. 69, 46–61 (2014) 18. El-Gaafary, A.A., Mohamed, Y.S., Hemeida, A.M., Mohamed, A.-A.A.: Grey wolf optimization for multi input multi output system. Univers. J. Commun. Netw. 3(1), 1–6 (2015) 19. Emary, E., Zawbaa, H.M., Grosan, C., Hassenian, A.E.: Feature subset selection approach by gray-wolf optimization. In: Afro-European Conference for Industrial Advancement, pp. 1–13. Springer, Heidelberg (2015) 20. Cortes, C., Vapnik, V.: Support-vector networks. Mach. Learn. 20(3), 273–297 (1995) 21. Andrew, A.M.: An Introduction to Support Vector Machines and Other KernelBased Learning Methods by Nello Christianini and John Shawe-Taylor. Cambridge University Press, Cambridge (2000). xiii+ 189 pp., ISBN 0-521-78019-5 (hbk, £27.50) 22. Hamad, A., Houssein, E.H., Hassanien, A.E., Fahmy, A.A.: Feature extraction of epilepsy EEG using discrete wavelet transform. In: 2016 12th International Computer Engineering Conference (ICENCO), pp. 190–195. IEEE (2016)

A Model of Electrokinetic Platform for Separation of Different Sizes of Biological Particles Reda Abdelbaset1,2(&), Yehya H. Ghallab1,2, Hamdy Abdelhamid2, and Yehea Ismail2 1

Biomedical Engineering Department, Helwan University, Helwan, Egypt {rabdelbaset,yghallab}@zewailcity.edu.eg 2 Center of Nano Electronics and Devices (CND) at Zewail City of Science and Technology, The American University in Cairo (AUC), Cairo, Egypt {habdelhamid,yismail}@zewailcity.edu.eg

Abstract. The dielectrophoresis (DEP) phenomena is a motion of uncharged polarizable particles in the direction of most field strength site within a non-uniform electric field. Unlike various techniques, the DEP is an effective technique for particles manipulation and separation of biological particles. The manipulation and separation of biological cells are necessary to various biomedical applications such as cell biology analysis, diagnostics, and therapeutics. The traveling-wave dielectrophoresis (twDEP) and levitation are major subcategories of electro-kinetic motions that are generated as a result of the interaction between a non-uniform electric field and polarizable particles. This article presents a model of an electrokinetic platform that has a working principle of dielectrophoresis phenomena and Printed Circuit Board (PCB) technology for separation of different sizes of biological particles such as microbeads (simulated biological cells) and the blood formed elements (platelets and red blood cells (RBCs)) using two configurations of microelectrodes (traveling and levitation). Keywords: Dielectrophoresis  Separation  Traveling wave Platelets  Red blood cells  Microbeads  COMSOL



Levitation



1 Introduction The separation and manipulation of particles techniques gained the attention of scientists in all fields such as engineering, chemistry, physics and biology. The dielectrophoresis (DEP) is a competent technique for manipulation, identification, and sorting of biological cells by observing the response of non-polarized biological cells towards a non-uniform electric field which exists a force on the induced dipole of particles and then recognizing it [1–4]. DEP is a preferable technique because of several advantages as follows: (1) it’s ability to manipulate and characterize the biological cells with high efficiency, whereas the dielectric properties (permittivity and conductivity) of biological cells over a © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_11

A Model of Electrokinetic Platform for Separation

119

specific range of frequencies of electric field able to identify cells. (2) cheaper because it does not need any expensive reagents like other techniques. The direction and magnitude of DEP force that is generated by a specific design of microelectrodes depend on the properties of applied electrical potential such as (frequency, amplitude, and waveform), the size of the particle and the dielectric properties (permittivity and conductivity) of the cells compared to the surrounding medium [5, 6]. The implementation of electrokinetic platforms based on PCB technology is a challenge not intended by many scientists, therefore, this article earns the importance of proving that the PCB technology is capable and efficient to implement the electrokinetic platform. The PCB technology is preferred due to several advantages as follows: low cost, widely available, re-workable and excellent shelf life [7]. The microbeads are fabricated plastic microspheres which are usually used to evaluate the performance of DEP electrokinetic platform. The main concept of this paper is to prove the capability of the proposed electrokinetic platform based on PCB technology to identify the biological cells and separate between different sizes of biological cells. Identifications and sorting of biological cells play an important role in many biomedical applications such as laboratory devices. The rest of paper is categorized as follows: Sect. 2 illustrates the theory of dielectrophoresis phenomena. Section 3 shows the design of the proposed electrokinetic platform (twDEP microelectrodes array and levitation DEP microelectrodes). Section 4 presents a 2D model of the proposed electrokinetic platform and the tested particles (microbeads, platelets, and RBCs). The simulation results of the traveling wave DEP forces and levitation DEP forces which are existed on particles (microbeads 10 µm, 20 µm, platelets, and RBCs) are described in Sect. 5. Finally, Sect. 6 concludes this paper and summarizes the advantages of the presented model based on the simulation results.

2 Theory of Operation The DEP phenomena depict the net force which is generated on polarizable particles because of a non-uniform electric field. The governing equation of the DEP force is: FDEP ¼ ðq  rÞE, where q is the effective polarization induced in the particle, r is the gradient operator, and E is non-uniform electric field [9]. Close to the electrode surface, a particle may subject into a traveling force [10]: FDEP ¼ 2peo em R3 ½ReðKeÞrE2 þ 2ImðKeÞr x ðEI xER Þ

ð1Þ

E ¼ ER þ j EI

ð2Þ

Where eo is the permittivity of free space, em is the relative permittivity of the surrounding medium, R is the radius of particle, ER is the real part of electric field, EI is the imaginary part of electric field, Im is the imaginary part, Re is the real part of CM and [Ke] is the Clausius-Mossotti factor (CM factor). The CM factor can be estimated as follows [10]:

120

R. Abdelbaset et al.

ep em ep þ 2 em

ð3Þ

irp  irm ; e ¼ em  x m x

ð4Þ

KeðxÞ ¼ ep ¼ ep 

Where ep ; em are the permittivity of particle and surrounding medium and rp and rm the conductivity of particle and surrounding medium, respectively, x is the angular frequency of the electric field, the permittivity and conductivity of the surrounding medium and the particle, furthermore, the frequency of the applied electric field able to change the direction and the magnitude of DEP force by changing the sign and the magnitude of CM factor. The working principle of levitation is generating area at which the electric field being weaker than the electric field at surrounding areas, consequently, particles subjected to an induced force by the field [10]: FDEP ¼ 2pem R3 Re ½KerE2

ð5Þ

The shell structure is added to DEP force in case of blood formed elements to apply double shell model of platelets and RBCs for more accuracy. However, the single shell model is preferred to microbeads. The complex permittivity ep is replaced by equivalent complex permittivity eeq of particles [11–13]:  3 eeq ¼ esh

    e e þ 2 e pþ 2esh p sh  3     ep esh ro  e þ 2e ri ro ri

p

ð6Þ

sh

where ro and ri are the outer and inner radius of the particle shell, respectively; esh is the complex relative permittivity of the outer shell.

3 The Proposed Electro-Kinetic Platform The microelectrodes array of twDEP configuration can be designed through numerous shapes such as (1) a concentric rings structure [14], (2) a planar linear interdigitated array [15]. The concentric rings micro-electrodes array is preferred because it leads to reduce the size of the electrokinetic platform. It increases the intensity of electric filed at the center line of electrodes due to its roundness of electrodes [16]. Furthermore, it is compatible with PCB technology as shown in Fig. 1. The microelectrodes for DEP levitation configuration are categorized as three types: a cone plate levitation system, Ring dipole levitation system and a quadrupole levitation system [9]. The quadrupole microelectrodes design is preferred because of the difficulty of implementation of the first and second configuration using PCB technology as shown in Fig. 1.

A Model of Electrokinetic Platform for Separation

121

Fig. 1. The geometry and the applied electrical potential of (A) Traveling wave Configuration, and (B) Levitation Configuration.

4 2D Model of Microelectrodes Array COMSOL Multiphysics 5.0 is preferred to simulate the proposed microelectrodes of the electrokinetic platform of traveling and levitation for manipulation and separation of (different sizes of microbeads, platelets and RBCs). The procedures of the model are subjected to two main stages as follows: a preprocessing stage including space dimension, applied physics and study, and a processing stage including the geometry, materials and applied physics conditions as shown in Fig. 2. Table 1. The properties of the tested particles and its’ mediums. Particles type Microbeads Platelets [12–14] RBCs [12–14] The properties of The shell of Platelets [12–14] RBCs [12–14] The properties of Medium Deionized Water Blood [12–14]

Diameter Permittivity 10 µm 2.5 [18] 20 µm 1.8 µm 50 5 µm 59 the shell of platelets and Thickness Permittivity 8 nm 6 9 nm 4.44 Medium of particles Permittivity 78.5 [18] 80

Conductivity 1E-12 S/m [18] 0.25 S/m 0.31 S/m RBCs Conductivity 1 µS/m 1 µS/m Conductivity 5E-5 S/m [18] 55 mS/m

122

R. Abdelbaset et al.

Fig. 2. Flow chart of COMSOL model.

In processing stage, the geometry of the proposed electrokinetic platform is divided to two configurations as follows: (1) four concentric rings microelectrodes have a width of 150 µm, a space between each two successive electrodes of 450 µm, the radius of the first ring is 450 µm as shown in Fig. 1. (2) The system consists of four squares for levitation which are diverged at 100 µm, have 100 µm rib as shown in Fig. 1. The properties of materials of microelectrodes and platform substrate are defined using COMSOL material library. However, the properties of the tested particles and its’ mediums are defined as shown in Table 1. Furthermore, the applied electrical potential on both traveling and levitation configurations is described in Fig. 1. Firstly, for traveling configuration, 10 Vpp, 100 kHz Square wave in the sequence 0°–90°–180°–270° phase shift.

A Model of Electrokinetic Platform for Separation

123

Secondly, for levitation configuration, 10 Vpp, 100 kHz Square wave where 0° phase shift on two opposite squares and 180° phase shift on the other opposite squares. Normal physics controlled mesh option is preferred for the meshing of the proposed model which automatically creates meshes that are adapted to the physics in the model.

5 Results and Discussion In this part, the detailed results were presented to prove the ability of the proposed electrokinetic platform based on PCB technology in manipulating and separating different sizes of biological particles with high efficiency. All figures are produced by COMSOL unless otherwise stated. The motion of microbeads and blood formed elements under the effect of the DEP forces which is produced by both twDEP and levitation configurations is shown in Fig. 3.

Fig. 3. The spread or particles above twDEP configuration, (A) the initial random spread, (B) the alignment of microbeads and (C) the alignment of blood formed elements. the spread or particles above levitation configuration, (D) the initial random spread, (E) the alignment of microbeads, and (F) the alignment of blood formed elements.

124

R. Abdelbaset et al.

However, the separation of particles based on electrokinetic highly dependent on the different velocities of animated particles according to the particles kinetic energy under the effect of the proposed platform. Figure 3(A) presents the initial random spread of particles (microbeads and blood formed elements) above the twDEP configuration before applying an electrical potential. Figure 3(B) presents the alignment of microbeads because of twDEP force. However, Fig. 3(C) presents the alignment of blood formed elements (platelets and RBCs) because of twDEP force. Figure 3(D) presents the initial random spread of particles (microbeads and blood formed elements) above the levitation configuration before applying an electrical potential. Figure 3(E) presents the alignment of microbeads because of levitation force. However, Fig. 3(F) presents the alignment of blood formed elements (platelets and RBCs) because of levitation force after applying an electrical potential. A comparison between different sizes of microbeads (10 µm and 20 µm), in addition to blood formed elements (platelets and RBCs) as respect of dielectrophoretic force and particles kinetic energy is presented in Figs. 4, 5, 6 and 7 to show the ability of the proposed electrokinetic platform to separate between different sizes of biological particles by acquiring it different kinetic energies to move with different velocities as a

Fig. 4. A comparison between two different sizes of microbeads 10 µm and 20 µm in DEP force (A) under the effect of the levitation configuration, and (B) under the effect of the twDEP configuration.

A Model of Electrokinetic Platform for Separation

125

Fig. 5. A comparison between two different sizes of microbeads 10 µm and 20 µm in particle kinetic energy: (A) under the effect of the levitation, and (B) under the effect of the twDEP.

result of Dep forces which are generated on particles by two configurations (twDEP and levitation). Figure 4(A) and (B) show the variation between the applied DEP forces under the effect of both twDEP and levitation configurations on microbeads. It is noticeable that there is a large difference between the applied DEP forces on both types of microbeads (10 µm and 20 µm), where, the applied DEP forces due to both configurations on 20 µm of microbeads are greater than the applied DEP forces on 10 µm of microbeads. Figure 5(A) and (B) show the variation between the gained kinetic energy under the effect of both twDEP and levitation configurations by microbeads. It is noticeable that there is a large difference between the gained kinetic energy by both types of microbeads (10 µm and 20 µm), where, the gained kinetic energy due to both configurations by 20 µm of microbeads is greater than the gained kinetic energy by 10 µm of microbeads. Figure 6(A) and (B) show the variation between the applied DEP forces under the effect of both twDEP and levitation configurations on blood

126

R. Abdelbaset et al.

Fig. 6. A comparison between platelets and RBCs in DEP force (A) under the effect of levitation force, and (B) under the effect of the twDEP force.

formed elements (platelets and RBCs). It is noticeable that there is a large difference between the applied DEP forces on both types of blood formed elements (platelets and RBCs), where, the applied DEP forces due to both configurations on RBCs are greater than the applied DEP forces on platelets. Figure 7(A) and (B) show the variation between the gained kinetic energy under the effect of both twDEP and levitation configurations by blood formed elements (platelets and RBCs). It is noticeable that there is a large difference between the gained kinetic energy by both types of blood formed elements (platelets and RBCs), where, the gained kinetic energy due to both configurations by RBCs is greater than the gained kinetic energy by platelets.

A Model of Electrokinetic Platform for Separation

127

Fig. 7. A comparison between platelets and RBCs in Particle kinetic energy (A) under the effect of levitation force, and (B) under the effect of the twDEP force.

6 Conclusion A 2D model of DEP electro-kinetic platform (twDEP and levitation configurations) based on PCB technology for separation of different sizes of biological particles such as microbeads and blood formed elements (platelets and RBCs) is described and explained. The simulation results show that there is a large difference in the applied DEP forces and particles kinetic energy (make particles move with different velocities) between different sizes of microbeads (10 µm and 20 µm) and different sizes of blood formed elements (platelets and RBCs), consequently, this confirm that the preferred electrokinetic platform able to separate between different sizes of biological particles such as (platelets and RBCs), where it is known that platelets are the smallest cells in blood, consequently, the proposed electrokinetic platform based on PCB technology is a good candidate to separate between the different biological particles.

References 1. Pohl, H.A.: Dielectrophoresis: The Behavior of Neutral Matter in Nonuniform Electric Fields, vol. 80. Cambridge University Press, Cambridge (1978) 2. Crane, J.S., Pohl, H.A.: A study of living and dead yeast cells using dielectrophoresis. J. Electrochem. Soc. 115(6), 584–586 (1968)

128

R. Abdelbaset et al.

3. Ghallab, Y.H., Badawy, W.: Lab-on-a-Chip: Techniques, Circuits, and Biomedical Applications. Artech House, Norwood (2010) 4. Çetin, B., Li, D.: Dielectrophoresis in microfluidics technology. Electrophoresis 32(18), 2410–2427 (2011) 5. Washizu, M., Kurosawa, O.: Electrostatic manipulation of DNA in microfabricated structures. IEEE Trans. Ind. Appl. 26(6), 1165–1172 (1990) 6. Ghallab, Y., Badawy, W.: Sensing methods for dielectrophoresis phenomenon: from bulky instruments to lab-on-a-chip. IEEE Circ. Syst. Mag. 4(3), 5–15 (2004) 7. Schmitz, A., Wagner, S., Hahn, R., Uzun, H., Hebling, C.: Stability of planar PEMFC in printed circuit board technology. J. Power Sources 127(1), 197–205 (2004) 8. Spherotech - Technical - Characteristics of Polystyrene Particles. http://www.spherotech. com/particle.html 9. Hartley, L., Kaler, K.V.I.S., Luo, J., Paul, R.: Discrete planar electrode dielectrophoresis systems. In: IEEE 1997 Canadian Conference on Electrical and Computer Engineering. Engineering Innovation: Voyage of Discovery, vol. 1, pp. 185–192, May 1997 10. Jones, T.B.: Basic theory of dielectrophoresis and electrorotation. IEEE Eng. Med. Biol. Mag. 22(6), 33–42 (2003) 11. Piacentini, N., Mernier, G., Tornay, R., Renaud, P.: Separation of platelets from other blood cells in continuous-flow by dielectrophoresis field-flow-fractionation. Biomicrofluidics 5(3), 034122 (2011) 12. Egger, M., Donath, E.: Electrorotation measurements of diamide-induced platelet activation changes. Biophys. J. 68(1), 364–372 (1995) 13. Park, S., Zhang, Y., Wang, T.H., Yang, S.: Continuous dielectrophoretic bacterial separation and concentration from physiological media of high conductivity. Lab Chip 11(17), 2893– 2900 (2011) 14. Cen, E.G., Dalton, C., Li, Y., Adamia, S., Pilarski, L.M., Kaler, K.V.: A combined dielectrophoresis, traveling wave dielectrophoresis and electrorotation microchip for the manipulation and characterization of human malignant cells. J. Microbiol. Methods 58(3), 387–401 (2004) 15. Fu, L.M., Lee, G.B., Lin, Y.H., Yang, R.J.: Manipulation of microparticles using new modes of traveling-wave-dielectrophoretic forces: numerical simulation and experiments. IEEE/ASME Trans. Mechatron. 9(2), 377–383 (2004) 16. Abdelbaset, R., Ghallab, Y.H., Abdelhamid, H., Ismail, Y.: A 2D model of different electrode shapes for traveling wave dielectrophoresis. In: 28th International Conference on Microelectronics (ICM), pp. 257–260, December 2016 17. Leys, D., Schaefer, S.P., Lake Success, N.Y.: PWB dielectric substrates for lead-free electronics manufacturing. CIRCUITREE-CAMPBELL- 16, 22–27 (2003) 18. Boughriet, A., Wu, Z., McCann, H., Davis, L.E.: The measurement of dielectric properties of liquids at microwave frequencies using open-ended coaxial probes. In: Proceedings of 1st World Congress on Industrial Process Tomography, pp. 318–322, April 1999

Breast Cancer Detection Using Polynomial Fitting for Intensity Spreading Within ROIs Shaimaa Mostafa, Roaa Mubarak(&), and Mohamed El-Adawy Electronics, Communication and Computer Engineering Department, Faculty of Engineering, Helwan University, Cairo, Egypt [email protected], [email protected], [email protected]

Abstract. The spreading behavior of tumor cells can lead to propose a feature set that can reflect the spreading of tumor starting from a centroid in the Region of Interest (ROI). This paper presents a new feature set which can be used to distinguish between normal and tumor lesions then distinguish between benign and malignant lesions by using two classification techniques the K-nearest neighbor (KNN) and neural networks (NN). Using these features with these two classification algorithms, an excellent accuracy of 100% has been achieved in case of classification between normal and tumor lesions, also a very good accuracy has been achieved in the case of classification between benign and malignant which is 94.2% using K-NN, and 86.92% using NN. Advantage of this proposed technique is the relatively low number of features used, such that there is no need to use features or dimensionality reduction techniques. Keywords: Breast cancer detection  Morphological operation  Mammograms  Curve fitting

1 Introduction Breast cancer is the uncontrolled growth of abnormal cells that start in certain locations in the breast, and spread with time until covering large areas or even the whole breast in very severe cases. Early detection and diagnosis is very efficient to cure and prevent fatality of this disease. Digital mammography [1] and Computer Aided Design, CAD, [2–4] tools have been successful aids in improving detection and diagnoses of cancer in early stages of the disease. The main advantage of this is mainly the reduction of number of times a radiologist may need a biopsy [5]. According to American Cancer Society, one of every 8 women develops a breast cancer during her life. According to Egyptian National Cancer Institute breast cancer reaps 17.6% of cancer in Egypt [6]. Early detection makes the cure rate of this disease reaches almost 98% [6]. Many algorithms have been developed by researchers for automatic detection and classification of abnormality regions. Bright regions in mammograms are nominated regions of interest, ROIs, that can represent cancer, and it is the role of all CAD systems to differentiate those cancerous ROIs from those normal ROIs. [7]. So, masse are areas

© Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_12

130

S. Mostafa et al.

of mammogram which have high intensity region and looks abnormal than other regions of mammogram [8]. The shape of breast cancerous region contours and statistical features are prominent signs to determine the abnormality in mammograms. Preprocessing of mammograms [3, 9–11] is done to improve the contrast of mammograms which will be helpful in the stages of the detection. This step also involves de-noising [12] of the images. So the preprocessing on mammogram image is prepared to reduce the computational rate and exploit the probability of accuracy [13]. Segmenting the breast region from pectoral muscle [14] and surrounding regions is carried out to make it easier to detect the suspicious segments from the rest of breast tissues. The Wiener filter and Contrast Limited Adaptive Histogram Equalization techniques efficiently aids for enhancing the quality of the image [15], it also removes the unwanted background and the pectoral muscle by using thresholding and modified region growing technique respectively. Qasem et al. [16] used the Chan-Vese method to achieve a good segmentation result based on the active contour approach to localize the mass in mammograms. Authors in [17, 18] performed some morphological operations on mammogram images to enhancement the quality of it. Paramkusham et al. [8] proposed a new algorithm for feature extraction based on a polynomial regression technique on the signatures of benign and malignant regions contours. The Max-Mean and Least-Variance techniques were used also to detect the malignant tissues [7]. The authors presented a set of computational tools to aid segmentation and detection of mammograms that contained masses [19]. Nugroho et al. [20] presented a mixed feature between Histogram, gray level co-occurrence matrix(GLCM) and correlation based feature selection(CFS) to select the best feature to be used for classification with less feature dimension. The Gabor filter output, the mean and the standard deviation of the coefficient magnitude were used as image features for classification using K-nearest neighbors [21]. Berbar et al. [22] introduced three features extraction methods for mass classification. Talha in [23] used the fusion of Discrete Cosine Transform (DCT) with Discrete Wavelet Transform (DWT) and support vector machine (SVM) as a classifier. The abnormalities in the mammograms were detected by using median filtering, discrete wavelet transform, fuzzy-C- means and thresholding [24]. Support vector machine and K-Nearest Neighbor classifier were combined to classify a tumor as either benign or malignant based on cell descriptions gathered by microscopic examination [25]. Many classifiers have been used in a lot of literatures to distinguish normal from tumor regions (benign, malignant) such as KNN [26], SVM [8, 14, 27, 28], NN [17, 29], and Fuzzy c-Means [24], and many others. All these methods got accuracy of classification that ranges from 90% up to almost 100% in some cases.

Breast Cancer Detection Using Polynomial Fitting

131

2 Proposed Features The outline of the proposed method is described in Fig. 1.

Fig. 1. Outline of the proposed method.

The feature extraction stage plays a vital rule in defining the accuracy of the classifier. The proposed features extraction will go according to the following steps: 1234-

Unify the size of all mammograms to 256  256 pixels as shown in Fig. 2a. Extract the breast region from the background. A thresholding level has been used to determine the ROI. Applying a series of morphological operation such as opening, closing, erosion and dilation, as in Eqs. (1) and (2) where: ⊖ and ⊕ denote erosion and dilation, respectively:

132

S. Mostafa et al.

a) Original mammogram

b) Abnormal lesion

c) The center of ROI

d) Outlined ROI

Fig. 2. Suspicious region detection

Opening operation: A  B ¼ ðA  BÞ  B

ð1Þ

A  B ¼ ðA  BÞ  B

ð2Þ

Closing operation:

These operations have been used to remove small objects in the image and put a contour around it as shown in Fig. 2b, c, d. 5- Determine the center of each ROI as shown in Fig. 2c. 6- From this center, 8 main axes have been extended as shown in Fig. 2c. The direction of these axes are: 0°, 45°, 90°, 135°, 180°, −45°, −90°, −135°. 7- Along each of these directions the intensity values of the individual pixels have been determined. 8- Polynomials with different degrees have been used to fit the pixels in each of the previous directions. Equation (3) shows the general form of these polynomials where n, the degree of polynomial, will be varied from 1 to 10: Pð X Þ ¼ P1 X n þ P2 X n1 þ . . . þ Pn X þ Pn þ 1

ð3Þ

Where P1, P2… Pn+1 is a row vector of length n + 1 containing the polynomial coefficients in a descending Power. 9- The proposed features will be the coefficients of all these polynomials in different directions.

Breast Cancer Detection Using Polynomial Fitting

133

225 220 215

Intensity values

210 205 200 195

original data Poly. Degree Poly. Degree Poly. Degree Poly. Degree

190 185

1 3 5 7

180 175

0

10

20 30 40 50 60 Distance from the center point in pixels

70

80

Fig. 3. Example of polynomial fittings for one of the abnormal images in the direction −90° starting from center point.

160 original data Poly. Degree Poly. Degree Poly. Degree Poly. Degree

155

1 3 5 7

Intensity values

150

145

140

135

130

0

5

10 15 20 25 Distance from the center point in pixels

30

35

Fig. 4. Example of polynomial fittings for one of the normal images in the direction −90° from the center point

134

S. Mostafa et al.

Figures 3 and 4 show polynomials of degree 1, 3, 5, 7 as examples for a normal and tumor region of interest. From those two figures, it is apparent that there is a difference between the two cases that encourages using these coefficients as discriminant features between the normal and tumor regions.

3 Results Two of the widely used classifiers among most of the literatures, KNN and NN, were used to classify between normal and tumor lesions, and between malignant and benign cases. The abnormal regions of mammogram have high intensity than other regions. This paper used a 100 mammogram images in the case of classification between normal and tumor lesions and 60 mammogram images in the case of classification between benign and malignant lesions from the public Mini-MIAS data base [30] to train and test the presented technique. 3.1

Classification Between Normal and Tumor Lesions Using KNN

The first stage for the KNN classifier was to try different values of K from 2 to 6 while fixing the polynomial degree at an arbitrary value of 2. Features from the main 4 axes (0°, 90°, −90°, and 180°) and features from the whole 8 main axes (0°, 45°, 90°, 135°, 180°, −45°, −90°, −135°) have been applied separately to this classifier. In each case

101

Percentage accuracy of correct recognition

4 direction 8 direction 100

99

98

97

96

95

2

2.5

3

3.5 4 4.5 number of neighbors(k)

5

5.5

6

Fig. 5. The accuracy of correct recognition for the KNN classifier with respect to number of neighbors k.

Breast Cancer Detection Using Polynomial Fitting

135

the accuracy of correct recognition was measured as shown in Fig. 5. Notice from this figure that the best accuracy was obtained at K = 4 for both features taken from either 4 or 8 axes. Also, it is noticed from the same figure that with K = 4, there is no need to use the 8 axes and the data from the 4 axes is enough to use and this is to simplify computation efforts. The second stage with the KNN classifier was to study the effect of varying the polynomial degree on the obtained accuracy, where the value of K was fixed at the best value of 4 obtained from Fig. 5, Then working on features from 4 and 8 axes and changing the polynomial degree from 1 to 10 as shown in Fig. 6. It is noticed from this figure that the accuracy reached 100% at polynomial degrees 1 and 2 and start to decrease after that. Notice from this figure also that working on features from the 8 directions adds little improvement after polynomial degree 2.

Percentage accuracy of correct recognition

100 4 direction 8 direction

95

90

85

80

75

70

65

1

2

3

4

5 6 polynomial degree

7

8

9

10

Fig. 6. The accuracy of correct recognition at different values of polynomial degrees using KNN as a classifier with K = 4.

3.2

Classification Between Normal and Tumor Lesions Using NN

Figure 7 shows the same results as in Fig. 6 but when using the neural network as a classifier instead of KNN. In this case, it has been achieved the same result of 100% correct classification ratio at the polynomial degrees of 1 and 2. Also there was no considerable improvement when using the data from 8 axes instead of 4.

136

S. Mostafa et al. 100

Percentage accuracy of correct recognition

4 direction 8 direction 95

90

85

80

75

70

1

2

3

4

5 6 polynomial degree

7

8

9

10

Fig. 7. The accuracy of correct recognition at different values of polynomial degrees using neural networks as a classifier.

3.3

Classification Between Benign and Malignant Cases Using KNN, and NN

As it is noticed before, that using the data from 8 main axes does not add much considerable improvement on the classification accuracy, so it has been decided to use the data from 4 main axes only to classify the malignant from benign cases. For the KNN classifier, the best value of K was 4, and by changing the polynomial degree from 1 to 10 to get the best correct recognition, it can be noticed from Fig. 8 that the best polynomial degree is 4 for the NN classifier and 2 or 3 for the KNN. The best obtained accuracy for the KNN was 94.2%, and 86.92% for the NN classifier. A comparison of the performance of the proposed features extraction technique with other existing methods in this field is summarized in Table 1.

Breast Cancer Detection Using Polynomial Fitting

NN KNN

95

Percentage accuracy of correct recognition

137

90

85

80

75

70

65

1

2

3

4

5 6 polynomial degree

7

8

9

10

Fig. 8. The accuracy of correct recognition at different values of polynomial degrees using (NN, KNN) in case of classifying benign from malignant cases. Table 1. Comparisons with existing methods Methods Proposed technique Kashyap et al. [24] Nugroho et al. [20]

Features Coefficients of polynomial

Classifier NN, KNN

Accuracy 100%

Region based Moment invariant + fractal dimension Tamura features Mean, standard deviation, smoothness, angular second moment, entropy, and correlation

SVM

91% 96.92% 78.46% 96.66%

Multilayer perceptron (MLP)

4 Conclusion This paper proposed a new features extraction technique to distinguish between normal and tumor lesions, then between benign and malignant lesions. These proposed features based on polynomial fitting for the values of pixel intensities along the principles axes starting from the centroid in each ROI. The advantages of this proposed technique is the relatively low number of features used, such that there is no need to use features selection techniques. Observing that the coefficients from polynomials with degree 1 or 2 are the best coefficients to classify normal from tumor ROIs using either KNN or

138

S. Mostafa et al.

neural network classifiers and that means the number of features in polynomial with degree 2 are 3 features for each axes, so for the 4 axes it will be almost 12 features only. The accuracy of correct recognition in this case was 100% for both classifiers. Also, it is concluded that the coefficients from the 4 axes set are enough to give that excellent recognition ratio. The coefficients from polynomials with degree 2 or 3 are the best coefficients to classify benign from malignant ROIs, the best accuracy in this case was 94.2% for KNN.

References 1. Saha, D., Bhowmik, M.K., De, B.K., Bhattacharjee, D.: A survey on imaging-based breast cancer detection. In: Proceedings of Fourth International Conference on Soft Computing for Problem Solving. Advances in Intelligent Systems and Computing, vol. 335. Springer, New Delhi (2015) 2. Ganesan, K., Acharya, U.R., Chua, C.K., Min, L.C., Abraham, K.T., Ng, K.-H.: Computer-aided breast cancer detection using mammograms: a review. IEEE Rev. Biomed. Eng. 6, 77–98 (2013) 3. Dheeba, J., Singh, N.A., Selvi, S.T.: Computer-aided detection of breast cancer on mammograms: A swarm intelligence optimized wavelet neural network approach. J. Biomed. Inform. 49, 45–52 (2014) 4. Ali, Y., Hamed, S.: Early breast cancer detection using mammogram images: a review of image processing techniques. Biosci., Biotechnol. Res. Asia 12, 225–234 (2015) 5. Burshi, P.B., Kulkarni, D.A.: Digital mammography: a review on detection of breast cancer. Int. J. Adv. Res. Comput. Commun. Eng. 5(1), 386–390 (2016) 6. National Institute of Oncology. http://www.baheya.org// 7. Singh, A.K., Gupta, B.: A novel approach for breast cancer detection and segmentation in a mammogram. Proc. Comput. Sci. 54, 676–682 (2015) 8. Paramkusham, S., Rao, K.M.M., Shivakshit, P., Rao, B.V.V.S.N.P.: A new features extraction method based on polynomial regression for the assessment of breast lesion contours. In: International Conference on Industrial Instrumentation and Control (ICIC), India (2015) 9. Rehman, A.U., Chouhan, N., Khan, A.: Diverse and discriminative features based breast cancer detection using digital mammography. In: 2015 13th International Conference on Frontiers of Information Technology (FIT), pp. 234–0239. IEEE (2015) 10. Bozek, J., Mustra, M., Delac, K., Grgic, M.: A survey of image processing algorithms in digital mammography. In: Grgic, M., Delac, K., Ghanbari, M. (eds.) Recent Advances in Multimedia Signal Processing and Communications. SCI, vol. 231, pp. 631–657. Springer, Heidelberg (2009) 11. Appukuttan, A., Sindhu, L.: Breast cancer-early detection and classification techniques: a survey. Int. J. Comput. Appl. 132, 0975–8887 (2015) 12. Sahar, M., Nugroho, H.A., Ardiyanto, I., Tianur, Choridah, L.: Automated detection of breast cancer lesions using adaptive thresholding and morphological operation. In: 2016 International Conference on Information Technology Systems and Innovation (ICITSI). IEEE, Bandung, Bali (2016) 13. Charate, A.P., Jamge, S.B.: The preprocessing methods of mammogram images for breast cancer detection. Int. J. Recent Innov. Trends Comput. Commun. (IJRITCC) 5(1), 261–264 (2017)

Breast Cancer Detection Using Polynomial Fitting

139

14. Qayyum, A., Basit, A.: Automatic breast segmentation and cancer detection via SVM in mammograms. In: International Conference on Emerging Technologies (ICET), pp. 1–6. IEEE (2016) 15. Makandar, A., Halalli, B.: Pre-processing of mammography image for early detection of breast cancer. Int. J. Comput. Appl. 144(3), 0975–8887 (2016) 16. Qasem, A., Abdullah, S.N.H.S., Sahran, S., Tengku, T.S.M. R., Hussain, I., Abdullah, N., Ismail, F.: Breast cancer mass localization based on machine learning. In: IEEE 10th International Colloquium on Signal Processing and its Applications (CSPA 2014), Kuala Lumpur, Malaysia (2014) 17. Helwan, A., Abiyev, R.H.: ISIBC: an intelligent system for identification of breast cancer. In: IEEE International Conference on Advances in Biomedical Engineering (ICABME). IEEE, Beirut, Lebanon (2015) 18. Paramkusham, S., Rao, K.M.M., Rao, B.V.V.S.N.P.: Early stage detection of breast cancer using novel image processing techniques, matlab and labview implementation. In: 15th International Conference on Advanced Computing Technologies (ICACT). IEEE, Rajampet, India (2013) 19. Pereiraa, D.C., Ramosb, R.P., Do Nascimentoc, M.Z.: Segmentation and detection of breast cancer in mammograms combining wavelet analysis and genetic algorithm. Comput. Methods Progr. Biomed. 114(1), 88–101 (2014) 20. Nugroho, H.A., Faisal, N., Soesanti, I., Choridah, L.: Analysis of computer aided diagnosis on digital mammogram images. In: International Conference on Computer, Control, Informatics and Its Applications. Bandung, Indonesia (2014) 21. Dong, A., Wang, B.: Feature selection and analysis on mammogram classification. In: IEEE Pacific Rim Conference on Communications, Computers and Signal Processing (PacRim), Victoria, BC, Canada (2009) 22. Berbar, M.A., Alqahtani, A., Hussain, M.: Masses classification using discrete cosine transform and wavelet-based directional filter bank for breast cancer diagnosis. J. Med. Imaging Heal. Inf. 6(1), 117–124 (2016) 23. Talha, M.: Classification of mammograms for breast cancer detection using fusion of discrete cosine transform and discrete wavelet transform features. Biomed. Res. 27(2), 322–327 (2016). India 24. Kashyap, K.L., Bajpai, M.K., Khanna, P.: Breast cancer detection in digital mammograms. In: IEEE International Conference on Imaging Systems and Techniques (IST) (2015) 25. Rong, L., Yuan, S.: Diagnosis of breast tumor using SVM-KNN classifier. In: 2010 Second WRI Global Congress on Intelligent Systems (GCIS), Wuhan, China (2010) 26. Kamalakannan, J., Vaidhyanathan, A, Thirumal, T.: Study on different classification technique for mammogram image. In: (2015) International Conference on Circuit, Power and Computing Technologies (ICCPCT). IEEE (2015) 27. Jeyashree, K., Chandrabalan, G.: Detection of breast cancer using continuous wavelet transform and support vector machine. Int. J. Adv. Res. Electron. Commun. Eng. (IJARECE) 5(3), 790–795 (2016) 28. Charate, A.P., Jamge, S.B.: Mammogram image analysis for breast cancer detection. Int. J. Recent Innov. Trends Comput. Commun. (IJRITCC) 4(11), 305–308 (2016) 29. Kolhe, S., Sawarkar, S.: Detection of mass and circumscribed mass in mammograms employing radial-basis-function neural networks. In: International Conference and Workshop on Emerging Trends in Technology (ICWET 2010), TCET, Mumbai, India (2010) 30. The mini-MIAS database of mammograms. http://peipa.essex.ac.uk/info/mias.html

Low Complexity Intra-prediction Algorithm for Video Coding Standards Farid Z. Saleh1(B) , Samir G. Sayed1,2 , and Amr E. Mohamed1 1

Department of Electronics, Communications, and Computers Engieering, Helwan University, Cairo, Egypt [email protected] 2 Department of Electronic and Electrical Engineering, University College London (UCL), London, UK [email protected]

Abstract. In this paper, two intra-prediction techniques have been developed to improve the performance of the video coding standards such as H.264/AVC and H.265/HEVC by minimizing their computational complexity. The first algorithm is named Hybrid Intra-prediction algorithm. This algorithm considers the 16×16 and 4×4 intra-prediction modes. The second algorithm, named weighted intra-prediction algorithm, has been proposed for the 4 × 4 intra-prediction. In this algorithm, few modes including the DC, the vertical, and the horizontal modes are weighted together into only one mode to predict the 4 × 4 macroblock. The simulation results show that both algorithms can minimize the computational time complexity of the H.264/AVC with limited degradation in the peak signal to noise ratio (PSNR). The simulation results of the hybrid Intra-prediction algorithm show that the time complexity is decreased by around 39% while the PSNR is decreased by 0.3%. In addition, the simulation results of the weighted intra-prediction algorithm show that the time complexity is decreased by 52% and the PSNR is decreased by only 0.7% dB. Keywords: AVC/HEVC sion · Video codec

1

·

Intra prediction coding

·

Fast mode deci-

Introduction

International Telecommunication Union (ITU) facts and figures report in 2016 [1] shows that the number of Internet users reached 3.5 billion, the number of LTE users reached almost 4 billion worldwide, and the number of Mobile users reached an estimated 7 billion mobile-cellular subscriptions globally. Subsequently, multimedia, audio and video (AV) applications such as video-conference, mobile TV, Internet video streaming, and storage and retrieval applications, have to be adapted to these technologies. Therefore, video coding standards are continuously developed by two standardization organizations which are the c Springer International Publishing AG 2018  A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3 13

Low Complexity Intra-prediction Algorithm for Video Coding Standards

141

ITU Telecommunication Standardization Sector (ITU-T) and the International Organization for Standardization/International Electro technical Commission (ISO/IEC). The ISO/IEC Moving Picture Experts Group (MPEG) [2] produced MPEG-1 and MPEG-4. The ITU-T group [3] produced H.261 and H.263. Whereas the two organizations produced together the H.262/MPEG-2 Video and H.264/MPEG-4 Advanced Video Coding (AVC) standards, and the H.265 High Efficiency Video Coding (HEVC) standards. The H.264/AVC standard has emerged to address the need for higher coding efficiency that is not guaranteed in MPEG-2/H.262 standard. A number of new features has been added to the H.264/AVC to not only improve the coding efficiency, but also to have robust transmission over lossy communication channels needed for the existing and future applications and networks. Although these features have improved the coding efficiency, they also have dramatically increased the computational complexity in the H.264/AVC system. However, the H.265/HEVC has been designed to gain all features of the H.264/AVC with limited computational complexity by using the parallel processing architectures. Intra-prediction is a technique that has increased the computational complexity significantly in the H.264/AVC encoder. As explained later, the H.264/ AVC supports nine 4 × 4 intra-prediction modes. Both the encoder and decoder predict the current block using these nine modes. The H.264/AVC standard uses a technique called rate-distortion optimization (RDO) to select the best coding mode that can maximize the coding quality [4,5]. To select the best mode, the differences between the current block and its predicted values, called residues, from all nine modes are calculated. The mode which has the minimum ratedistortion (RD) is selected to be the best mode. All of these processes explain why the computational complexity of the intra-prediction technique is significantly increased in the H.264/AVC systems. Therefore, extensive intra-prediction techniques have been proposed in literature to minimize the computational complexity of the original intra-prediction technique in the H2.64-AVC standard. The proposed techniques can be classified into four different categories [6]. These categories are techniques based on reducing the number of prediction modes [7–10], techniques based on designing different transformation techniques [11], techniques based on rearranging the encoding order of 4 × 4 intra-prediction modes [12,13], and techniques based on cost function enhancement to decrease hardware cost and to decrease the processing time [14]. All of these techniques have aimed to improve the coding efficiency and decrease data-rate at lower computational complexity compared to the standard intra-prediction technique. In this paper, two intra-prediction techniques have been developed to improve the performance of the H.264/AVC standard by minimizing its computational complexity. The first algorithm is named Hybrid Intra-prediction algorithm. This algorithm considers the 16 × 16 and 4 × 4 intra-prediction modes. The second algorithm, named weighted intra-prediction algorithm, considers the 4 × 4 intraprediction to minimize the computational complexity. In this algorithm, up to four modes including the DC, the vertical, the horizontal, and horizontal-up

142

F.Z. Saleh et al.

modes are weighted together into one mode to predict the 4 × 4 macroblock. The simulation results show that both algorithms can minimize the computational complexity of the H.264/AVC with limited degradation in the peak signal to noise ratio (PSNR). The rest of this paper is organized as follows. Section 2 describes the two proposed algorithms. Simulation results of the proposed algorithms are given in Sect. 3. Finally, conclusions and future work are introduced in Sect. 4.

2

The Proposed Algorithms

This paper introduces two different intra-prediction algorithms for coding both the 4 × 4 and 16 × 16 luma blocks. To measure the selection probability of the nine 4×4 modes, a data set of six video files with 300 frames with QCIF (Quarter Common intermediate Format, i.e. resolution of 176 × 144 pixels) for each file is applied at the encoder of the H.264/AVC standard. The results given in Table 1 show the percentage of selection of each mode as the best mode out of the 9 modes for the six videos and 4 × 4 luma intra-prediction mode. The probability of each mode can be statistically calculated by counting the number of times this mode is selected during the encoding process of a given frame. The accuracy of calculating this probability is increased by increasing the number of frames from different video files. As shown in Table 1, the probability of selecting the modes 0, 1, and 2 together is higher than 69%. However, the other modes from 3 to 9 have together low probability of selection which does not exceed 31% on average. In addition, the probabilities of modes 0, 1, and 2 are quite similar. Therefore, it is possible to ignore the modes from 3 to 9 which have minimum probabilities of selection, and the mode 8 can be selected with the modes 0, 1, and 2. This may decrease the processing time of selecting the best mode with minimum performance degradation. In the following subsection, the proposed algorithms which are named Hybrid and Weighted Intra-prediction algorithms are explained in details. Table 1. Selection Percentage of the 9 modes for 4 × 4 Luma intra-prediction Video

Mode 0 Mode 1 Mode 2 Mode 3 Mode 4 Mode 5 Mode 6 Mode 7 Mode 8

index

(%)

(%)

(%)

(%)

(%)

(%)

(%)

(%)

(%)

1

7.22

48.29

11.07

2.45

4.32

2.06

6.75

3.13

14.71

2

34.67

25.02

14.39

3.93

3.24

5.85

3.48

5.44

3.98

3

27.54

28.72

16.38

3.53

4.21

4.87

4.49

4.93

5.34

4

28.64

11.25

38.15

3.10

3.12

4.05

2.87

4.26

4.56

5

11.66

31.75

29.79

2.28

3.36

1.83

7.39

2.18

9.76

6

12.18

9.92

29.44

6.12

7.86

7.20

7.42

8.40

11.44

25.83

23.20

3.57

4.35

4.31

5.40

4.72

8.30

Average 20.32

Low Complexity Intra-prediction Algorithm for Video Coding Standards

2.1

143

Algorithm 1: Hybrid Intra-prediction Algorithm

The 16 × 16 luma mode provides better performance at lower computational cost for the homogeneous regions of the frame [13]. While the 4 × 4 mode has better performance for the nonhomogeneous regions in the frame, but it has higher computational cost compared with the 16 × 16 mode. For this reason, in this research a hybrid intra-prediction algorithm has been proposed to gain the advantages of both 4 × 4 and 16 × 16 modes into one mode. In addition, a different strategy of the best mode selection has been developed to minimize the search time in both 4 × 4 and 16 × 16 modes. The proposed algorithm is consisting of two modules explained in Sects. 2.1.1 and 2.1.2. In each module, the sum absolute error (SAE) is calculated for the best mode of the 4 × 4 and 16 × 16 intra-prediction modes. The mode that achieves minimum SAE is chosen to encode the current macroblock. The details of the proposed algorithm is given as follows.

Fig. 1. Selected 24 pixels for SAE calculation

2.1.1

162 -Intra-prediction Module

The standard 16 × 16 intra-prediction algorithm has four different prediction modes which are vertical, horizontal, DC, and plane modes. To choose the best mode, the SAE is calculated for each mode. This requires higher computational processing time, because there are 162 pixels in each macroblock. In this paper,

144

F.Z. Saleh et al.

another method is used to calculate the SAE for the four different modes and then select the mode which has minimum SAE. This method is built on the method used in [6] to minimize the processing time with minimum degradation in the encoder performance. In the first stage of this method the SAE is calculated using only 24 pixels for the vertical, horizontal, and plane modes as shown in Fig. 1. The DC mode in not considered in this stage of the algorithm. The mode that has minimum SAE is chosen as the best mode in this stage. In the second stage of the algorithm, the SAE is calculated for the 16 × 16 pixels of both the DC mode and the selected mode from the first stage. Hence, the mode that gives the minimum SAE is considered the best mode of the 16 × 16 intra-prediction. The number of calculations in the proposed method is 24 × 3 + 16 × 16 × 2 = 584. Whereas the number of calculations is 16 × 16 × 4 = 1024 in the standard H.264/AVC 16×16 intra-prediction algorithm. Consequently, the computational process time can be decreased by around 43%.

Fig. 2. Frame encoding using Hybrid Intra-prediction

2.1.2

42 -Intra-prediction Module

The standard 4×4 intra-prediction algorithm has nine different prediction modes. To select the best mode, the SAE for the nine modes is calculated and the mode that guarantees the minimum SAE is selected as the best mode for the current 4 × 4 macroblock. As result, the computational complexity is increased dramatically. The statistical analysis given in Table 1 shows that the most effective modes are the vertical, horizontal, and DC modes. Accordingly, up to four modes are

Low Complexity Intra-prediction Algorithm for Video Coding Standards

145

calculated for each 4 × 4 macroblock instead of calculating the nine modes for each macroblock. Each 16×16 macroblock is split into sixteen 4×4 macroblocks. In each 4 × 4 macroblock, the mode from the vertical, horizontal, and DC modes that has minimum SAE is selected as the best mode for that macroblock. This process is repeated sixteen times for the 4 × 4 macroblocks into the current 16 × 16 macroblock. The calculations can be decreased by around 56% where up to four modes out of the nine modes are calculated for each macroblock. The average SAE calculated for both the 16 × 16 macroblock in Sect. 2.1.1 and the 4 × 4 macroblocks in Sect. 2.1.2 are compared together. The intraprediction mode which achieves minimum SAE is chosen as the best intraprediction mode. For this reason the proposed algorithm is named Hybrid Intraprediction algorithm. The RDO total computational complexity can be calculated by C8 (L4 ×16+L16 ) where C8 , L4 , L16 are the number of modes of the 8×8 chroma block, the 4×4 luma block, and the 16×16 luma block, respectively. Then the RDO complexity of the proposed algorithm is 1 × (3 × 16 + 4) = 52 operations. Therefore, the proposed algorithm decreases the RDO computational complexity significantly compared to standard H264/AVC encoder which requires 1 × (9 × 16 + 4) = 148 operations. The pseudo code of the proposed Hybrid Intra-prediction algorithm is given in algorithm 1. For a given frame as shown in Fig. 2, it is divided into 16×16 macroblocks. This is given in lines (1 to 10) in algorithm 1. The first row and column 16 × 16 macroblocks in the frame are encoded using 162 -Intra prediction algorithm given in Sect. 2.1.1 as shown in line (11) and (12) in algorithm 1. The rest of the 16 × 16 macroblocks are encoded by either the 162 - or 42 -Intra-prediction module according to the module that has the minimum SAE illustrated in lines (14 to 19). For instance, if the average SAE of the 4 × 4 is less than the average SAE of 16 × 16, the current macroblock is encoded by the 42 -intra-prediction module given in Sect. 2.1.2. In this case there are sixteen 4 × 4 macroblocks. The first 4 × 4 macroblock is encoded with no prediction. The other fifteen macroblocks may be predicted by selecting the best mode from the only three modes 0,1, or 2. 2.2

Algorithm 2: Weighted Intra-prediction Algorithm

In this algorithm, the sixteen pixels of the current 4 × 4 block are calculated by combining some of the nine intra-prediction modes of the H.264/AVC standard. The modes that have the highest probability of selection by the RDO algorithm are combined together to construct the new intra-prediction mode. The calculated probability for each mode represents the weight of that mode in the proposed new mode. As the number of modes involved in the new mode increases, not only the coding efficiency increases but also the complexity increases. The predicted pixels under the new mode is calculated in Eq. (1). p (i, j) = C

n  k=0

Wk Ck (i, j) ∀ 0 ≤ i, j ≤ 3 & n ≤ 8

(1)

146

F.Z. Saleh et al.

Algorithm 1. Hybrid Intra-prediction Algorithm Require: N -Video frames to be encoded Ensure: Encoding algorithm for each frame of the given video 1: for (t = 1 → N ) do 2: Nr ← rows of N 3: Nc ← columns of N 4: for (i = 1 → Nr /16) do 5: r1 ← (i − 1) ∗ 16 + 1 6: r2 ← i ∗ 16 7: for (j = 1 → Nc /16) do 8: c1 ← (j − 1) ∗ 16 + 1 9: c2 ← j ∗ 16 10: M Bij ← N ([r1 : r2 ], [c1 : c2 ]) 11: if (i == 1 || j == 1) then 12: Encode M Bij using 162 Intra-prediction Module Sect. 2.1 13: else  14: SAE42 ← 16 k=1 |M Bo (k) − M Bp (k)| 15: SAE162 ← |M Bij − M Bij p | 16: if (SAE42 < SAE162 ) then 17: Encode M Bij using 42 Intra-prediction Module Sect. 2.1 18: else 19: Encode M Bij using 162 Intra-prediction Module Sect. 2.1 20: end if 21: end if 22: end for 23: end for 24: end for

p (i, j) is the predicted coefficient in position (i, j) using the prowhere C posed weighted intra-prediction mode. Wk represents the weight of the k’s intraprediction mode of the H.264/AVC standard. Ck (i, j) is the coefficient calculated by mode number k in position (i, j). According to the results given in Table 1, it is possible to calculate the value of Wk given in Eq. (1) as follows. pk Wk = m−1 k = 1, 2, ..., n (2) i=0 pi where pk represents the mode selection probability as given in Table 1 and m represents the number of selected modes. For example, when the first two modes 0 and 1 are only selected, then the weights p0 = 0.2032 and p1 = 0.2583. Then, the weights W0 and W1 are calculated from Eq. (2), and their values will be W0 = 0.56 and W1 = 0.44. Therefore, the Eq. (1) is calculated as follows. p (i, j) = 0.56 C1 (i, j) + 0.44 C2 (i, j) ∀ 0 ≤ i, j ≤ 3 C

(3)

In similar manner, when the modes 0, 1, and 2 are selected, the probabilities based on Table 1 are p0 = 0.2032, p1 = 0.2583, and p2 = 0.2320. Then, the weights W0 , W1 and W2 are calculated from Eq. (2) as W0 = 0.29, W1 = 0.37, and W2 = 0.34. Equation (1) is computed as follows.

Low Complexity Intra-prediction Algorithm for Video Coding Standards

147

p (i, j) = 0.29 C0 (i, j) + 0.37 C1 (i, j) + 0.34 C2 (i, j) ∀ 0 ≤ i, j ≤ 3 C

(4)

When the modes from 0 to 2 and mode 8 have been selected, the weights according to the Eq. (2) are W0 = 0.26, W1 = 0.33, W2 = 0.30, and W8 = 0.11, then Eq. (1) is given by p (i, j) = 0.26C0 (i, j) + 0.33 C1 (i, j) + 0.30C2 (i, j) + 0.11C8 (i, j) ∀ 0 ≤ i, j ≤ 3 C (5) Therefore, the sixteen coefficients of the proposed 4 × 4 intra-prediction algorithm can be calculated according to Eq. (3), or (4), or (5). It is noticed that, the modes 1, and 2 have the maximum weights under the three proposed modes.

3

Simulation Results

In this paper, the two proposed algorithms are implemented with JM 19.0 reference software [15]. The simulation parameters which are used with the different test sequences are given in Table 2. The system platform used in the simulation is Intel Core2 Quad, 2.8 GHz, and 8 Gbytes RAM. The performance metrics used to compare the performance of the proposed algorithms with other mode decision techniques are the Bjontegaard delta-PSNR (BD−P SN R)[16] and the encoding time reduction ΔTenc . BD − P SN R is recommended by the JVT Test Model Ad-Hoc Group [17]. The PSNR is used in computation of the BD − P SN R and is given as follows. P SN RdB = 10 log10

2552 M SE

dB

(6)

where the mean square error (MSE) for the 4:2:0 YUV video format is given as follows [9]. M SE =

4 × M SEY + M SEU + M SEV 6

Table 2. Simulation parameters Parameter

Value/Mode

No. of frames

300

Frame rate (frames/sec)

30

Quantization parameter (QP) 20, 24, 28, 32 Video structure

III...

Profile

Main

Video format

4:2:0

Entropy coding

CABAC

RD optimization mode

High complexity mode

(7)

−28.73 −0.18

−37.67 −0.42

Average

−28.98 −0.56

−26.28 −0.39

−33.31 −0.32

−39.30 −0.74

−38.06 −0.45

−42.14 −0.30

−40.08 −0.53

Football

Hall

Coastguard

Average

−29.53 −0.43

−29.53 −0.45

−40.83 −0.61

Paris

(b) CIF (352 × 288) data sequences

−29.47 −0.35

−28.55 −0.47

−36.18 −0.21

−27.76 −0.55

−38.26 −0.81

News

Bridge-far

−29.19 −0.30

−36.18 −0.21

Bridge-Close

Grandmother −37.02 −0.62

−33.14 −0.27

−40.70 −0.26

Coastguard

(%)

−39.16 −0.42

−43.29 −0.26

−36.91 −0.31

−37.53 −0.63

−38.91 −0.48

−39.20 −0.35

−38.42 −0.19

−39.39 −0.52

−36.91 −0.51

−39.78 −0.26

−41.49 −0.25

(%)

(%)

−52.18 −0.93

−56.95 −0.52

−49.18 −1.01

−50.36 −0.93

−52.23 −1.26

−52.63 −0.73

−50.70 −0.49

−51.64 −0.85

−50.90 −1.34

−54.91 −0.36

−55.01 −0.63

(%)

−54.34 −1.01

−66.59 −0.82

−48.82 −1.01

−50.49 −0.89

−51.44 −1.31

−51.69 −0.78

−50.10 −0.56

−51.58 −0.75

−48.83 −1.27

−53.36 −0.39

−54.57 −0.91

(%)

(%)

(%)

ΔTenc BD-PSNR

(%)

(%)

(%)

ΔTenc BD-PSNR ΔTenc BD-PSNR ΔTenc BD-PSNR ΔTenc BD-PSNR

Proposed algorithm (1)

Proposed algorithm (2)-Eq. (4)

Sojeong [9]

Proposed algorithm (2)-Eq. (3)

Pan [7]

(a) QCIF (176 × 144) data sequences

Source

Table 3. Comparison with conventional techniques

(%)

−51.33 −0.98

−53.74 −0.75

−49.19 −1.00

−50.68 −0.87

−51.71 −1.29

−51.84 −0.76

−50.61 −0.53

−51.95 −0.70

−48.90 −1.27

−52.94 −0.48

−54.78 −0.84

(%)

ΔTenc BD-PSNR

Proposed algorithm (2)-Eq. (5)

148 F.Z. Saleh et al.

Low Complexity Intra-prediction Algorithm for Video Coding Standards

149

The M SEY , M SEU , M SEV are the mean square error for the Y, U, and V video components, respectively. The M SEY is calculated by. M SEY =

m−1 n−1 1  [I(i, j) − D(i, j))]2 mn i=0 j=0

(8)

where m and n are the width and the height of the frame. I(i, j) and D(i, j) represent the pixel value in the position i and j in the original frame and the decoded frame, respectively. The encoding reduction time ΔTenc is defined as ΔTenc =

TM D − TJM TM D

%

(9)

where TM D and TJM stand for the encoding time of the original JM reference software and one of the mode decision techniques in given Table 3, respectively. The simulation results of the two proposed algorithms Hybrid Intraprediction algorithm, algorithm 1, and the Weighted Intra-prediction algorithm, algorithm 2, compared with two mode decision algorithms in [7,9] are given in Table 3. The JM 19.0 is used as the reference model for the comparison. As show in Table 3, the two proposed algorithms reduce the time complexity significantly compared with the other algorithms [7,9]. This because the algorithms in [7,9] require a number of complex preprocessing to select the best intra-prediction mode. The proposed Hybrid Intra-prediction algorithm has better PSNR compared with the Weighted Intra-prediction algorithm and algorithms in [7,9]. However, the proposed Weighted Intra-prediction algorithm has better time complexity. The simulation results of the proposed Weighted Intraprediction algorithm, algorithm 2, compared to the H.264/AVC standard are given in Table 3 for the same nine videos used with the Hybrid Intra-prediction algorithm. According to the average values of the nine videos given in the Table 3, the time complexity of the Weighted Intra-prediction algorithm is better than the Hybrid Intra-prediction algorithm and also better than the two algorithms in [7,9] at the cost of small degradation in the PSNR.

4

Conclusions

In this paper two intra-prediction techniques are developed to minimize the computational complexity of the H.264/AVC standard. The first algorithm is named Hybrid Intra-prediction algorithm. This algorithm considers the 16 × 16 and 4 × 4 intra-prediction modes. The simulation results show that the Hybrid Intraprediction algorithm improves the time complexity by 39% while the PSNR is decreased by only 0.35%. This may have neglected effect on the quality of the video stream. The second algorithm named Weighted Intra-prediction algorithm is proposed for the 4 × 4 intra-prediction. In this algorithm, up to four modes are weighted together to predict the 4 × 4 macroblock. The simulation results show that the degradation in the PSNR is less than 1.0% and the time complexity is decreased by 52%. Therefore, the two proposed algorithms guarantee

150

F.Z. Saleh et al.

low time complexity. For the future work, this research will be extended to the H.265/HEVC standard and selecting the quantization parameter to achieve better performance with low time complexity .

References 1. ITU-T: ICT Facts and Figures - The World in 2016 (2016). http://www.itu.int/ en/ITU-D/Statistics/Documents/facts/ICTFactsFigures2016.pdf 2. MPEG: ISO/IEC Moving Picture Experts Group (2017). http://mpeg.chiariglione. org/ 3. Adireddy, R., Shastry, P.V.: Efficient motion compensation solution for H264 ultra HD codec. In: IEEE International Conference on Signal Processing and Communication (ICSC), pp. 490–494 (2013) 4. Li, H., Tang, Z., Huang, H., Zhao, B., Bin, L.: A new bit-rate control algorithm for H.264 on the basic unit layer. In: Park, J., Pan, Y., Kim, C.S., Yang, Y. (eds.) Future Information Technology, pp. 313–318. Springer, Heidelberg (2014) 5. Balaji, L., Thyagharajan, K.K.: Fast mode decision algorithm for H.264/SVC. In: Advances in Intelligent Systems and Computing, pp. 405–412. Springer, Cham (2015) 6. Kim, J., Kim, K.: Fast mode decision for H.264 intra prediction with prediction samples easy to generate. In: 22th IEEE International System-on-Chip Conference (SOCC) (2008) 7. Pan, F., Lin, X., Rahardja, S., Lim, K.P., Li, Z.G., Wu, D., Wu, S.: Fast mode decision algorithm for intraprediction in H.264/AVC video coding. IEEE Trans. Circuits Syst. Video Technol. 15, 813–822 (2005) 8. Luhandjula, T., Ferguson, K.L.: Sampling point path selection for fast intra mode prediction. In: Picture Coding Symposium (PCS) (2015) 9. Lim, S., Kim, H., Choi, Y., Yu, S.: Fast intra-mode decision method based on DCT coefficients for H.264/AVC. SIViP 9, 481–489 (2015) 10. Mazhar, A.A., Abdalla, A.M.: Joint reference frame inter-mode selection for fast H.264 video coding. SIViP 10, 617–623 (2016) 11. Kessentini, A., Samet, A., Ayed, M.A.B., Masmoudi, N.: Fast mode decision algorithm for H.264/SVC enhancement layer. J. Real-Time Image Proc. 11, 385–400 (2016) 12. Orlandic, M., Svarstad, K.: A low complexity H.264/AVC 4 × 4 intra prediction architecture with macroblock/block reordering. In: IEEE International Conference on Reconfigurable Computing and FPGAs (ReConFig) (2013) 13. Rhee, C.E., Kim, T.S., Lee, H.J.: An H.264 high-profile intra-prediction with adaptive selection between the parallel and pipelined executions of prediction modes. IEEE Trans. Multimed. 16, 947–959 (2014) 14. Martuza, M., Wahid, K.A.: Implementation of a cost-shared transform architecture for multiple video codecs. J. Real-Time Image Proc. 10, 151–162 (2015) 15. Joint Video Team (JVT) of ISO/IEC MPEG & ITU-T VCEG: H.264/AVC reference software. Version JM 19.0 (2016) 16. Bjontegaard, G.: Calculation of average PSNR differences between RD-curves. In: ITU-T 13th VCEG Meeting, Document VCEG-M33 (2001) 17. JVT Test Model Ad Hoc Group: Evaluation sheet for motion estimation. Version 4 (2003)

Autonomic Self-healing Approach to Eliminate Hardware Faults in Wireless Sensor Networks Walaa Elsayed1(B) , Mohamed Elhoseny2,4 , A.M. Riad2 , and Aboul Ella Hassanien3,4 1

2

Faculty of Computers and Information, Banha University, Banha, Egypt mohamed [email protected] Faculty of Computers and Information, Mansoura University, Mansoura, Egypt 3 Faculty of Computers and Information, Cairo University, Giza, Egypt 4 Scientific Research Group in Egypt (SRGE), Cairo, Egypt http://www.egyptscience.net

Abstract. Recently, Wireless Sensor Networks (WSNs) are gained great attentions due to its ability to serve effectively in different applications. However, sensor nodes have energy and computational challenges. Moreover, WSNs may be prone to software failure, unreliable wireless connections, malicious attacks, and hardware faults; that make the network performance degrade significantly during its lifespan. One of these wellknown challenges that affect the network performance is the fault tolerance. Therefore, this paper reviews this problem and provides a selfhealing methodology to avoid these faults. Moreover, the structure and challenges of wireless sensor networks and the main concepts of selfhealing for fault management in WSN are discussed. The results of the proposed method are illustrated to evaluate the network performance and measure its ability to avoid the network failure. Keywords: Wireless sensor network · Node failure Fault diagnosis · Fault tolerance · Sensor nodes

1

· Fault detection ·

Introduction

Wireless sensor networks (WSNs) have attracted much interest in recent years. They are now being considered for many critical applications such as infrastructure monitoring [1], firefighting [2], pollution control [3], assisted living [4], military surveillance, forest monitoring, disaster management, space exploration, factory automation, secure installation, border protection, battlefield surveillance [5], tracking [7], industrial, building, shipboard, and transportation systems automation. Hence, the urgent need for research into all aspects of WSNs has become evident. Although the individual sensors sensing range is limited, WSNs can cover a large space by integrating data from many sensors. Each of them has limited computation, sensing and communication abilities. It is still a challenge to realize a distributed WSN comprising: small modules; high speed, c Springer International Publishing AG 2018  A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3 14

152

W. Elsayed et al.

low latency, and reliable network infrastructures; software platforms are supporting easy and efficient installation of the WSN; and sensor information processing technologies. Sensor nodes are possibly prone to unexpected failures and malicious attacks. Therefore, they should have the ability to perform self-healing. The healing mechanism is proposed to include: (i) monitoring to collect data from the system, (ii) analyzing whether something is going wrong in the system, (iii) planning to create desired changes in order to execute the changes and (iv) performing the desired actions. A comparison between the basic network topologies are shown at Table 1. It includes fully connected, mesh, star, ring, tree, bus. A single network may consist of several interconnected subnets of different topologies. Networks are further classified as Local Area Networks (LAN), e.g. inside one building, or Wide Area Networks (WAN), e.g. between buildings [9,10,22,24–27]. Each of these topologies presents its own set of challenges, advantages and disadvantages. Table 1. Evolution capabilities of network topologies Topology Power usage Communication range Requires time synchronization Star

Low

Short

No

Ring

Low

Short

No

Bus

Low

Short

No Yes

Tree

Low

Long

Mesh

Low

Long

No

Hybrid

Low

Long

Depends on the configuration

There are number of design factors for designing an effective and efficient wireless sensor networks. Some of them are illustrated below [6,12,13]: 1. Self-healing: WSNs are different from traditional networks. Nodes in WSNs are prone to failure due to energy depletion, hardware failure, communication link errors, malicious attack, and so on. If its operating quality decreases at all, a small failure can cause total breakdown. Therefore, the management system should be aware of such dynamics and it should adjust accordingly. 2. Memory and Processing Limitations: The sensor nodes are supposed to have limited memory and processing power. The management applications need to be aware of such constraints and may only impose minimal overhead on the low-powered nodes for the storage of management information and processing. 3. Limited Bandwidth consumption: The energy cost associated with communication is usually more than that of sensing and processing. Therefore, the management applications should be designed with this consideration in mind. Moreover, some sensor technologies may also have bandwidth limitations in the presence of high channel impairments.

Autonomic Self-healing Approach to Eliminate Hardware Faults in WSNs

153

4. Adaptability: The management system should be able to adjust to network dynamics and rapid changes in the network topology. The system should be able to gather the reported state of the network and the topology changes. It should also be able to handle node mobility, the addition of new nodes, and the failure of existing nodes. 5. Scalability: Sensor nodes are assumed to be deployed in large numbers. The management system should be able to handle large volumes of sensory data as well as high density of sensor nodes. 6. Production Costs: The cost of each sensor node has to be kept low at least by allocating minimal resources to the management system. 7. Power Consumption: Sensor devices are mostly battery-operated; therefore, the management applications should be able to run on the sensor nodes without consuming too much energy. The management operations should be lightweight on node-local resources in order to prolong its lifetime, thereby, contributing to the network lifetime as a whole.

2

Self-healing Methodology

Self-Healing is a new area of research that deals with fault tolerance for dynamic systems. It deals with imprecise specification, uncontrolled environment and reconfiguration of systems according to their dynamics. The term Self-healing denotes the capability of a software system to examine find, diagnose and react to system malfunctions. Self-healing components or applications must be able to observe system failures, evaluating constraints imposed by the outside, and to apply appropriate corrections [14]. Self-healing mechanism functions include basically number of cycles. The first cycle is called the monitoring cycle. During the monitoring cycle, the systems monitor will inspect the computer environment for any improper conduct. After the monitor’s inspections are complete, it will send the data gathered through current observations to the next stage. The second phase of the cycle is called error detection and diagnosis; if the diagnosis reports that there is no fault in the system then it will loop back to the monitor for more observations. If there is an error detected by the monitor, the error detection cycle will report it to the next stage of the cycle. The third stage of the cycle is known as analysis and selection of a repair operation. At this stage, the fault is analyzed and a method of repairing is determined at this part of the cycle. After the repair operation is determined, the report is passed onto the finally phase of the cycle called execute repair and operation (self-repair). Any needed repairs are completed at this phase in the cycle. Once, the faulty areas are self-repaired the cycle begins all over again. Since this cycle is a closed loop, the process of self-healing will continuous heal itself as depicted in Fig. 1 [15]. 2.1

Sensor Node Faults

Sensor nodes are possibly prone to unexpected failures and malicious attacks. Failures in WSN are volatile and may encounter crash or omission, timing, value

154

W. Elsayed et al.

Fig. 1. Self-healing system process

or arbitrary failures. Crash failure is determined by a service that does not respond periodically to requests. This could be caused by radio interference that leads to occasional message loss. A crash or omission failure occurs when the service at some point stops responding to any request. An omission degree can be defined as the limited amount of omission failure that a node might have before being classified as crashed. While Timing failure represents services might fail due to a timeout in processing a request or by providing data too early. Timing failures occur when a node responds to a request with the correct value, but the response is received out of the time interval specified by the application. Timing failures will only occur when the application specifies timing constraints. Further Value failure considers services that have been failed due to an incorrect value when the service sends a response has inaccurate value. For instance, arbitrary failure includes all the types of failures that cannot be classified in previously described categories [11,16]. 2.2

Fault Detection and Recovery

To tackle faults in a WSN, the system should follow two main steps. The first step is fault detection. In this step, specific functions are detected to determine the faulty ones. Once, the system detects a fault, fault recovery is the second step to enable the system to recover the faults. Basically, there are two types of detection techniques: self-diagnosis and cooperative diagnosis. Some faults that can be determined by a sensor node itself can adopt self-diagnosis detection. For example, faults caused by depletion of battery can be detected by a sensor node itself. The remaining battery of the sensor node can be predicted by measuring current battery voltage. Another example is the detection of failure links. A sensor node may detect that some link to one of its neighbors is faulty if the node does not receive any message from the neighbor within a predetermined interval. However, there are some kinds of faults that require cooperative diagnosis among a set of sensor nodes [17,18]. The detection method is based on the assumption that sensor nodes in the same region should have similar sensed value unless a node is at the boundary of the event region. The method takes measurements of all neighbors of a node and uses the results to compute the probability of the node being faulty.

Autonomic Self-healing Approach to Eliminate Hardware Faults in WSNs

155

The proposed fault recovery scheme is to deal with failure of sensor nodes, including the sink node. The basic idea is to partition the sensor memory into two parts, namely, data memory and redundant memory. The data memory is used to store sensed data and data recovered from failures of other sensor nodes. The redundant memory is used to store redundant data for future recovery. The recovered data is distributed in the memories of the no faulty sensors to be sent to the sink when it becomes available [19,20]. Generally, there are various faults can cause WSNs to misbehave and affect the functional performance of the network. Based on that, many self-healing techniques are used to detect, diagnose and recover the potential faults, which are resulting from misbehavior of network, and search for their root sources. For an efficient comprehension of self-healing mechanism, it is important to clarify the difference between faults, errors, and failures. A fault is any kind of defect that leads to an error. An error corresponds to an incorrect (undefined) system state and such a state may lead to a failure. A failure is the observation of an error, which occurs when the system deviates from its specification and cannot deliver its intended functionality [21]. There are several faults could lead to failures in WSNs. Some of these faults are occurred when node: (1) moved to a different region causing a link failure; (2) suffered from power failure and stop responding to requests; or (3) sent arbitrary values either intentionally or due to a malfunction. Practically, fault detection, diagnosis and healing systems can be categorized as either centralized or distributed.

3

Autonomic Self Healing: A Proposed Method with a Case-Study

In this section, we present case study for self-healing at two different levels, to illustrate each of the above dependencies. Our case study covers types of hardware components faults in WSNs, including detection, diagnosis, and recover, of such faults. Practically faulty nodes are detected and diagnosed at once, however the work divides fault detection, and fault diagnosis, recovery into two separate phases. The proposed solution uses a combination of neighborhood readings, and time duration of transferring packets in fault tolerance processes, and it builds upon the clustering method. In the following, we describe details of the proposed ASHA solution that can be realized on each sensor node, and its ability to not only detect the faults of hardware parameters in sensor node, but also to diagnosis such faults and recover it, at two levels. 3.1

Fault Detection Phase

Our proposed method is built upon the clustering method, where the cluster head receives the calculated mean and heartbeat message from each node present within cluster during the estimated period (t), the head declares the sender node as connected. After this, it analyzes the collected data to estimate the function and detect faulty sensor nodes. The cluster head extracts the sender identifier

156

W. Elsayed et al.

from received data to identify which sensor nodes are able to send their data to the cluster head. The sensor nodes, which are unable to send heartbeat message during estimated time (t) to the cluster head, are identified as function faulty sensor nodes. After identifying faulty sensor nodes, the cluster head will detect the cluster nodes status of node either alive or dead. Then, the cluster head updates the topology by removing the malfunction node from topology. Hence, the quality of the network can be maintained and the cluster head assigns a task to all faulty sensor nodes for further diagnosis and recovery.

3.2

Fault Diagnosis - Recovery Phase

This phase is performed at main two levels, they are sensor node level and cluster head level. Its aim is diagnosing the hardware components failures of sensor nodes, which are issuing by transmitter circuit drawbacks, receiver circuits, defects of sensor unit of the node or depletion of battery’s energy. At sensor node level, time and notification messages were used as basic factors in diagnosis. We assumed a certain time interval as threshold for testing operational status of node’s sensor, receiver, or energy parameters, during it; i.e. if the parameter’s value exceeds a predefined threshold value through a certain period, that parameter will be declared as “faulty”. Notification messages were used as flags transferred to cluster head, error messages, are declaring presence of fault in those circuits during diagnosis. In this work, we evaluated hardware errors lead to malfunction of network or bit data distortion via time interval at node level. Therefore, we can argue that integrity of hardware parameters related to a predefined time duration. Figures 2 and 3 shows an evaluation of detection and diagnosis accuracy (DA) of sensor faults via comparison the diagnosed faults with the introduced faults.

Fig. 2. a: illustrates detection accuracy of ASHA throughout different readings.

Autonomic Self-healing Approach to Eliminate Hardware Faults in WSNs

157

Fig. 3. Illustrates diagnosis accuracy of ASHA throughout different readings

After diagnosing, the recovery process updates are executed on the faulty node. The recovery process sends healing requests to faulty nodes, providing a list of faulty sensor nodes that require the recovery to take necessary actions, either heal if possible or notify users to take particular interventions. Therefore, each node in the cluster sends a periodical heart beat message to the cluster head. If the sensor node exceeded the predefined threshold value as (t) and did not send the heartbeat message to the cluster head. The cluster head will diagnose the sensor node as not alive (dead). In this case, the head will modify the topology to set a replacement for this node. Likewise, if the cluster head received a sleeping declaration from sensor node, it also modifies the network topology in the same procedure. When the cluster head receives error notification message from the sensor node, it declares this node as either traffic node or sense node. Hence, it broadcasts the information about the faulty node to the base station (sink), and updates its topology.

Fig. 4. Evaluation of ASHA for recovering malfunction nodes

158

W. Elsayed et al.

Further, the cluster head scans the cluster nodes, for detecting malfunction nodes could also be replaced .i.e. when the faulty node (or called sleeping node) submits covered flag to the cluster head, the head removes that node and updates the topology. The proposed approach recorded the node responses in 10 rounds, this illustrated in Fig. 4 shows evaluation of ASHA in recovering malfunction nodes during 10 rounds.

4

Conclusion

Autonomic self-healing approach is shifting the burden of managing systems from people to technologies, and it is one of self-management capabilities that be able to collaborate with the elements of a complex IT system to make them work together and manage them based on a policy and objectives. This paper has presented a detailed explanation to assist autonomic self-healing in overcome wireless sensor networks challenges and proposed two of algorithms are based on the policy of autonomic self-healing approach for maintaining hardware parameters of sensor nodes in wireless sensor networks. The algorithms can efficiently deal with clustering method to management the faults. Self-healing used to monitor, analyze, plan and execute or make a decision as a response to hardware failures, leveraging knowledge of the environment. Application of autonomic self-healing approach in WSN will allow the individual nodes to detect, diagnose and make a decision as a response to hardware failures. Autonomic self-Healing Approach creates maintenance for sensor nodes in WSN through the process of fault-detection, fault diagnosis, and recovery. Also, ASHA tried to overcome the challenge of energy loss, and sudden failures of hardware components and increasing sensor network lifetime.

References 1. Kim, S., Pakzad, S., Culler, D., Demmel, J., Fenves, G., Glaser, S., Turon, M.: Wireless sensor networks for structural health monitoring. In: SenSys. http://www. cs.berkeley.edu/∼binetude/work/report.pdf 2. Kim, S., Pakzad, S., Culler, D., Demmel, J., Fenves, G., Glaser, S., Turon, M.: Health monitoring of civil infrastructures using wireless sensor networks. In: Proceedings of the Sixth International Symposium on Information Processing in Sensor Networks IPSN, pp. 254–263 (2007) 3. Shin, D., Na, S.Y., Kim, J.Y., Baek, S.J.: Fish robots for water pollution monitoring using ubiquitous sensor networks with sonar localization. In: International Conference on Convergence Information Technology, 21–23 November 2007, Gyeongju, South Korea, pp. 1298–1303 (2007) 4. Wood, A., Stankovic, J., Virone, G., Selavo, L., He, Z., Cao, Q., Doan, T., Wu, Y., Fang, L., Stoleru, R.: Context-aware wireless sensor networks for assisted living and residential monitoring. IEEE Netw. 22(4), 26–33 (2008) 5. Yuan, X., Elhoseny, M., Minir, H., Riad, A.: A genetic algorithm-based, dynamic clustering method towards improved WSN longevity. J. Netw. Syst. Manag. 25(1), 21–46 (2017)

Autonomic Self-healing Approach to Eliminate Hardware Faults in WSNs

159

6. Elhoseny, M., Yuan, X., El-Minir, H.K., Riad, A.M.: An energy efficient encryption method for secure dynamic WSN. Secur. Commun. Netw. 9, 2024–2031 (2016) 7. Yan, T., He, T., Stankovic, J.A.: Differentiated surveillance for sensor networks. In: Proceedings of the 1st ACM international conference on Embedded networked sensor systems, pp. 51–62 (2003) 8. Heidemann, J., Li, Y., Syed, A., Wills, J., Ye, W.: Underwater sensor networking: research challenges and potential applications. In: Proceedings of the Technical Report ISI-TR-2005-603, USC/ Information Sciences Institute (2005) 9. Waspmote, L.: Libelium comunicaciones distribuid datasheet, S.L. (2014). http:// web.univ-pau.fr 10. Cook, D.J., Das, S.K.: Wireless sensor networks in smart environments: technologies, protocols, and applications (2005). http://onlinelibrary.wiley.com/doi/ 10.1002/047168659X.ch2/ 11. Riad, A.M., El-minir, H.K., Elhoseny, M.: Secure routing in wireless sensor network: a state of the art. Int. J. Comput. Appl. 67(7) (2013) 12. Welsh, M., Mainland, G.: Programming sensor networks using abstract regions. In: Proceeding NSDI 2004 Proceedings of the 1st Conference on Symposium on Networked Systems Design and Implementation, San Francisco, California, 29–31 March, vol. 1, p. 3 (2004) 13. Elhoseny, M., Yuan, X., Yu, Z., Mao, C., El-Minir, H.K., Riad, A.M.: Balancing energy consumption in heterogeneous wireless sensor networks using genetic algorithm. IEEE Commun. Lett. 19(2), 2194–2197 (2015) 14. IBM (Autonomic computing white paper). An architectural blueprint for autonomic computing, IBM Corporation, 10 pages, U.S.A. (2005). http://www-03.ibm. com/autonomic/pdfs/AC%20Blueprint 15. Davide, T.: Research perspective in self-healing systems. In: Proceedings of the Spring 2007 American Society for Engineering Education Illinois-Indiana Section Conference. American Society for Engineering Education (2007) 16. Mishra, S., Jena, L., Pradhan, A.: Fault tolerance in wireless sensor networks. Int. J. Adv. Res. Comput. Sci. Softw. Eng. 2(10), 146–153 (2012) 17. Ruiz, L.B., Siqueira, I.G., Oliveira, L.B., Wong, H.C., Marcos, J., Nogueira, S., Loureiro, A.A.F.: Fault management in event-driven wireless sensor networks. In: Proceedings of the 7th ACM International Symposium on Modeling, Analysis and Simulation of Wireless and Mobile Systems, Venice, Italy, pp. 149–156 (2004) 18. Chessa, S., Maestrini, P.: Fault recovery mechanism in single-hop sensor networks. Comput. Commun. 28(17), 1877–1886 (2005) 19. Krishnamachari, B., Iyengar, S.: Distributed Bayesian algorithms for fault-tolerant event region detection in wireless sensor networks. IEEE Trans. Comput. 53(3), 241–250 (2004) ¨ 20. Liu, H., Nayak, A., Stojmenovi´c, A.G.I.: Fault tolerant algorithms/protocols in wireless sensor networks. In: Guide to Wireless Sensor Networks, Computer Communications, vol. 261, pp. 1–32 (2009) 21. Rodrigues, A., Camilo, T., Sasilva, J.: Diagnostic tools for wireless sensor networks. J. Netw. Syst. Manag. 21, 408–452 (2013) 22. Elhoseny, M., Farouk, A., Zhou, N., et al.: Dynamic multi-hop clustering in a wireless sensor network: performance improvement. Wirel. Pers. Commun. (2017). doi:10.1007/s11277-017-4023-8 23. Metawa, N., Elhoseny, M., Kabir Hassan, M., and Hassanien, A.: Loan portfolio optimization using genetic algorithm: a case of credit constraints. In: 12th IEEE International Computer Engineering Conference (ICENCO), pp, 59–64 (2016)

160

W. Elsayed et al.

24. Metawa, N., Hassan, M.K., Elhoseny, M.: Genetic algorithm based model for optimizing bank lending decisions. Exp. Syst. Appl. 80, 75–82 (2017) 25. Elhoseny, M., Elminir, H., Riad, A., Yuan, X.: Recent advances of secure clustering protocols in wireless sensor networks. Int J. Comput. Netw. Commun. Secur. 2(11), 400–413 (2014) 26. Elhoseny, M., Yuan, X., El-Minir, H.K., Riad, A.M.: An energy efficient encryption method for secure dynamic WSN. Secur. Commun. Netw. 9, 2024–2031 (2016) 27. Elhoseny, M., Farouk, A., Batle, J., Shehab, A., Hassanien, A.E.: Secure image processing and transmission schema in cluster-based wireless sensor network secure image processing and transmission schema in cluster-based wireless sensor network. In: Handbook of Research on Machine Learning Innovations and Trends, vol. 2, pp. 1022–1040, Chapt. 45. IGI Global (2017) 28. Elhoseny, M., Yuan, X., El-Minir, H.K., Riad, A.M.: Extending self-organizing network availability using genetic algorithm. In: The 5th International Conference on Computing Communication and Networking Technologies (ICCCN2014), 11–13 July 2014, Hefei, China (2014) 29. Elhoseny, M., Elminir, H., Riad, A., Yuan, X.: A secure data routing schema for WSN using elliptic curve cryptography and homomorphic encryption. J. King Saud Univ. Comput. Inf. Sci. 26(3), 262–275 (2015)

Classification of Toxicity Effects of Biotransformed Hepatic Drugs Using Optimized Support Vector Machine Alaa Tharwat1,3(B) , Thomas Gabel1 , and Aboul Ella Hassanien2,3 1

Faculty of Computer Science and Engineering, Frankfurt University of Applied Sciences, Frankfurt Am Main, Germany [email protected] 2 Faculty of Computers and Information, Cairo University, Giza, Egypt 3 Scientific Research Group in Egypt (SRGE), Cairo, Egypt http://www.egyptscience.net

Abstract. Measuring toxicity is an important step in drug development, and there is a high demand to develop computational models that can predict the drug toxicity risks. In this study, we used a dataset that consists of 553 drug samples that biotransformed in liver. The toxic effects were calculated for the current data are mutagenic, tumorigenic, irritant, and reproductive effects. The proposed model has two phases, in the first phase; sampling algorithms were utilized to solve the problem of imbalanced dataset, in the second phase, the Support Vector Machines (SVM) classifier was used to classify an unknown drug sample into toxic or non-toxic. Moreover, in our model, Dragonfly Algorithm (DA) was used to optimize SVM parameters such as the penalty parameter and kernel parameters. The experimental results demonstrated that the proposed model obtained high sensitivity to all toxic effects, which indicates that it could be used for the prediction of drug toxicity in the early stage of drug development. Keywords: Drug design · Toxicity · Classification model · Dragonfly algorithm · Optimization

1

·

Computational

Introduction

Measuring the toxicity of chemical compounds are an important step in drug development process [1]. However, bioassays are expensive, time-consuming, and not efficient for a large-scale evaluation of drug toxicity. Thus, there is a high demand for computational models which offer a fast and cheap alternative [2]. Many computational toxicity models have been used [3]. The aims of these computational models are to accurately predict the toxicity of chemical compounds, the toxicological endpoints, and the effect of different concentrations of the chemical compounds. c Springer International Publishing AG 2018  A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3 15

162

A. Tharwat et al.

In this paper, a machine-learning model was proposed to automatically evaluate the toxicity of the chemical compounds, where four toxicity risks, namely, mutagenic effect, tumorigenic effect, irritant effect and reproductive effect, will be studied. Our model consists of two phases. Firstly, due to the imbalanced dataset in this research, the data are pre-processed to obtain more balanced samples in each class. Secondly, SVM classifier was used to classify an unknown drug sample into toxic or non-toxic. SVM is one of the well-known classifiers, and it uses the kernel function to map the input data to higher dimensional space when the data are easily separable. SVM has a penalty parameter and kernel parameters that have a significant influence on the classification performance. Thus, choosing the values of these two parameters controls the performance of SVM. In the proposed model, Dragonfly Algorithm (DA) is utilized to present a novel DA + SVM model for parameters optimization of SVM. DA is one of nature-inspired optimization algorithms, and it was used in many application such as optimizing network configuration [4] and numerical optimization [5]. However, due to their stochastic nature of DA as all swarm intelligence algorithms, it is never guaranteed to find an optimal solution for any problem, but they will often find a good solution [6]. The rest of this paper is organized as follows: Sect. 2 presents the theoretical background that is used in the proposed model. Section 3 explains the three phases of the proposed model in details. Experimental scenarios and discussions are presented in Sect. 4. Finally, conclusions and future work are introduced in Sect. 5.

2 2.1

Theory and Method Support Vector Machines (SVM) Classifier

SVM is one of the well-known classifiers. Mathematically, given N linearly separable training samples, X = {x1 , x2 , . . . , xN }, where xi is the ith training sample and each sample has d features and it belongs to one of two classes yi ∈ {±1}. The line, wT x + b = 0, is the decision boundary between the two classes, where w indicates a weight vector, b is the bias, and x is the training sample. The hyperplane divides the space into two spaces [7]. The goal of SVM is to find the values of w and b to orientate the hyperplane to be as far as possible from the closest samples, i.e. support vectors, and to construct the two planes, H1 and H2 , as follows, H1 → wT xi + b = +1 for yi = +1 and H2 → wT xi + b = −1 for yi = −1, where wT xi + b ≥ +1 for positive class and wT xi + b ≤ −1 for negative class, and the two equations can be combined as follows, yi (wT xi + b) − 1 ≥ 0 ∀i = 1, 2, . . . , N . Moreover, the distance from H1 and H2 to the hyperplane is denoted by d1 and d2 , respec1 , and the sum of these distances represents the tively, where d1 = d2 = w margin of SVM. In SVM, the margin width needs to be maximized as follows, 2 min 12 w , s.t. yi (wT xi + b) − 1 ≥ 0 ∀i = 1, 2, . . . , N , and this can be formulated as follows:

Classification of Toxicity Effects of Biotransformed Hepatic Drugs

 w − αi (yi (wT xi + b) − 1) 2 i

163

2

min LP =

N 2   w − = αi yi (wT xi + b) + αi 2 i i=1

(1)

where αi ≥ 0, i = 1, 2, . . . , N is the Lagrange multipliers. The dual form for SVM can be written as follows: max LD =

N 

αi −

i=1

s.t. αi ≥ 0 ,

N 

1 αi αj yi yj xTi xj 2 i,j

(2)

αi yi = 0 ∀i = 1, 2, . . . , N

i=1

where LD is the dual form of LP . The classification error rate increased when the data are non-separable; hence, the constraints of linear SVM must be relaxed, and also nonlinear separable data can be addressed using kernel functions as follows: N

 1 2 min w + C i 2 i=1

(3)

T

s.t. yi (w φ(xi ) + b) − 1 + i ≥ 0 ∀i = 1, 2, . . . , N where i indicates the distance between the ith training sample and the corresponding margin hyperplane and it should be minimized, C is the regularization or penalty parameter and it controls the trade-off between the slack variable penalty and the size of the margin, and φ is a nonlinear function where the data can be linearly separable. There are different kernel functions such as Radial Basis Function (RBF), K(xi , xj ) = exp(−||xi − xj ||2 /2σ 2 ), Linear Kernel, K(xi , xj ) = xi , xj , and polynomial kernel of degree d, K(xi , xj ) = d (xi , xj + c) , are used [8]. In this study, RBF is applied in the SVM to obtain the optimal solution [9]. 2.2

Dragonfly Algorithm (DA)

Dragonflies moved is swarms and fly to different locations in a static swarm, which is similar to exploration phase. However, they fly in big swarms along one direction, which is the exploitation [6,10]. The behavior of any swarm follows the following principals: – Separation principal : This is the static collisions avoidance N for the individuals from their neighbors, and it is given by Si = − j=1 X − Xj , where X indicates the position of the current solution, Xj is the position on the j th neighborhood individual, and N represents the number of neighborhood members [10].

164

A. Tharwat et al.

– Alignment principal : This principal represents the velocity matching between the members of dragonflies in the same group, and it is defined as follows,  N

Vj

N j=1

Xj

, where Vj is the velocity of j th neighborhood individual. Ai = j=1 N – Cohesion principal : This principal represents the tendency of individuals towards the center of the mass of the neighborhood, and it is defined as,  Ci =

N

− X.

Attraction to the food can be calculated as follows, Fi = X + − X, where X is the position of the food, and the distraction from enemy X − is given by Ei = X − + X [10]. The position of the dragonflies are adjusted using the position, X, and the step, ΔX, as follows, Xt+1 = Xt + ΔXt+1 , and it is calculated as follows, ΔXt+1 = sSi + aAi + cCi + f Fi + eEi + wΔXt , where s is the separation weight, Si is the separation for Xi , a is the alignment weight, Ai is the alignment of Xi , c indicates the cohesion weight, Ci represents the cohesion of Xi , f is the food factor, Fi is the food source of Xi , e is the enemy factor, Ei is the position of Xi , w is the inertia weight, and t is the current iteration. With s, a, c, f, and e, different explorative and exploitative behaviors can be obtained during optimization. In other words, these parameters can make a balance between exploration and exploitation in DA [10]. +

2.3

Imbalanced Datasets

This problem results when the samples of one class significantly outnumber the samples of the other class [11]. Thus, it is difficult for the learning algorithm to learn from a minority class; therefore, a pre-processing step is needed to obtain balanced data. There are many methods are used to solve this problem such as Random Under-sampling (RUS), and Random Over-sampling (ROS), and Synthetic Minority Over-sampling Technique (SMOTE) algorithms. RUS algorithm randomly removes samples from majority class to obtain balanced dataset; however, discarding samples may lead to neglect of useful information and hence degrade the classifier’s performance [11]. In ROS algorithm, a set of randomly selected minority samples is replicated to the minority class samples to obtain balanced data. Hence, this algorithm may lead to overfitting problem and it increases the required classification time [11]. In SMOTE algorithm, the goal is to create data based on the similarities between existing minority samples. For each sample, xi , in the minority class xi ∈ Smin , the k nearest neighbors/samples are selected. A synthetic sample can be created as follow, xnew = xi + fij × δ = xi + (xˆij − xi )× γ, where xi is one of the minority class samples, xˆij is one of the k-nearest neighbors for xi : xˆij ∈ Smin , j = 1, 2, . . . , k, γ ∈ [0, 1] is a random number, xnew is the sample along the line joining xi and xˆij [11]. Due to the imbalanced data, in this paper, three assessment methods were P used as follows, (1) Sensitivity and it can be calculated as follows, T PT+F N, where T P is the true positive and F N is the false negative, and it measures

Classification of Toxicity Effects of Biotransformed Hepatic Drugs

165

how well the proposed toxicity model detects a toxic effect, (2) Specificity is N calculated as follows, T NT+F P , where T N is the true negative and F P is the false positive, specificity measures how well the toxicity model detects non-toxic cases, (3) Geometric Mean (GM)  metric which incorporates both sensitivity and specificity as follows, GM =

3

TP T P +F N

×

TN T N +F P

[11].

Proposed Model

This section describes the proposed model in detail. The proposed model comprises two phases as in Fig. 1, namely, data pre-processing and classification.

Fig. 1. Block diagram of the proposed model.

3.1

Data Pre-processing Phase

In this phase, to obtain balanced data, different algorithms were used to obtain a balanced distribution of the classes. The proposed model used three well-known sampling methods, i.e. ROS, RUS and SMOTE, to solve this problem. 3.2

Classification Phase

In this phase, the proposed model gives a decision about whether an input sample is toxic or non-toxic. In this research, we considered each toxic effect as a separate dataset. Moreover, the proposed DA + SVM classifier was used. The Proposed Classification Algorithm (DA + SVM): In this section, we describe the proposed DA + SVM algorithm to find the optimal values of SVM parameters. The detailed explanation is as follows: Data normalization: This step is used for several reasons: (1) to avoid features in greater numeric ranges dominating those in smaller numeric ranges, (2) to avoid numerical difficulties during the calculation, (3) to help to get higher

166

A. Tharwat et al.

classification accuracy [12]. Each feature can be scaled to the range [0, 1] as folf −min , where f is the original value, min and max are the lower lows, f  = max−min and upper bounds of the feature value, and f  is the scaled value. Parameters’ initialization: DA’s parameters were initialized, and then the DA provides the SVM classifier with the values of C and σ to train SVM using the training data. The dragonflies’ positions are initialized randomly, and the searching range of parameter C of SVM was bounded by Cmin = 0.01 and Cmax = 35000, while the searching of σ was bounded by σmin = 0.01 and σmax = 100 [12]. Increasing these limits enlarges the search space; and hence, more solutions are needed to search for the optimal solution, which results in more computation and slow convergence rate. Fitness evaluation: For each position representing the training dataset is used to train the SVM classifier, while the testing dataset is used to evaluate the misclassification rate as follows, M inimize : F = NNe , where Ne is the number of misclassified samples and N is the total number of testing samples. The positions of dragonflies are then updated as in Sect. 2.2, and when the termination criteria are satisfied, the operation ends; otherwise, we proceed with the next generation operation.

4

Results and Analysis

The current data is a benchmark of DataWarrior package [13], and it was extracted from the Drug Bank database [14]. Our data used the drugs that biotransformed in liver which estimated as 553 drugs, has four toxicity risks (mutagenicity, tumorigenicity, irritation and reproduction), and 31 chemical descriptors [13]. Table 1 lists the number of positive and negative samples in each class, and the imbalance ratio (IR), which represents the ratio between the number of samples of the majority class to the number of samples in the minority class. Table 1. Distribution of the two classes of each toxic effect. Toxic effect

Positive class Negative class IR

Mutagenic effect

90 = 16.28%

463 = 83.73%

5.14

Tumorigenic effect

90 = 16.28%

463 = 83.73%

5.14

Reproductive effect 187 = 33.82% 366 = 66.18

1.96

Irritant effect

7.25

67 = 12.16%

486 = 87.88%

The platform adopted to develop the DA-SVM algorithm is a PC with the following features: Intel(R) Core (TM) i5-2400 CPU@ 3.10GHz, 4G RAM, a Window 7 operating system, and Matlab 7.10.0 (R2010a). In all sub-experiments, k-fold cross-validation tests have been used. Moreover, several experiments have been performed for analyzing how the number of dragonflies and the maximum number of generations affect the behavior of the

Classification of Toxicity Effects of Biotransformed Hepatic Drugs

167

proposed algorithm. As a result, the best results achieved when the number of dragonflies was more than or equal 20 and the number of generations was 50. The goal of the first experiment is to evaluate the proposed classifier DA + SVM and three well-known classifiers, namely, k- Nearest Neighbor (k-NN) [15], Naive Bayesian (NB) [16], and Linear Discriminant Analysis (LDA) [17–19]. The results of this experiment are summarized in Table 2. Table 2. The results (Average (Avg.) ± Standard Deviation (Std.)) and average ranks of the sensitivity, specificity, and GM of the k-NN, NB, LDA, and DA + SVM classifiers. Classifiers

Sensitivity Specificity GM Avg. ± Std Average Avg. ± Std Average Avg. ± Std Average ranks ranks ranks

k-NN

76.3 ± 7.5

3.5

87.3 ± 6.9

2.38

80.3 ± 5.5

3.38

NB

62.5 ± 1.9

5.88

67.6 ± 3

6

66 ± 4.6

5.25

LDA

68.5 ± 3.4

5.13

73.8 ± 4.2

4.88

66.8 ± 2.8

5.38

DA ± SVM 90.3 ± 7.6

1.13

92 ± 8.3

1

90.3 ± 6.8

1

Table 2 shows that the DA + SVM obtained the best results while the NB classifier achieved the worst results. As shown, in terms of sensitivity, the DA + SVM classifier revealed the best results, and k-NN classifier achieved the second best results, while NB classifier obtained the minimum sensitivity. Regarding to the specificity, DA + SVM classifier yielded the best results and the NB classifier achieved the worst results also. In terms of GM, also the DA + SVM classifier achieved the best results, while NB and LDA classifiers achieved the worst results. This reflects the robustness of the proposed model and how the DA optimization algorithm improved the accuracy of SVM by searching for the optimal values of C and σ. The goal of the second experiment is to evaluate the proposed model with/without data pre-processing step. In this experiment, three data sampling algorithms were used (RUS, ROS, and SMOTE). Moreover, in this experiment, the proposed model was evaluated using the original dataset. The results of this experiment are summarized in Fig. 2. From Fig. 2 many conclusions can be remarked. Firstly, the RUS algorithm improved the sensitivity compared with the original dataset; however, the RUS algorithm achieved lower specificity than the original dataset. This is because the samples of the minority class that were removed. In terms of GM, RUS algorithm obtained results better than the original dataset. Secondly, ROS algorithm revealed sensitivity lower than RUS, and this is because there are no samples were removed in ROS algorithm, and the samples of majority class were oversampled. In terms of GM, ROS algorithm achieved results better than RUS algorithm and the original dataset. Thirdly, the SMOTE algorithm improved the sensitivity and specificity of the proposed model much better than RUS and

168

A. Tharwat et al.

Fig. 2. Sensitivity, specificity and GM of the proposed model using Orig., RUS, ROS, and SMOTE algorithms; (a) tumorigenic effect, (b) mutagenic effect, (c) reproductive effect, and (d) irritant effect. 100

100 60

40

65

75

75

30

75

75

75

80

σ

30

0

20

80 85 90 95 100

85 90 95 100

100 95 90 85

100 95 90 85

15

80

85 80

100 95 90 85

75

80

75

−50

90

85 90 95 100

80

75

75 75

70

75

70

75

75

65

10 100

10

80

80

20

80

25

75

80

80

75

40

75

75

75

5

50 50

0

σ

−50

−100

0

65

60

0 100

95

75 75 75 75

75

100−Sensitivity

50

70

35 50

C

0

−100

10

20

30

40

50

60

70

80

90

100

60

C

Fig. 3. Sensitivity surface (a) and contour plot (b) using the mutagenic dataset.

ROS algorithms. Besides, SMOTE achieved GM better than RUS and ROS algorithms. Figure 3 shows the surface and contour plots of the sensitivity when the mutagenic effect dataset was used. As shown, the sensitivity surface is approximately like a bowl shape, which means that the optimized procedure to search for the optimized parameters of SVM is feasible and achieves high results. To conclude, SMOTE algorithm achieved results better than RUS and ROS algorithms because: (1) RUS algorithm removed samples from the minority class; therefore, the specificity will be decreased; (2) in ROS algorithm, the replication of the majority class samples do not cause its decision boundary to spread or

Classification of Toxicity Effects of Biotransformed Hepatic Drugs

169

extend into the other class(es) region. Finally, the proposed model performed well in classifying the unknown samples according to all toxic effects, and the high sensitivity values means that a drug sample predicted as toxic, e.g. tumorigenic, has a high probability to be tumorigenic in reality.

5

Conclusions

In this paper, the toxic effects of the current drugs are assessed. Four toxic effects, namely, mutagenic, tumorigenic, irritant, and reproductive, were assessed. In the first phase of our model, the proposed model was evaluated when the dataset were pre-processed in the framework of imbalanced datasets to obtain more balanced samples in each class. In our experiments, RUS, ROS, and SMOTE sampling algorithms were used. The results showed that all sampling methods that were used to address the imbalanced problem improved the overall classification performance of all toxic effects. In the second phase, DA + SVM was used to classify an unknown drug according to all toxic effects. The experimental results proved that the proposed model performed well in classifying the unknown samples. The model obtained high sensitivity and this means that a drug sample predicted as toxic has a high probability to be tumorigenic. It is worth mentioning that our algorithm trains the SVM model using the training data and then evaluates the model using the testing data which follows the same structure of some state-of-the-art algorithms such as [7,20]. Hence, the testing data are not independent, which improves the result and may lead to the problem of overfitting. Hence, in the future work, a validation set will be used to evaluate the model and then used an independent testing set for evaluating the trained model.

References 1. Huang, R., Southall, N., Xia, M., Cho, M.H., Jadhav, A., Nguyen, D.T., Inglese, J., Tice, R.R., Austin, C.P.: Weighted feature significance (wfs): a simple, interpretable model of compound toxicity based on the statistical enrichment of structural features. Toxicol. Sci., kfp231 (2009) 2. Tharwat, A., Gaber, T., Fouad, M.M., Snasel, V., Hassanien, A.E.: Towards an automated zebrafish-based toxicity test model using machine learning. In: Proceedings of International Conference on Communications, Management, and Information Technology (ICCMIT 2015), Procedia Computer Science, vol. 65, pp. 643–651 (2015) 3. Woo, Y.T., Lai, D.Y., Argus, M.F., Arcos, J.C.: Development of structure-activity relationship rules for predicting carcinogenic potential of chemicals. Toxicol. Lett. 79(1), 219–228 (1995) 4. Tharwat, A., Moemen, Y.S., Hassanien, A.E.: A predictive model for toxicity effects assessment of biotransformed hepatic drugs using iterative sampling method. Sci. Rep. 6 (2016)

170

A. Tharwat et al.

5. KS, S.R., Murugan, S.: Memory based hybrid dragonfly algorithm for numerical optimization problems. Exp. Syst. Appl. (2017) 6. Tharwat, A., Gaber, T., Hassanien, A.E., Elnaghi, B.E.: Particle swarm optimization: A tutorial. In: Handbook of Research on Machine Learning Innovations and Trends. IGI Global, pp. 614–635 (2017) 7. Lin, S.W., Ying, K.C., Chen, S.C., Lee, Z.J.: Particle swarm optimization for parameter determination and feature selection of support vector machines. Expert Syst. Appl. 35(4), 1817–1824 (2008) 8. Scholk¨ opf, B., Smola, A.J.: Learning with Kernels: Support Vector Machines, Regularization, Optimization, and Beyond. MIT press (2001) 9. Tharwat, A., Moemen, Y.S., Hassanien, A.E.: Classification of toxicity effects of biotransformed hepatic drugs using whale optimized support vector machines. J. Biomed. Inform. 68, 132–149 (2017) 10. Mirjalili, S.: Dragonfly algorithm: a new meta-heuristic optimization technique for solving single-objective, discrete, and multi-objective problems. Neural Comput. Appl. 27(4), 1053–1073 (2016) 11. He, H., Garcia, E.A.: Learning from imbalanced data. IEEE Trans. Knowl. Data Eng. 21(9), 1263–1284 (2009) 12. Tharwat, A., Hassanien, A.E., Elnaghi, B.E.: A ba-based algorithm for parameter optimization of support vector machine. Pattern Recognit. Lett. (2016) 13. Sander, T., Freyss, J., von Korff, M., Rufener, C.: Datawarrior: an open-source program for chemistry aware data visualization and analysis. J. Chem. Inf. Model. 55(2), 460–473 (2015) 14. Wishart, D.S., Knox, C., Guo, A.C., Shrivastava, S., Hassanali, M., Stothard, P., Chang, Z., Woolsey, J.: Drugbank: a comprehensive resource for in silico drug discovery and exploration. Nucleic Acids Res. 34(suppl 1), D668–D672 (2006) 15. Tharwat, A., Ghanem, A.M., Hassanien, A.E.: Three different classifiers for facial age estimation based on k-nearest neighbor. In: Proceedings of the 9th International Computer Engineering Conference (ICENCO), PP. 55–60. IEEE (2013) 16. Jordan, A.: On discriminative vs. generative classifiers: a comparison of logistic regression and naive bayes. Adv. Neural Inf. Process. Syst. 14, 841 (2002) 17. Tharwat, A.: Linear vs. quadratic discriminant analysis classifier: a tutorial. Int. J. Appl. Pattern Recogn. 3(2), 145–180 (2016) 18. Tharwat, A.: Principal component analysis-a tutorial. Int. J. Appl. Pattern Recognit. 3(3), 197–240 (2016) 19. Tharwat, A., Gaber, T., Ibrahim, A., Hassanien, A.E.: Linear discriminant analysis: a detailed tutorial. AI Commun., 1–22 (Preprint) 20. Huang, C.L., Wang, C.J.: A ga-based feature selection and parameters optimizationfor support vector machines. Expert Syst. Appl. 31(2), 231–240 (2006)

Automating Requirements Elicitation of Cloud-Based ERPs Mohamed A. Abd Elmonem1(&), Eman S. Nasr2, and Mervat H. Gheith1 1

Department of Computer Science, Institute of Statistical Studies and Research, Cairo University, Cairo, Egypt [email protected], [email protected] 2 Independent Researcher, Cairo, Egypt [email protected]

Abstract. Cloud computing (CC) imposed its presence in various domains as a computing model based on what it offers for enterprises. ERP systems as a domain is one of the beneficiary domains of SaaS applications. Eliciting requirements for cloud ERP systems is a challenging process due to the complex nature of ERP systems in addition to the distributed nature of CC. Most of the current techniques for eliciting ERP requirements do not take into consideration working in cloud environments. This paper is concerned with automating the requirements elicitation process for cloud-based ERPs. It also presents an interactive prototype to be used in a distributed environment, which uses the principals of the Form-Based Model (FBM). We use a real-life case study to demonstrate the automation process. Keywords: Automated prototype  Cloud ERP  Form-Based Model requirements  Requirements elicitation  SaaS ERP



ERP

1 Introduction Cloud Computing (CC) is a very promising model for computing which gained the attention in the last few years of academic research as well as the software industry. CC provides availability, scalability, and flexibility of computer resources at different levels of abstraction with a low running cost. CC refers to the applications, hardware, and software delivered as services over the internet [1]. It imposed its presence in various domains as a computing model based on what it offers for enterprises. CC services are provided in three models [2]; Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS). SaaS targets the end user or business. It handles the distribution of a software application over the internet to multiple software end users. Cloud Enterprise Resource Planning (ERP) systems belong to this category and hence our research focus. An ERP is a software system that works to integrate and connect an enterprise’s data in a central single database with a unified user interface across a whole enterprise [3]. ERP systems support the movement of data and information across production, inventory, engineering, materials, planning, finance, sales, Human Recourses (HR), © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_16

172

M.A. Abd Elmonem et al.

marketing, operation, and all other departments in an enterprise. The outcome of implementing and operating ERP systems could be in the form of better quality, short time-to-market, enhanced communications, aiding decision making, shortened lead times, higher productivity and minimized costs. Minimized costs can help an enterprise to enhance the produced services or products and increase sales and market shares as well as profits. Implementing an ERP system increases the reflected impact on the Return On Investment (ROI), as ROI depends on the ability to select, configure and maintain an ERP [4, 5]. The recent years were a witness on the movement of ERP systems to the cloud in small and medium enterprises. Using cloud ERP systems offers a lot of benefits; the most recognizable benefit is reducing costs. However, it also faces a lot of challenges, such as security risks, customization and integration [6]. In addition, working in cloud environments necessitates the need for new methods to handle the different phases of the software development process. Among these phases is the Requirements Engineering (RE) phase which is considered to be the base for all of the subsequent phases of a software development process. Requirements elicitation is a core activity of the RE phase [7]; it is the first step of the RE phase. Requirements elicitation could be defined as the step of identifying needs. Identifying the needs for SaaS applications is totally different from traditional software applications. Over a distributed cloud environment there is usually no face to face communication between the Cloud Service Providers (CSPs) and the Cloud Service Consumers (CSCs). Such new environment creates the need for new requirements elicitation techniques that consider the nature of this environment. Using improper elicitation techniques that do not meet the characteristics of a project under development increases RE costs, and makes a project failure-prone [8]. This paper presents a technique to elicit requirements of cloud ERP systems. This technique uses the principles of the Form-Based Model (FBM) as conceptual model to model enterprise systems requirements. The paper also introduces a supporting tool, which is mainly built to prove the applicability of the presented technique. The rest of this paper is organized as follows. Section 2 introduces background that covers the basic concepts needed for this paper; it introduces ERP systems in some details, then it introduces the elicitation techniques that are used for SaaS applications, and finally it introduces FBM. Section 3 presents the related work. Section 4 introduces our new technique that automates the requirements elicitation process for cloud-based ERPs; and the supporting tool for the proposed technique. Finally, Sect. 5 gives our conclusion and future work.

2 Background This section gives some essential background needed for the paper. It sheds our observations on ERP systems, presents the elicitation techniques that are used for SaaS applications, and introduces FBM.

Automating Requirements Elicitation of Cloud-Based ERPs

2.1

173

ERP Systems

With time passing, ERP systems encountered a lot of evolution and upgrade processes to enhance their functionality and to increase their integration capabilities. A Cloud ERP, or as it is called sometimes cloud-based ERP, enables enterprises to run and operate ERP systems in a cloud environment. Many cloud ERP vendors started to offer a wide range of cloud solutions to satisfy the requirements of the wide range of cloud ERP customers. According to our observations in a real life case study [9], the generic structure of an ERP system could contain a group of modules. A module in this case represents a part of an ERP system; this part satisfies the functions of an enterprise in a particular area, such as stock control or manufacturing. Each module includes one sub-module or more. A sub-module consists of a group of input forms and reports collected together according to the business logic of an enterprise or the business flow in an enterprise. The generic structure of an ERP moves down until it stretches to the forms and reports which are the prime components of an ERP system. Input forms and output reports are the contents of sub-modules; each form or report includes several elements that represent handlers or data containers for different types of data. Figure 1 represents the generic structure of an ERP.

Fig. 1. The generic structure of ERP systems.

2.2

Requirements Elicitation for SaaS Applications

Todoran et al. [10] conducted an exploratory study with 19 cloud provider companies to understand the current state of practice of requirements elicitation for cloud systems. The study investigates how traditional and market driven techniques are used, to what extent, where they are adapted to better fit diverse needs and where new. As a conclusion of this study, the study presents a set of finding that answer three questions. The following section introduces the questions associated with them answers as findings of the study:

174

M.A. Abd Elmonem et al.

Q1: What methods do CSPs use to elicit the requirements of CSCs? F1.1 Traditional approaches such as interviews, questionnaires, documentation, surveys, and prototyping are the most common requirements elicitation methods which used by most of the investigated cloud providers. F1.2 Most of the existing methods are very difficult to nearly impossible to apply in the cloud context. F1.3 Almost all cloud providers (94.7%) use ad-hoc elicitation methods at some point during their process. Furthermore, the general criterion for method selection is also ad-hoc. Q2: How do CSPs needs for elicitation methods differ from traditional software/hardware providers’? F2.1 the cloud calls for methods which fit for more heterogeneous audiences, take less time, and can be applied remotely. F2.2 Automation is needed to a larger extent for eliciting cloud consumer requirements. Q3: To what extent can the existing elicitation methods satisfy CSPs needs? F3.1 CSPs satisfaction level with regard to implementing existing elicitation approaches is low to medium. F3.2 In more than half of the cases, public CSPs dissatisfaction is caused by their evolution history. Accordingly, suitable requirement elicitation technique for SaaS application cloud be one of the traditional techniques with some adaptations. It also could be automated to target large extent of CSCs; therefore well-defined steps should be declared. By considering well-defined steps, CSPs could dispense the add-hoc techniques. The suitable technique should work to increase the involvement of the CSCs, such involvement will help to support the confidence of the CSCs and that for sure will be reflected on the satisfaction of CSPs. Using a web-based automation tool will aid the applicability of the technique remotely. Our proposed technique works to satisfy the following characteristics: • • • • 2.3

Automating a prototype as an adaptation for one of the traditional techniques. Declaring well-defined steps to avoid the using of ad-hoc techniques. Using a web-based tool to be applied remotely. Increase the satisfaction of CSPs and CSCs. The Form-Based Model

Recently, there has been an increasing demand for domain-specific modeling languages. FBM is a conceptual model which built to model the requirements of the enterprise systems. FBM [11] is a modeling method that treats the user interface as a black-box, in the way that users input to the system, and retrieve output from the system without the need for the technical knowledge about what happen inside the system. Enterprise systems’ requirements could be modeled using conceptual models which provide simplicity for the stakeholders; conceptual models also increase the

Automating Requirements Elicitation of Cloud-Based ERPs

175

involvement of different parties of stakeholders in the RE process. A conceptual model should be presented in a clear way to be understood easily by the end users, in order to involve them in the requirements elicitation and validation processes. In the context of database applications, a form is a window, screen or web page that holds different fields or data containers. Each field is supplementary with a label; this label describes the content of the filed. The form represents a part of the friendly user interface, it simplifies the interaction process. Each form stores the provided input data into one or more database table. According to the World Wide Web Consortium (W3C) [12], the input forms include several elements which used to collect user input, for example, text, number, date, time, chick box, radio buttons, and list of values. FBM could be implemented using a variety of user interfaces and its elements for example forms, reports, text boxes drop down list, etc. Declaring a set of symbols to symbolize the user interface is an essential step to building a FBM. These symbols should be aware to the end user and should be understood easily. Different stakeholders could be elaborated in defining these symbols in order to involve them in the RE processes. These symbols could be customized and adapted to cope with the stakeholder’s background and their ability to interpret. Figure 2 depicts examples of the FBM symbols; it shows an input form this form contains a group of different data fields. Each data field represents a symbol, the fields ID, Last Name and First Name represented by text boxes. The Nationality represented by a drop down list, while the Gender represented by two radio buttons. The current employee filed represented by a check box.

Fig. 2. Example of a FBM.

3 Related Work Fu et al. [13] present a requirements elicitation approach that is based on model-driven prototyping. It works to inherit the advantages of prototyping elicitation techniques, and minimizing the disadvantages. It applies the model-driven development principles

176

M.A. Abd Elmonem et al.

and advanced program synthesis techniques, in which model-driven architecture, AI planning, and component-based software development techniques are seamlessly integrated together. The approach works to refine the requirements, design, and implementation, and yields high-quality systems with the help of the rapid program synthesis technique. Seresht et al. [14] propose a methodology to form the basis for an automated process which is designed to capture the high-level system services and actors from the textual user requirements. It automatically assists the software analysts in the early steps of the use case model elicitation process. It also introduces a tool which implements the proposed methodology, illustrates the approach on a case study, and discusses the results of the evaluation. The methodology addresses the problem of inconsistencies, which may arise in a large text requirement which can’t be identified automatically. Umber et al. [15] present a novel approach for automating the process of software requirements elicitation and specification. The approach presented is based on Semantic of Business Vocabulary and Rules (SBVR). They also developed a prototype tool SR-Elicitor (an Eclipse plugin), which can be used by software engineers to record and automatically transform the natural language software requirements to SBVR software requirements specification.

4 Automating Requirements Elicitation of Cloud-Based ERPs This section presents our proposed technique, which works to automate the requirements elicitation process of cloud-based ERP systems. The technique consists of two phase, the first phase intends to adapt the generic structure of ERP systems, whereas the second phase integrates the adapted structure of ERP systems with the FBM. To verify the applicability of the technique, we have developed a tool to elicit and collect the requirements of cloud-based ERP. This section presents the two phases of the proposed technique as well as the developed tool. 4.1

Mapping the Generic Structure of ERP Systems

At the first phase, the technique proposes the following three steps to adapt the generic structure of ERP systems defining levels for ERP system components, classifying components into types and defining attributes for each component types. The following is a detailed explanation of these steps: • Step 1: Defining levels for components, the component could be located in four levels as represented in Fig. 3A. modules are located at the first level while sub-modules located at the second level, forms and reports are located at the third and finally, the data containers are located at the fourth level.

Automating Requirements Elicitation of Cloud-Based ERPs

177

Fig. 3. The two phases of our technique.

• Step 2: Classifying the ERP components into types, for each component the technique has defined a type; the type of a component could be module, sub-module, form, report or any form and report elements. The elements under forms and reports could be declared as data containers. • Step 3: Defining a group of attributes for each level contents. Level, ID, name, and parent ID are the attributes for the module component, the parent of the module feature will be always an ERP system. The sub-module component has the same attributes of the module component, but its parent component is a module. The forms and reports component have the same attributes which are level, ID, name, parent ID, and category. The component type string has the attributes level, ID, name, parent ID, and length. The component type number has the attributes level, ID, name, parent ID, category, and format. Date and time component types have the same attributes which are level, ID, parent ID, and format. The list component type has the attributes level, ID, parent ID, and category. Lastly, the boolean component type has the attributes level, ID, and parent ID. Table 1 shows the attributes for the different types of the components. The category attribute takes different values with each type of features, it will be determined according to the implementation language. These attributes will hold values for each component; these values will determine the corresponding symbol of the FBM. 4.2

Integrating with the Form-Based Model

The main objective of adapting the generic structure of ERP system is to achieve the integration process with the FBM. After extending the generics structure of the ERP systems, and according to the attributes values of the components, the technique works

178

M.A. Abd Elmonem et al. Table 1. The attributes for different levels’ contents. Component types Modules Sub modules Forms Reports String Number Date Time List Boolean

Level 1 2 3 4

ID ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓

Name ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓

Parent ID Category Length Format ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓

to draw the corresponding symbol for each component. As shown in Fig. 3, each component will be mapped to the proper symbol of the FBM. 4.3

Supporting Tool

In order to validate our technique, we built a web-based tool. This tool works to automate the requirements elicitation process by using an automated and interactive prototype. Figure 4 presents the activity diagram of the tool. At the beginning, all initial requirements will be stored in a requirements repository, these requirements obtained by either reengineering process at the begging of using the tool or from the previously elicited application. The requirements will be collected in accumulated form and will be stored in the requirements repository.

Fig. 4. The activity diagram of the requirements elicitation tool.

Automating Requirements Elicitation of Cloud-Based ERPs

179

According to our observations at the real-life case study we use, the personal data form, belongs to the personal management sub-module which in turn belongs to the HR module. The personal data form contains different fields as shown in Fig. 5. All collected requirements will be presented to the stakeholders in hieratical form as shown in Fig. 5A; the stakeholders can add new components or modify the presented components as shown in Fig. 5B and C. The requirements Engineers will be involved to check the consistency of the included requirements. According to the selection and addition of requirements by the stakeholders, the tool works to generate a prototype based on the principles of the FBM as shown in Fig. 5E. the stakeholders can back and repeat the cycle to edit the selected requirements in order to fit their needs. The tool stores the included components in the requirements repository.

Fig. 5. Screen prints from our supporting tool.

5 Conclusion and Future Work In this paper we presented a novel technique to elicit cloud-based ERP requirements. We also presented the web based tool we developed to support our technique, which automatically generates a prototype for the elicited requirements. The technique works to exploit the generic structure of ERP systems and offers three steps; defining the

180

M.A. Abd Elmonem et al.

levels for the ERP system components, classifying the components into types and defining the attributes for each component type. After mapping the generic structure for an ERP system to the appropriate levels, our technique works to integrate the ERP levels’ contents with FBM. The main objective of this integration is to involve the stakeholders in the RE process over a cloud environment. FBM aims to facilitate the interaction between the stakeholders of an ERP system, who include the RE team. In our future work, we are going to enhance the functionality of the tool by considering an editable GUI and integrate it with the mapped structure of the ERP system.

References 1. Buyya, R., Vecchiola, C., Selvi, S.T.: Mastering Cloud Computing, 1st edn. Elsevier, Amsterdam (2013) 2. Xu, X.: From cloud computing to cloud manufacturing. Robot. Comput. Integr. Manuf. 28, 75–86 (2012) 3. Ali, M., Nasr, E.S., Gheith, M.H.: A requirements elicitation approach for cloud based software product line ERPs. In: Proceedings of the 2nd Africa and Middle East Conference on Software Engineering, Cairo, Egypt (2016) 4. Newman, M., Zhao, Y.: The process of enterprise resource planning implementation and business process re-engineering: tales from two Chinese small and medium-sized enterprises. Inf. Syst. J. 18, 405–426 (2008) 5. Chang, H.H.: Technical and management perceptions of enterprise information system importance, implementation and benefits. Inf. Syst. J. 16, 263–292 (2006) 6. Ali, M., Nasr, E.S., Geith, M.: Benefits and challenges of cloud ERP systems - a systematic literature review. Future Comput. Inf. J. 1, 1–9 (2017) 7. Sommerville, I., Sawyer, P.: Requirements Engineering: A Good Practice Guide. John Wiley & Sons, Inc., New York (1997) 8. Tuunanen, T.: A new perspective on requirements elicitation methods. J. Inf. Technol. Theor. Appl. (JITTA) 5, 45–72 (2003) 9. Ali, M., Nasr, E.S., Geith, M.H.: Mapping functional requirements of ERP SPL on an extended form of feature model. In: Proceedings of the 12th International Computer Engineering Conference (ICENCO), pp. 136–141 (2016) 10. Todoran, I., Seyff, N., Glinz, M.: How cloud providers elicit consumer requirements: an exploratory study of nineteen companies. In: Proceedings of the 21st IEEE International Requirements Engineering Conference (RE), pp. 105–114 (2013) 11. Draheim, D., Weber, G.: Form-Oriented Analysis: A New Methodology to Model Form-Based Applications. Springer, Heidelberg (2005) 12. W3C. HTML Input Types, 1 September 2016. http://www.w3schools.com/html/html_form_ input_types.asp 13. Fu, J., Bastani, F.B., Yen, I.-L.: Model-driven prototyping based requirements elicitation. In: Monterey Workshop, pp. 43–61 (2007) 14. Seresht, S.M., Ormandjieva, O.: Automated assistance for use cases elicitation from user requirements text. In: Proceedings of the 11th Workshop on Requirements Engineering, pp. 128–139 (2008) 15. Umber, A., Bajwa, I.S., Naeem, M.A.: NL-based automated software requirements elicitation and specification. In: Proceedings of the International Conference on Advances in Computing and Communications, pp. 30–39 (2011)

An Experimental Evaluation of Binary Feature Descriptors Hammam A. Alshazly1,4(B) , M. Hassaballah2 , Abdelmgeid A. Ali3 , and G. Wang4 1

Department of Mathematics, Faculty of Science, South Valley University, Qena 83523, Egypt [email protected] 2 Department of Computer Science, Faculty of Computers and Information, South Valley University, Luxor, Egypt 3 Department of Computer Science, Faculty of Computers and Information, Minia University, Al Minia 61519, Egypt 4 Department of EECS, School of Engineering, The University of Kansas, Lawrence, KS 66045, USA

Abstract. Efficient and compact representation of local image patches in the form of features descriptors that are distinctive/robust as well as fast to compute and match is an essential and inevitable step for many computer vision applications. One category of these representations is the binary descriptors which have been shown to be successful alternatives providing similar performance to their floating-point counterparts while being efficient to compute and store. In this paper, a comprehensive performance evaluation of the current state-of-the-art binary descriptors; namely, BRIEF, ORB, BRISK, FREAK, and LATCH is presented in the context of image matching. This performance evaluation highlights several points regarding the performance characteristics of binary descriptors under various geometric and photometric transformations of images.

1

Introduction

Local image features and their associated descriptors are widely used in several computer vision applications such as image registration, camera calibration, 3D reconstruction, image retrieval, and object recognition. A common task for all these applications is to detect repeatable features, also known as keypoints/interest points, from images and represent the neighborhood around each feature in an efficient and discriminative feature vector known as descriptor [1]. Many keypoint detectors have been proposed in the literature with robustness to some image distortions [2,3]. Similarly, several floating-point descriptors have been proposed through the last two decades with SIFT [4] and SURF [5] are the well-established algorithms in the field. The deployment of vision algorithms on mobile devices that have limited computational resources to handle more data or run in real-time necessitates the feature descriptors to be fast in computation, c Springer International Publishing AG 2018  A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3 17

182

H.A. Alshazly et al.

storage, and matching. Binary descriptors discussed in Sect. 2 are the alternative solution for efficiently representing local image patches in the form of binary strings obtained by simple intensity comparison of pixel pairs within the patch. Evaluating the performance of detectors/descriptors pairs is considered an important step towards choosing suitable combinations for developing robust computer vision systems. In 2005, Mikolajczyk and Schmid [6] evaluated the performance of various descriptors paired with several region detectors in a stereo matching scenario. They concluded that SIFT-based descriptors perform the best. With the development of binary descriptors, studies have evolved to compare the performance of binary features with non-binary features descriptors. For instance, Heinly et al. [7] conducted a performance evaluation of some binary descriptors using SIFT and SURF as a baseline. They concluded that the performance of these descriptors do not always meet the authors’ recommendations and that binary descriptors suffer when taking into consideration any transformations not present in the data. Bekele et al. [8] extended the evaluation in [7] by adding the FREAK descriptor using the Stanford Mobile Visual Search(SMVS) dataset, which simulates many characteristic transformations for mobile devices. Figat et al. [9] evaluated the performance of binary descriptors for utilization in real-time object recognition by service robots and concluded that a combination of ORB detector and FREAK descriptor gives the best result. Mukherjee et al. [10] conducted an experimental study on evaluating different combinations of various detectors and descriptors highlighting several performance characteristics. Johansson et al. [11] presented a comparative evaluation of various detectors and descriptors on infrared (IR) images and outlined useful insights. We extend the existing evaluations by adding the recently proposed binary descriptors (i.e. LATCH) and separate the effect of each transformation on the descriptors’ performance using various datasets with variety of geometric and photometric transformations.

2

Binary Descriptors

A binary descriptor is a compact representation of an image patch or region in the form of a binary string resulting from comparisons of pixel intensities at sampled predefined locations in the patch. Table 1 illustrates the characteristics of binary descriptors considered in this evaluation. BRIEF stands for Binary Robust Independent Elementary Features and was proposed in [12] as the first pure-binary descriptor computed directly from the intensity values to avoid the high computational time consumed in computing the patch gradients. Given a detected keypoint and a window w of predetermined size around it. A binary descriptor Bw is constructed from a set S of n pixel pairs defined as: S = {si }i=1,..,n = {Pi,1 , Pi,2 }i=1,..,n . Where, Pi,1 = (xi,1 , yi,1 ) and Pi,2 = (xi,2 , yi,2 ) refer to a pair of sampling coordinates in the window w. After smoothing the patch using Gaussian kernel, for each pair, (Pi,1 , Pi,2 ), the smoothed intensity of Pi,1 is compared with Pi,2 to result a single bit according to the following test:

An Experimental Evaluation of Binary Feature Descriptors

183

Table 1. Details of the binary descriptors and their characteristics regarding selecting the set of intensity comparison tests and their robustness to rotation and scale changes. Descriptor Type

Detector Number of Sampling Rotation Scale keypoints pairs invariant invariant

BRIEF

Binary SURF

1000

Random

No

No

ORB

Binary ORB

1000

Learned

Yes

No

BRISK

Binary SURF

1000

Manual

Yes

Yes

FREAK

Binary SURF

1000

Learned

Yes

Yes

LATCH

Binary SURF

1000

Learned

Yes

No

 1, T (w, si ) = 0,

if Pi,1 > Pi,2 otherwise

Then, the binary descriptor Bw of n bits is defined by  2i−1 T (w, si ) Bw =

(1)

(2)

1 ≤ i ≤ n

The authors used n of 128, 256, and 512 bits to compromise between speed, accuracy, and memory storage. BRIEF has no fixed sampling pattern and the sampling pairs of the binary tests are chosen randomly using an isotropic Gaussian distribution. BRIEF performs well in the presence of photometric transformations such as blurring, illumination changes, and perspective transformations. ORB (Oriented FAST and Rotated BRIEF) was proposed by Rublee et al. in [13] as an alternative to SIFT and SURF. ORB consists of a feature detector and a feature descriptor that provides similar matching performance like SIFT and SURF while being computationally efficient. ORB builds upon FAST detector [14] and BRIEF descriptor by adding rotation invariance mechanisms based on measuring the intensity centroid and then steering the BRIEF features according to the orientation of the keypoints. For constructing the binary descriptor, ORB uses 31 × 31 patch after smoothing the image patch and uses a machine learning technique to learn the optimal set of n = 256 sampling pairs or binary tests. For more discriminative features, two desirable properties should be achieved; increasing the variance and reducing the correlation of the binary tests. BRISK (Binary Robust Invariant Scalable Keypoints) was proposed by Leutengger et al. in [15]. BRISK has a feature detector that builds upon the AGAST detector [16], and a bit-string binary descriptor resulting from concatenation of simple intensity comparison tests. Similar to BRIEF, it is a pure binary descriptor resulting from simple intensity comparisons. However, it uses a fixed hand-crafted sampling pattern in which points are equally spaced on scaled concentric circles around the keypoint. By dividing the sampling-points pairs into

184

H.A. Alshazly et al.

long-distance and short-distance subsets; BRISK uses the first to estimate the patch’s orientation and the later for the intensity comparisons to construct the final descriptor. FREAK (Fast Retina Keypoint) was proposed by Alahi et al. in [17]. FREAK shares similarity with BRISK by using a hand-crafted sampling pattern inspired by the human visual system and more precisely the retina structure with more sampling points near the center. In addition, using different kernels size to smooth each sampling point to reduce noise sensitivity. However, FREAK uses overlapping circles that change in size exponentially where each circle represents the standard deviations of the Gaussian kernel applied to the sampling point. The reason behind changing the kernels size and overlapping the circles is experimented by the authors and provided the best performance. FREAK uses unsupervised learning to learn the set of sampling pairs. FREAK is fast to compute and provides robustness against rotation and scale changes. LATCH (Learned Arrangements of Three Patch Codes) was proposed by Levi and Hassner in [18]. LATCH belongs to the pure binary descriptors that are built from intensity comparisons but with few differences. First, it uses small patch comparisons instead of single pixel comparisons. Second, using triplets of small patches rather than pairs of sampling points. Third, using supervised learning, linear Support Vector Machines(SVM), to learn an optimal set of sampling triplets. The binary descriptor for a detection window w of predefined size is constructed from an ordered set S of patch pixel triplets defined as follows: S = {si }i=1,...,n = {[Pi,a , Pi,1 , Pi,2 ]}i=1,...,n . Where Pi,a , Pi,1 , and Pi,2 refer to three k × k patches denoted as the anchor and the companions respectively. The single binary value results from comparing the Frobenious norm between the anchor patch and the companions according to the following test:  1, if ||Pi,a − Pi,1 ||2 > ||Pi,a − Pi,2 ||2 (3) T (w, si ) = 0, otherwise LATCH uses a window size of 48 × 48 pixels centered around the keypoint and compares the intensity of three 7×7 mini-patches in order to produce a single bit in the final binary string representing the patch. Thus, for a descriptor of 512 bits, it uses 512 triplets and each triplet defines the location of the three mini-patches. LATCH can be computed efficiently and provides rotation invariance mechanism. However, it takes longer extraction time than other binary descriptors and suffers dramatically in the presence of scale changes.

3

Performance Evaluation

In this section, we present the performance characteristics of state-of-the-art binary descriptors (BRIEF, ORB, BRISK, FREAK, and LATCH) while using SIFT and SURF as a benchmark. In our evaluation, we limit the number of keypoints to 1000 keypoint to keep the performance independent of the number of detected features. We have chosen SURF detector for BRIEF, BRISK, FREAK,

An Experimental Evaluation of Binary Feature Descriptors

185

and LATCH descriptors as it is repeatable and fast as well as rotation and scale invariant; while using ORB detector for ORB descriptor as ORB/ORB pairing outperforms SURF/ORB in most of the cases. Then, the detector-descriptor combination is computed. Matching descriptors is conducted by a brute force matcher using Euclidean distance for SIFT and SURF, while using Hamming distance for all binary descriptors. 3.1

Datasets

One frequently used dataset for evaluating the performance of features extraction algorithms is the Oxford dataset [6], which contains images with various geometric and photometric transformations as well as different scene types. It contains eight sub-datasets and each sub-dataset contains six images where the first image works as a reference image and the remaining are transformed (distorted) images. The ground truth homographies between the reference image and each of the transformed images are also given. However, the Oxford dataset lacks for certain transformations such as pure in-plane rotation and scaling. Therefore, to isolate the effect of each transformation on the descriptors’ performance, we used two datasets from Heinly’s evaluation datasets used in [7] specifically: semper dataset which has nine images for pure in-plane rotation and venice dataset with seven images for pure scaling. Sample images of these datasets are shown in Fig. 1. 3.2

Matching Criteria

In our experiments, we used the nearest neighbor distance ratio (NNDR) matching strategy which was proven to be effective as stated in [4]. For each descriptor from the reference image, the two nearest neighbors descriptors in the second set(distorted image) are returned as best and second best matches and then finding the distance ratio between them. If the distance is less than a specific threshold value (0.8 is suggested in [4] as it helps in eliminating 90% of the false matches while discarding only 5% of the correct matches), we select the best match as a putative match, otherwise we reject both matches. The ground truth homographies are used to reposition keypoints from the reference image to the positions in each of the paired images in the dataset and if the difference between the transformed and the reprojected keypoints is within 2.5 pixels, the putative match is considered to be correct match or inlier. 3.3

Performance Metrics

Many metrics have been used in the performance evaluation of feature descriptors and each metric focuses on specific characteristic of the feature’s performance. However, the commonly used metrics are based on the number of correct and false matches obtained from a pair of images. In this paper, we use recall and precision in percentages and the average number of best matches as performance

186

H.A. Alshazly et al.

Fig. 1. Sample images from the datasets used in the evaluation: (a) pure rotation, (b) pure scaling, (c) and (d) combined scale and rotation, (e) and (f) viewpoint changes, (g) and (h) blur, (i) JPEG compression, and (j) illumination changes.

metrics. Where, Recall is the ratio between the number of correct matches to the total number of correspondences (the number of matches before passing the ratio test), Precision is the ratio between the number of correct matches to the number of putative matches (the matches after passing the ratio test), and Average number of best matches is the sum of correct matches for all the images in a dataset divided by the total number of images. 3.4

Experimental Results

This section presents the experimental results of the evaluation under each image transformation. In addition, we computed the running time for all the descriptors as reported in Table 2. The running time is averaged over 32K keypoints

An Experimental Evaluation of Binary Feature Descriptors

187

extracted from various images with different geometric and photometric transformations. All the experiments are performed using the OpenCV library (version 3.2.0) running on a PC with Intel Pentium 2.16 GHz processor, 4 GB RAM, and Windows 8.1 Operating System. The values in the parenthesis for SIFT and SURF descriptors indicate the number of bytes required if the descriptors are stored as reals. It is clear that the running time of all binary descriptors is less than their floating-point counterparts. In our experiments, the BRISK is the fastest one with more memory space required (64 bytes) among the binary descriptors.

Table 2. Time and memory space consumed by each descriptor for a single feature. Descriptor

BRIEF ORB

BRISK FREAK LATCH SIFT

Extraction time (ms) 0.20586 0.21100 0.09097 0.47647 0.86376 1.78218 Memory size (bytes) 32

32

64

64

32

SURF 1.05287

128(512) 64(256)

Image Rotation: We evaluate the performance under pure in-plane image rotation (Fig. 1(a)). As can be seen from Figs. 2, 3, and 4, SIFT obtains the highest recall, precision and number of correct matches under pure rotation. For the binary descriptors, BRISK is the top performer in all metrics, followed by FREAK, ORB, and LATCH respectively. BRIEF has poor performance in all cases as it drops off significantly after small rotations as it has no orientation compensation mechanism while all other binary descriptors provide robustness to rotation changes. SURF/BRISK combination outperforms SURF/SURF pairing in all metrics reflecting the importance of combining various detectors and descriptors in order to improve the performance and enhance the applicability

Fig. 2. Recall value in percentage obtained by each of the descriptors for every dataset.

188

H.A. Alshazly et al.

Fig. 3. Precision value in percentage comparing the descriptors for each dataset.

Fig. 4. Average number of best matches obtained by each descriptor for each dataset.

of using binary descriptors as alternatives for SIFT and SURF. An example of the matching process is illustrated in Fig. 5(a). Scale Changes: When analyzing the performance under pure scale changes using the venice dataset (Fig. 1(b)), SIFT is still the top performer as depicted from Figs. 2, 3, and 4. BRISK gives the best performance among the binary descriptors followed by FREAK as they are both scale invariant. ORB performs better than BRIEF and LATCH although all of them do not handle scale changes. This limited robustness against scale changes can be attributed to the scale pyramid employed by the ORB detector allowing it to detect FAST features at each level in the pyramid. LATCH and BRIEF have weak robustness and they drop off significantly when increasing the scale factor as they are not designed to handle this effect. Combined Rotation and Scale Changes: When combining rotation and scale effects as in the boat and bark datasets (Figs. 1(c) and (d)) which we consider one of the most challenging distortions in the images. For the bark dataset, as illustrated from Figs. 2, 3, and 4, BRISK outperforms all descriptors including SIFT in recall and precision while the later gives more correct matches.

An Experimental Evaluation of Binary Feature Descriptors

(a) Matching under pure in-plane rotation

189

(b) Matching under change in viewpoint

Fig. 5. Matching pairs of images and illustrating the positions of the correct matched keypoints.

FREAK performs second after BRISK as both are rotation and scale invariant while other descriptors are ranked as ORB, LATCH, and BRIEF respectively. SURF has a moderate performance and is ranked after BRISK and FREAK. LATCH and BRIEF have the lowest values for all metrics as both do not support scale changes. On the other hand, for the boat dataset although it has the same rotation and scale changes, the ranking of the descriptors is different. ORB is ranked first beating all other descriptors while SIFT is ranked second for all metrics. FREAK exceeds BRISK in recall and precision while the later provides more correct matches. LATCH has higher precision but low recall and number of inliers. BRIEF has the lowest values for all metrics as it is not designed to handle any of these effects. Viewpoint Changes: This part of the experiments evaluates the performance when images are taking from different viewpoints as in the graffiti and wall datasets (Figs. 1(e) and (f)). For the graffiti dataset, Figs. 2, 3, and 4 show that FREAK has the highest recall and precision while SIFT gives the highest number of inliers. ORB performs well as the second in precision and inliers while the third in recall after FREAK and SIFT respectively. BRISK shows a moderate performance and outperforms SURF, LATCH and BRIEF. For the wall dataset, BRIEF leads the binary descriptors in recall and number of correct matches but has slightly low precision than other binary descriptors. BRIEF’s higher performance can be attributed to the fact that it has a fixed pattern. However, the low precision value is due to a less restrictive matching criteria or less distinctive image features. SIFT performs well and obtains recall and number of inliers after BRIEF, while FREAK and BRISK vary interchangeably in the recall and precision. ORB obtains the lowest precision and low recall and number of inliers while LATCH obtains the highest precision but the lowest in recall and number of inliers. Figure 5(b) shows the positions of the matched keypoints in a pair of images under this effect. Image Blur: Here the bikes and trees datasets (Figs. 1(g) and (h)) are used to evaluate the performance under significant blur effect of images. For binary descriptors, as can be seen from Figs. 2, 3, and 4, BRIEF gives the highest recall

190

H.A. Alshazly et al.

and number of best matches while BRISK has the highest precision. For this type of effect, binary descriptors outperform both SIFT and SURF in all cases and this can be attributed to the fact that, all binary descriptors tend to smooth the pixel pairs independently or the entire patch before computing the final descriptor. JPEG Compression: The UBC dataset (Fig. 1(i)) is used to evaluate the JPEG compression effect. Generally, all descriptors perform well and the highest recall, precision, and number of inliers are obtained under this transform as can be seen from Figs. 2, 3, and 4. ORB is a top performer with respect to the precision and number of inliers while BRIEF has the highest recall value. BRISK and FREAK perform well while LATCH gives the lowest values for all metrics among the binary descriptors. Surprisingly, SIFT and SURF although both perform well but both are exceeded by binary descriptors. Illumination Changes: The leuven dataset (Fig. 1(j)) is used to evaluate the effect of illumination on the descriptors’ performance. Figures 2, 3, and 4 show that, BRIEF gives the highest recall and number of correct matches; however, the highest precision was obtained by BRISK. LATCH has the lowest precision and moderate recall but more correct matches. SIFT obtains a higher number of inliers but less recall and precision values. FREAK gives higher recall and precision values but obtains the lowest number of inliers.

4

Conclusion

In this paper, an experimental performance evaluation of the state-of-the-art pure binary descriptors is presented vis-a-vis two well established real-valued SIFT and SURF descriptors for matching and recognizing the same scene or object. From the evaluation results several points are highlighted about which descriptor is suitable for specific image distortions. First, BRIEF excels in the presence of almost all non-geometric distortion such as blur, JPEG compression, and changes in illumination. Second, SIFT outperforms in the existence of geometric transformations such as scale, rotation, and viewpoint changes while BRISK is the best performer among the binary descriptors. Third, a combination of repeatable and fast detector with a binary descriptor offers suitable alternatives for using floating-point techniques which are time and memory consuming. Fourth, the running time of descriptors is not consistent in all the evaluations and varies when using different feature detector. Finally, there is no universal optimal detector or descriptor for all the datasets and setup should be custommade according to the transformations exist in the images.

References 1. Awad, A.I., Hassaballah, M.: Image feature detectors and descriptors: foundations and applications. In: Studies in computational intelligence (ISSN 1860-949X), vol. 630. Springer (2016)

An Experimental Evaluation of Binary Feature Descriptors

191

2. Tuytelaars, T., Mikolajczyk, K.: Local invariant feature detectors: a survey. Found. Trends Comput. Graph. Vis. 3(3), 177–280 (2008) 3. Hassaballah, M., Aly, A.A., Alshazly, H.A.: Image features detection, description and matching. In: Image Feature Detectors and Descriptors: Foundations and Applications, vol. 630, pp. 11–45. Springer (2016) 4. Lowe, D.: Distinctive image features from scale-invariant keypoints. Int. J. Comput. Vision 60(2), 91–110 (2004) 5. Bay, H., Ess, A., Tuytelaars, T., Gool, L.: Speeded-up robust features (SURF). Comput. Vis. Image Underst. 110(3), 346–359 (2008) 6. Mikolajczyk, K., Schmid, C.: A performance evaluation of local descriptors. IEEE Trans. Pattern Anal. Mach. Intell. 27(10), 1615–1630 (2005) 7. Heinly, J., Dunn, E., Frahm, J.M.: Comparative evaluation of binary features. In: European Conference on Computer Vision, pp. 759–773. Florence, Italy (2012) 8. Bekele, D., Teutsch, M., Schuchert, T.: Evaluation of binary keypoint descriptors. In: IEEE International Conference on Image Processing, Melbourne, Australia, pp. 3652–3656 (2013) 9. Figat, J., Kornuta, T., Kasprzak, W.: Performance evaluation of binary descriptors of local features. In: International Conference on Computer Vision and Graphics, Warsaw, Poland, pp. 187–194 (2014) 10. Mukherjee, D., Wu, Q.J., Wang, G.: A comparative experimental study of image feature detectors and descriptors. Mach. Vis. Appl. 26(4), 443–466 (2015) 11. Johansson, J., Solli, M., Maki, A.: An evaluation of local feature detectors and descriptors for infrared images. In: European Conference on Computer Vision Workshops, Amsterdam, The Netherlands, pp. 711–723 (2016) 12. Calonder, M., Lepetit, V., Ozuysal, M., Trzcinski, T., Strecha, C., Fua, P.: Brief: computing a local binary descriptor very fast. IEEE Trans. Pattern Anal. Mach. Intell. 34(7), 1281–1298 (2012) 13. Rublee, E., Rabaud, V., Konolige, K., Bradski, G.: ORB: an efficient alternative to sift or surf. In: ICCV, Barcelona, Spain, pp. 2564–2571 (2011) 14. Rosten, E., Porter, R., Drummond, T.: Faster and better: a machine learning approach to corner detection. IEEE Trans. Pattern Anal. Mach. Intell. 32(1), 105– 119 (2010) 15. Leutenegger, S., Chli, M., Siegwart, R.Y.: BRISK: binary robust invariant scalable keypoints. In: ICCV, Barcelona, Spain, pp. 2548–2555 (2011) 16. Mair, E., Hager, G.D., Burschka, D., Suppa, M., Hirzinger, G.: Adaptive and generic corner detection based on the accelerated segment test. In: European Conference on Computer Vision, Crete, Greece, pp. 183–196 (2010) 17. Alahi, A., Ortiz, R., Vandergheynst, P.: FREAK: fast retina keypoint. In: IEEE Conference on Computer Vision and Pattern Recognition, Rhode Island, USA, pp. 510–517 (2012) 18. Levi, G., Hassner, T.: LATCH: learned arrangements of three patch codes. In: IEEE Winter Conference on Applications of Computer Vision, NY, USA, pp. 1–9 (2016)

Developing an Efficient Clique-Based Algorithm for Community Detection in Large Graphs Hassan Saad1, Taysir Hassan A. Soliman1(&), and Sherine Rady2 1

2

Information Systems Department, Faculty of Computers and Information, Asyut University, Asyut, Egypt [email protected] Information Systems Department, Faculty of Computers and Information, Ain Shams University, Cairo, Egypt [email protected]

Abstract. Many computer science problems are structured as a network. Mobile, e-mail, social networks (MySpace, Friendster, Facebook, etc.), collaboration networks, and Protein-Protein Interaction (PPI), Gene Regulatory Networks (GRN) and Metabolic Networks (MN) in bioinformatics, are among several applications. Discovering communities in Networks is a recent and critical task in order to understand and model network structures. Several methods exist for community detection, such as modularity, clique, and random walk methods. These methods are somewhat limited because of the time needed to detect communities and their modularity. In this work, a Clique-based Community Detection Algorithm (CCDA) is proposed to overcome time and modularity limitations. The clique method is suitable since it arises in many real-world problems, as in bioinformatics, computational chemistry, and social networks. In definition, clique is a group of individuals who interact with one another and share similar interests. Based on this definition, if one vertex of a clique is assigned to a specific community, all other vertices in this clique often belong to the same community. CCDA develops a simple and fast method to detect maximum clique for specific vertex. In addition, testing is done for the closest neighbor node instead of testing all nodes in the graph. Since neighbor nodes are also sorted in descending order, it contributes to save more execution time. Furthermore, each node will be visited exactly once. To test the performance of CCDA, it is compared with previously proposed community detection algorithms (Louvain, and MACH with DDA-M2), using various datasets: Amazon (262111 nodes/1234877 vertices), DBLP (317080 nodes/1049866 vertices), and LiveJournal (4847571 nodes, 68993773 vertices). Results have proven the efficiency of the proposed method in terms of time performance and modularity. Keywords: Network analysis clustering  Graph mining



Clique



Community detection



Graph

© Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_18

Developing an Efficient Clique-Based Algorithm

193

1 Introduction In computer science, many applications use networks to represent various nodes and the relations between them, according to the domain [1]. For example, in Biology we find Protein-Protein Interaction (PPI) networks, where vertices symbolize Protein, edges symbolize Interaction, and edge weight is confidence level of an interaction [2]. In Telephone networks, the vertices symbolize phone numbers. An edge between two vertices will exist if a call has been placed between those phones, and edges could be weighted by the number of calls made between these phones during the period [3]. In scientific citation and Collaboration Networks [4], vertices act as individuals who have published research papers. There is an edge between two individuals who published one or more papers jointly. Many other phenomena give rise to graphs information networks (documents, web graphs, patents), infrastructure networks (roads, planes, water pipes, power grids) [3]. In recent years, there has been a surge of interest to develop computational techniques that help understanding the properties of large network datasets. The fundamental problem in this paper is the study of community detection, where communities within networks are groups of vertices that are more densely connected to each other than would be expected under a suitable null hypothesis. Figure 1 illustrates a simple graph with three communities, enclosed by the dashed circles.

Fig. 1. A simple graph with three communities, enclosed by the dashed circles [5].

Community detection methods can be divided into four categories (not exclusive) [6]: Node-Centric, Group-Centric, Network-Centric and Hierarchy-Centric. The performance of community detection algorithms can be measured by two factors: (1) Modularity, where a quality metric for assessing the partitioning of a given network into communities is evaluated, and (2) Time, which is the time required to find communities. One of the most challenges in current work is the emergence/existence of big data, where applications deal with datasets in size of millions of vertices and edges. Therefore, the main contribution of this paper is to propose a CCDA algorithm, which is efficient for community detection in large-scale social networks dealing with big data. The Time for the proposed algorithm is a very important factor in this work and it is compared with other algorithms as will be explaining later. The paper is structured as follows: section two explains some related work. Section three describes the proposed

194

H. Saad et al.

community detection algorithm in detail. Experimental results and analysis are presented in section four. Finally, the paper is concluded in section five, explaining future work.

2 Related Work In the few past years, many algorithms were developed to find communities in networks. One of the most popular proposed algorithms is by Girvan and Newman [7], which uses a divisive approach to remove the edges depending on their Betweenness values and repeating the process iteratively. In Fig. 2, the edge in the middle has a much higher betweenness than all other edges, because all shortest paths connecting vertices of the two communities run through it.

Betweenness

Fig. 2. Edge betweenness is highest for edges connecting communities [8].

Many of the community detection algorithms apply clique theory [9]. Clique is a maximum complete subgraph in which all vertices are adjacent to each other. One of popular algorithms employing clique is Clique Percolation Method (CPM) [10]. CPM uses cliques as a core or a seed to find larger communities, finding out all cliques of size k in a given network and constructing a clique graph. Figure 3 shows communities spanned by adjacent 3-cliques, where overlapping vertices are shown by the red dots.

Fig. 3. Clique percolation method with k = 3

Another algorithm is Maximum Clique Heuristic (MACH) [11], which is a new approach to compute disjoint cliques, using heuristic-based branch-and bound technique. The idea of MACH is first to compute the maximum clique size for each vertex and maintain the vertex order based on decreasing clique size. In addition, a fast unfolding of communities in large networks (LOUVAIN) is proposed. It is divided into two phases that are repeated iteratively [12]. First, a different community is assigned to each node of the network. Then, for each node u, neighbors v of u are considered. The gain of modularity is evaluated that would take place by

Developing an Efficient Clique-Based Algorithm

195

removing u from its community and placing it in the community of v. This process is applied repeatedly and sequentially for all vertices until no further improvement can be achieved. The second phase of the algorithm consists of building a new network whose vertices now the communities are found during the first phase. Finally, other applications of hidden communities have recently been added in real world, such as real-world networks where they contain sparse community structure [13].

3 Clique Community Detection Algorithm (CCDA) In the following subsections, a Clique-based Community Detection Algorithm, CCDA, is introduced for finding modularity partitions of large networks in short time. Community detection in networks aims to find groups of vertices within which connections are dense, but between which connections are sparser. CCDA reduces the time via obtaining a clique on each node instead of having the clique on the whole graph, which means that testing is done for the closest neighbor node instead of testing all nodes in the graph. Since neighbor nodes are also sorted in descending order, it contributes to save more execution time. Additionally, each node will be visited exactly once; once node is assigned to community it will not be tested again, hence saving more time. 3.1

Problem Formulation

In this paper, simple graphs only are considered. Let n be the number of vertices of the input graph G = (V, E), where V = {v1, v2, … vn} and E denotes the set of vertices and edges, respectively. Hence, n is the number of vertices. The set of vertices adjacent to a vertex vi, the set of its neighbors, is denoted by N (vi) and the cardinality of N (vi), its degree, is denoted by d (vi). The community detection problem is typically formulated as finding a partition C = {c1, c2, …, ck} of G, where 8i, ci  V and 8i,j, ci \ cj = U, which gives non-overlapping communities. C is also known as a clustering of G. We use k to denote the number of resulting communities, that is, |C| = k. If S  V (G), 8u, v 2 S, u 6¼ v, such that (u, v) 2 E, then S is a clique in G. If any other S0 is a clique and S0€ S iff S0 = S, S is a maximal clique of G. 3.2

Implementation

The graph is stored by network data structure; a network data structure has number of vertices, number of edges, array of first neighbor index, and array of neighbors. A Vertex of graph is labeled by index from 0 to a number of nodes. The neighbor of each node is stored by two arrays. Let vertex u, whose index is i computes as follows: jNðuiÞj ¼ FirstNeighborIndex½i þ 1  FirstNeighborIndex½i

ð1Þ

NðuiÞ ¼ fNeighbors½i jFirstNeighborIndex½i  i\FirstNeighborIndex½ i þ 1 g ð2Þ A Network is stored in a text file; each line in file is edge separable by space. The proposed algorithm consists of only one phase. Assuming to start with a simple

196

H. Saad et al.

network of N vertices; For each node u, if it does not belong to community yet, then find the maximum clique for u. Next, if vertices in clique do not belong to community then new community with this clique is created. Otherwise, if there is a node in clique, it is assigned to a specific community and all other nodes to the same community. This step is repeated to all vertices until all vertices are assigned to a community. The algorithm has the advantages of being intuitive, easy to implement, extremely fast specifically when applied to other previous algorithms, besides the outcome is unsupervised. Algorithm1. Pesudo code of CCDA algorithm Algorithm CCDA(G): my Community Detection Algorithm. Input: Graph G = (V, E). Output: Communities C ={c1, c2. . . ck}, where |C| = k, i, ci is a resulting community. ProcedureCCDA k = 0 –community number for each vi ∈G ClqList=Maximum_clique_According_to (vi) for each vj∈ClqList do if C(vj)!=-1 then co = cj -- community of vj found = true for each vj∈ClqList if found then cj=co else cj=k if not found then k++ found=false |C| = k

Specific Maximum Clique for Node Algorithm To discover maximum clique for specific vertex v, take vertex v then find neighbors of v and degrees for each node, ordering them ascending by degree. The cliques are used to guide the merging process. A clique in an undirected graph is a subset of vertices in which every pair of vertices is adjacent to each other. The maximum clique problem is to find the clique of largest possible size in a given graph, as shown in Algorithm 2. To detect a maximum clique to vertex v, all neighbors of v are stored into candidate list, vertex u is fetched from candidate list and inserted into clique list while remove from candidate list. Neighbors of u are next fetched and inserted into new candidate list. If a new candidate list is empty clique list is returned as maximum clique for vertex v, otherwise candidate is set to new candidate and the steps are repeated.

Developing an Efficient Clique-Based Algorithm

197

Algorithm2. Pesudo code for maxmium clique to specific vertexAlgorithm Maximum_clique_According_to(vertex vi): Maximum clique specified to specific vertex. Input: vertexvi. Output: max clique for vi. Procedure Maximum_clique_According_to (vertex u) N(u)= Neighbors of vertex u D(u)= Degree of vertex u Sort N(u) descending by degree Candidate_List = N(u) Potential_List as Empty list Potential_List.add(u) Candidate.remove (u) For each v in candidate If is neighbor (u,v) New_candidate.add(v) If new_candidate is empty Return potential_List Candidate=New_candidate

The complexity of maximum clique, if we assume that checking adjacency is O(1), and accordingly the runtime can be bounded by O(Δ) where Δ is max degree in the neighbors. The complexity of CCDA is O(Δ.n/2), where n number of nodes. This time is much less than LOUVAIN [12] and MACH with DDA-M2 algorithms [11].

4 Experiments and Results In this section, the proposed CCDA is compared with to similar community detection methods: Louvain, MACH with DDA-M2. For the experiments, the CCDA implementation is compiled using jdk1.8.0_102, on an Intel R Core(TM) i7-3770 3.4 GHz processor, and memory size of 32 GB. CCDA is tested on several real world large-scale networks. In Table 1, a list of used data sets for testing is clarified: Karate Club, Amazon Network, DBLP and LiveJournal. Karate Club is a social network of friendships between 34 members of a karate club at a US university in the 1970 [14]. Amazon Network was collected by crawling Amazon website [15]. DBLP computer science bibliography provides a comprehensive list of research papers in computer science [16]. LiveJournal is a free on-line community with almost 10 million members; a significant fraction of these Table 1. Network information of real world social network graphs Network Karate Amazon com-DBLP com-LiveJournal

Vertices 34 262,111 317,080 4,847,571

Edges 78 1,234,877 1,049,866 68,993,773

Ref [14] [15] [16] [17, 18]

198

H. Saad et al.

members are highly active [17, 18]. Table 1 shows the number of vertices and edges information for the networks. Figure 4 and Table 2 show an illustrative example execution for the algorithm 1 and algorithm 2. In this example, the graph G has 16 vertices and 28 edges. While implementing the CCDA, on this graph, it is considered that only one iteration for each vertex is executed. Initially, each vertex is community and in the first iteration, vertex 0 has {2, 4, 5, 3} as neighbors is sorted in a descending rank by vertices degree. Vertex 0 has three clique [0 3] [0 2 4] [0 2 5]. The approach takes maximum one – depending on order of degree - which is [0 2 4] not [0 2 5] and set it to community c0. Second,

Fig. 4. Visualization of the steps of the proposed algorithm.

Table 2. An illustrating execution for CCDA for a 16 vertices-28 edges example shown in Fig. 4 Vertex 0 1 2 3 4 5 6 7 8 9

Clique [0 3], [0 2 4], [0 2 5] [1 7], [1 2 4] Visited [3 0], [3 7] Visited [0 2 5], [5 7], [5 11] [6 2] [6 7], [6 11] [7 5], [7 3], [7 1], [7 6] [8 15], [8 10 11], [8 9 14], [8 10 14] [9 12], [9 8 14]

10 11 12

Visited Visited [12 10], [12 9]

13

[13 10 14]

14 15

Visited [15 8]

Local [0 2 4] [1 2 4]

Change Yes No

Communities [0 2 4] [0 1 2 4]

[3 0]

No

[0 1 2 3 4]

[0 2 5] [6 2] [7 5] [8 10 11] [9 8 14]

No No No No

[0 [0 [0 [0

Yes

[0 1 2 3 4 5 6 7] [8 9 10 11 14]

No

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

[13 10 14]

No

[15 8]

No

1 1 1 1

2 2 2 2

3 3 3 3

4 4 4 4

5] 5 6] 5 6 7] 5 6 7] [8 10 11]

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

Developing an Efficient Clique-Based Algorithm

199

iteration for vertex 1 has two cliques [1 7] [1 2 4] and also [1 2 4] is assigned as maximum. Then, it is found that [2 4] are common with c0, so all cliques are added to c0 which come to [0 1 2 4]. Next, vertex is 2, which assigns to community c0, so algorithm skips this iteration. The process repeats to all iterations, until all vertices assigned to their communities as seen in Table 2. The performance of the proposed algorithm is evaluated and compared with those existing in literature in terms of both time and modularity. For time performance evaluation, a comparison between CCDA and two algorithms, namely LOUVAIN, MACH with DDA-M2 is performed, using Amazon and DBLP datasets. As, illustrated in Fig. 5, time execution by CCDA is much less than other algorithms. It is three times faster than LOUVAIN and 97 faster than MACH with DDA-M2.

Time in Second

6 LOUVAIN 4

MACH with DDA-M2

2

CCDA

0 Amazon

DBLP

Fig. 5. Execution time for Amazon and DBLP datasets for LOUVAIN, MACH, and DDA-M2 algorithms.

CCDA algorithm is also evaluated against LOUVAIN and MACH with DDA-M2 for modularity. As shown in Fig. 6, the evaluation is performed for the same datasets discussed above: Amazon, DBLP, and LiveJournal. A large number for modularity indicates high dense connections between the nodes within communities, while a small value indicates low dense connections. It is shown that LOUVAIN has highest modularity over other algorithms in Amazon dataset, with a value of 0.93. MACH with DDA-M2 comes next with value of 0.9, and CCDA with value of 0.68.

Modularity

1 LOUVAIN 0.5 MACH with DDA-M2 0 Amazon

DBLP

LiveJournal

CCDA

Fig. 6. Modularity of algorithms for Amazon, Dblp, and LiveJournal datasets

200

H. Saad et al.

Figure 7 shows the relationship between the algorithm run time and the number of vertices for the three algorithms, where the number of the vertices is increased from 100,000–400,000. It is clear that the CCDA is much better than others algorithms since its implementation set all nodes in the same clique to the same community, and made many burned node to determine clique. 6

Time in seconds

5 4

LOUVAIN

3

MACH with DDA-M2

2

CCDA

1 0 0

1

2

3

4

x 100000

Fig. 7. Relation between time and number of vertices for these three algorithms.

Tables 3 and 4 summarize the algorithms performances of Fast unfolding (LOUVAIN) [13], MACH with DDA-M2 [12] and CCDA for community detection in networks of various sizes for the common datasets. For each method/network, the table displays the modularity that is achieved and the computation time in seconds. The value for the modularity is between 0 and 1. It is clear that LOUVAIN, MACH with DDA-M2, and CCDA perform better respectively according to modularity While CCDA, LOUVAIN, and MACH with DDA-M2 perform better respectively according to execution time. Diversity in applications allows use of different methods based on the nature of each application; there are applications that need higher modularity regardless of time which can use LOUVAIN and other applications need otherwise. The proposed approach, CCDA, can be used in different applications flexibly, because of acceptable modularity and smaller execution time other than the other algorithms. Table 3. Summary of numerical results for Fast unfolding (LOUVAIN) algorithm and our algorithm (CCDA) Karate LOUVAIN 0.42 CCDA 0.30

Power 0s 0s

0.94 0.66

0.047 s 0.047 s

cond-mat-2005

Amazon

0.73 0.50

0.93 0.68

0.36 s 0.33 s

DBLP 2.76 s 0.42 s

0.82 0.62

LiveJournal 3s 0s

0.71 0.41

200 s 73 s

Developing an Efficient Clique-Based Algorithm

201

Table 4. Summary of numerical results for MACH with DDA-M2 and our algorithm (CCDA) Amazon DBLP LiveJournal MACH with DDA-M2 0.90 3.18 s 0.81 s 4.87 s 0.62 s 7141 s CCDA 0.68 0.42 s 0.62 s 0 s 0.41 s 73 s

5 Conclusion and Future Work In this paper, a fast and high quality community detection algorithm is presented, which uses the notion of clique guided merging. The main idea of the algorithm is to compute maximum clique for specific vertex in a network graph. If any vertex in clique has a community, all other vertices assign to the same community, otherwise the vertex is added to a new community. CCDA reduces the time via obtaining clique on each node instead of having the clique on the whole graph, which means that testing is done for the closest neighbor node instead of testing all nodes in the graph. Since neighbors’ nodes are also sorted in descending order, it contributes to additional saving for execution time. Additionally, each node will be visited exactly once; once node is assigned to community it will not be tested again, hence saving more time. Based on the experiments, it is concluded that CCDA algorithm is accepted in quality and has better execution time (up to an order of magnitude faster) when compared to prior approaches such as LOUVAIN and MACH with DDA-M2. The application of CCDA fits to analyze networks whose structures are otherwise difficult to understand, such as DBLP, LiveJournal. For future work, it is intended to optimize the modularity of the algorithm using pre-processing network to discover outlier vertices and advanced data structures. In many real-world networks, vertices may belong to more than one group, and such groups form overlapping communities. Finding such overlapping community is not supported by traditional community detection algorithms.

References 1. Broder, A., Kumar, R., Maghoul, F., Raghavan, P., Rajagopalan, S., Stata, R., Tomkins, A., Wiener, J.: Graphstructure in the web. Comput. Netw. 33, 309–320 (2000) 2. Mahmoud, H., Masulli, F., Rovetta, S., Russo, G.: Community detection in protein-protein interaction networks using spectral and graph approaches. In: Computational Intelligence Methods for Bioinformatics and Biostatistics. Lecture Notes in Computer Science, vol. 8452. Springer, Cham (2014) 3. Rajaraman, A., Leskovec, J., Ullman, J.D.: Mining of Massive Datasets (2010) 4. Newman, M.E.J.: The structure of scientific collaboration networks. Proc. Natl. Acad. Sci. U.S.A. 98, 404–409 (2001) 5. Meyers, R.A. (ed.).: Encyclopedia of Complexity and Systems Science. Springer, Berlin (2009). 978-0-387-30440-3. Fortunato, S., Castellano, C. 6. Saha, B., Mandal, A., Tripathy, S.B., Mukherjee, D.: Complex networks, communities and clustering: a survey. CoRR, abs/1503.06277 (2015) 7. Newman, M.E.J., Girvan, M.: Finding and evaluating community structure in networks. Phys. Rev. EStatistical Nonlinear Soft Matter Phys. 69(2 Pt 2), 116 (2003)

202

H. Saad et al.

8. Meyers, R.A. (ed.).: Encyclopedia of Complexity and Systems Science, vol. 1. Springer, Berlin, eprint arXiv:0712.2716 (2009). Fortunato, S., Castellano, C. 9. Bron, C., Kerbosch, J.: Finding all cliques of an undirected graph. Commun. ACM 16, 575– 577 (1973) 10. Gao, W., Wong, K.F., Xia, Y., Xu, R.: Clique percolation method for finding naturally cohesive and overlapping document clusters. In: Matsumoto, Y., Sproat, R.W., Wong, K.F., Zhang, M. (eds.) Computer Processing of Oriental Languages. Beyond the Orient: The Research Challenges Ahead. ICCPOL 2006. Lecture Notes in Computer Science, vol. 4285. Springer, Berlin (2006) 11. Palsetia, D., Patwary, M.M.A., Hendrix, W., Agrawal, A., Choudhary, A.: Clique guided community detection. In: IEEE International Conference on Big Data (Big Data) (2014) 12. Blondel, V.D., Guillaume, J.-L.: Renaud Lambiotte and Etienne Lefebvre: Fast unfolding of communities in large networks. arXiv:0803.0476 (2008) 13. He, K., Li, Y., Soundarajan, S., Hopcroft, J.E.: Hidden Community Detection in Social Networks. eprint arXiv:1702.07462 (2017) 14. Zachary, W.W.: An information flow model for conflict and fission in small groups. J. Anthropol. Res. 33, 452–473 (1977) 15. Leskovec, J., Adamic, L., Huberman, B.A.: The dynamics of viral marketing. ACM Trans. Web (ACM TWEB), 1(1) (2007) 16. Yang, J., Leskovec, J.: Defining and evaluating network communities based on ground-truth. In: ICDM (2012) 17. Backstrom, L., Huttenlocher, D., Kleinberg, J., Lan, X.: Group formation in large social networks: membership, growth, and evolution. In: KDD (2006) 18. Leskovec, J., Lang, K., Dasgupta, A., Mahoney, M.: Community structure in large networks: natural cluster sizes and the absence of large well-defined clusters. Int. Math. 6(1), 29–123 (2009)

Stock Exchange Threat Modeling, EGX as a Case Study Ehab ElShafei(B) and Nashwa AbdelBaki(B) Nile University, Giza, Egypt {e.elshafei,nabdelbaki}@nu.edu.eg http://www.nileu.edu.eg

Abstract. Cyber crime is a growing threat affecting all business sectors. Stock Exchanges, a financial services sector, are not far from it. Trading stocks via Internet exposes the process to cyber threats that might take advantage of a system defect to breach security and cause possible harm. Online Trading websites are protected by various security systems. Digital Certificate, which is based on Secure Socket Layer (SSL) protocol, is an example. This research examines implementation of Digital Certificate in online trading servers. This evaluation helps to identify security weaknesses and take actions for protection improvement.

Keywords: SSL/TLS

1

· Security · Electronic trading · Stock exchange

Introduction

Stock Exchange Markets provide a service to trade stocks and bonds. They have multiple roles in the economy [?] such as raising capital for companies, government capital raising for development projects and mobilizing savings for investment. Additionally, it is an indication of the general trend in the economy for a particular country. For many years, stock exchanges were physical locations where buyers and sellers met and negotiated. With the improvement in communication technology in the late 20th century, traders started to transact from remote locations in what became known as electronic trading (etrading). There are clear indications attest that the electronic crime threat in stock markets is an increasing threat, with the possibility of significant costs [3,4]. Therefore, implementing an effective information security measures and controls has become a critical success factor for all parties (regulators, brokerage companies and individual investors) to ensure a safe environment for electronic trading. Hereby, a threat modeling has to be developed and be followed for optimizing environment security. Threat modeling is a method for improving security by identifying assets that needs protection and weaknesses. Then defining actions reduce the effects of threats to the system. In stock exchange environment, the web servers are c Springer International Publishing AG 2018  A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3 19

204

E. ElShafei and N. AbdelBaki

companies assents that need a protection. Digital Certificate is one of the technologies required to maintain the protection. It is based on Secure Socket Layer (SSL) [6] and Transport Layer Security (TLS) [8] protocols. SSL/TLS protocols are considered the de facto standard for providing secure communication over the Internet. The protocols have evolved over years to fix the weaknesses and drawbacks detected, add protection against discovered attacks and support new cryptographic algorithms that were defined. Several security assessments should be conducted to make sure that stock exchange markets are aligned with recent cyber threats. Moreover, companies should evaluate their systems and implemented technologies to identify any weakness. Then take actions toward enhancing the protection of their clients’ information. The rest of this paper is organized as following. Section 2 demonstrate the previous studies related to cyber threats in stock exchange. Followed by Sect. 3 which define the threat modeling for this environment. Section 4 introduce SSL/TLS protocols background, the known attacks and deployment best practices. The case study is presented in Sect. 5. The security assessment, its results and discussion are presented in Sect. 6. The conclusion is presented in Sect. 7 along with future work.

2

Preceding Studies

Most of studies that are related to Stock Exchange analyze the markets performance. It provides economic advices and recommendations to investors. Other studies discuss the regulations that protects the trading environment, listed companies and investors, from frauds. In the digital era, there is no enough studies evaluate how vulnerable are stock markets to cyber threats. This research is an effort to introduce the cyber threats that may target electronic trading in stock markets. It starts with defining a threat modeling, which is discussed in the next section.

3

Threat Modeling

Threat modeling is an endless process that consists of defining assets that needs protection. Followed by, identifying the role of each component with respect to these assets. Then, creating a security profile for each component, identifying prospective threats, prioritizing it. Determine where the most effort should be applied to keep a system secure is the key to threat modeling. In an online trading environment, web servers are companies assets that need to be protected. Digital Certificate is the standard solution for that purpose. It protects the communication between clients and server. In addition, it provides a mechanism for servers identifications. As part of the threat modeling, it is important to understand the technical security background, terminologies, attacks and best practices of the selected technology area. The next section introduces The SSL/TLS Protocols.

Stock Exchange Threat Modeling, EGX as a Case Study

4

205

SSL/TLS Protocols Background

Security was not taken into consideration in Internet design. The main aim was sharing information between different parties. As Internet grows, all information sent over open network could be eavesdropped, tampered, or forged. The development history is introduced in [16,17]. SSL 1.0 was not released to the public. A number of security flaws discovered in SSL 2.0, which was released in 1995, led to the design of SSL 3.0 [6] that was released in 1996. IETF adopted it and released Transport Layer Security (TLS) in 1999 as an Internet standard RFC2246 [8]. After seven years, TLS 1.1 defined in RFC4346 [18]. In 2008, TLS 1.2 was defined in RFC5246 [19] which is the latest release. All TLS versions were further refined in RFC6176 [20] by removing their backward compatibility with SSL 2.0. Nowadays, SSL/TLS are the dominant protocols for securing network communication. This section introduces how do they work, followed by their known attacks. In the end, the deployment best practices are presented. 4.1

SSL/TLS Known Attacks

During the 20-years of SSL development, several defects were found. They were fixed due to the flexible architecture of SSL. This section lists the known attacks [21] that are related to this research (1) Heartbleed (2) BEAST (3) POODLE (SSL/TLS) (4) Attacks on RC4 algorithm (5) owngrade attack. Applying SSL/TLS deployment best practices is the best way to overcome these issues. 4.2

SSL/TLS Deployment Best Practices

When SSL/TLS is configured improperly, a false impression of security is given where the communications could be at risk. This section presents deployment best practices, that are related to this research topics, introduced by [22,23] to ensure secure communication. Extended Validation (EV) certificates are issued only after thorough offline checks. EV certificates are more difficult to forge, provide slightly better security, and browsers present them in a better treatment. Secure Protocols: SSL/TLS family consists of five protocols. (1)&(2) SSL2/3 are insecure and must not be used. (3) TLS1 when used with careful configuration, it can almost be made secure. (4)&(5) TLS 1.1/1.2 should be the main protocols as it offer important features that are unavailable in earlier versions. Perfect Forward Secrecy: PFS [24] is a protocol feature that enables secure conversations, which are not dependent on the server’s private key. If a server is configured to support forward secrecy, then a compromise of its private key can’t be used to decrypt past communications recorded by third party. Client-Initiated Renegotiation: Renegotiation [25,26] allows parties to stop exchanging data in order to renegotiate how the communication is secured.

206

E. ElShafei and N. AbdelBaki

The server may need to do it, but there is no known need for client to. It may expose the server to Man-in-the-middle (MITM) attack [27]. Thus, it should be disabled. In addition, insecure server renegotiation should be disabled in result of discovering an authentication gap vulnerability in Nov 2009. TLS compression: compression [?] can be used by attackers to decrypt part of data transmitted. As very few web browsers support TLS compression, it is unlikely that clients will experience any performance issues by disabling it on the servers. HTTP Strict Transport Security: HSTS [28] does not allow any insecure communication with the web site that uses it. It achieves this goal by automatically converting all plain-text links to secure ones. Adding support for HSTS is the single most important improvement for the SSL security of the web sites. New sites should always be designed with HSTS in mind and the old sites converted to support it wherever possible.

5

Case Study: The Electronic Trading in the Egyptian Exchange (EGX)

The Egyptian Exchange (EGX)[29] is one of the oldest stock markets established in the Middle East. It traces its origins to 1883. It introduces the online trading via the Internet in 2006. The regulation for the electronic and online trading were issued by The Egyptian Financial Supervisory Authority (EFSA) [30]. The regulation presents IT Infrastructure requirements (systems, servers’ roles, network (WAN), and security) as with other requirements, which a brokerage company must implement to get a license after inspection.

Fig. 1. Trading methods

Stock Exchange Threat Modeling, EGX as a Case Study

5.1

207

Electronic Trading Trends

It is worthy to know the weight of online trades compared to ordinary trades. This helps identifying the risk and estimating the losses of being under attack. Figure 1 compares the trading methods for Q4Y16 according to data published by EGX. The outer ring shows that the online trades value is 87.5 Billion EGP, which represents 53% of all traded value. Whereas, the online trades number is approx. 2.6 Million trades, which represents 64% of all trades number as presented by the inner ring. The predicament is, What if cyber attacks targeted wide range of brokerage companies in an organized way! The least loss would be preventing investors for trading electronically. The worst-case scenario is executing unauthorized orders to create a confusion state. Subsequently, it could lead to market crash, where sudden dramatic decline of stock prices result a significant loss of investors’ wealth. The investors lose the trust in the stock market and/or the stock market lose its reputation. Protecting the online trading process is the protection for the whole Egyptian stock market from unfortunate events.

6

SSL/TLS Digital Certificates Assessment

This assessment addresses the online trading regulation [30] point 11, concerned of websites digital certificates. Brokerage companies have to deploy a valid digital certificate in their online trading web servers for encryption and for identification. It addresses many security aspects such as “Confidentiality”. Secure communication ensures that no other parties know the transmitted data, which is one state of information lifecycle. It provides protection against many attacks such as eavesdropping and man-in-the-middle attacks. Another security aspect is “Availability”. SSL certificate provides a mechanism for clients to identify the correct website which is a protection against phishing. The Selection criteria is the list of brokerage companies that executed online trading orders in Q4Y16. According to EGX statistics, 103 companies executed online trading orders. SSL server test approach consists of four steps (1) Look at a certificate to verify that it is valid and trusted. (2) Inspect server configuration in three categories a. Protocol support, b. Key exchange support, c. Cipher support. (3) Combine the categories scores into an overall score (from 0 to 100). Category with 0 will push the overall score to 0. Then, a letter grade is given. (4) Apply a series of rules to handle some server configuration aspects that cannot be expressed via numerical scoring. Rules may reduce the grade or increase it. Several parameters are collected by this assessments: (i) Secure Protocols supported by websites, (ii) whether the website supports (Secure Renegotiation, Secure Client-Initiated Renegotiation, TLS Compression, Forward Secrecy, and Strict Transport Security (HSTS)) or not. Finally, (iii) the overall website rating. The websites are assessed between March 26 and 29, 2017. The data analysis results are presented in next section.

208

6.1

E. ElShafei and N. AbdelBaki

Assessment Results

It is found that from 103 websites, only 85 (82.5%) are available for assessment, whereas 18 (17.5%) websites cannot be evaluated. All upcoming figures are for evaluated websites only. The first result of data analysis is concerned about Secure Protocols supported by websites. Figure 2 shows that the most secure protocols TLS 1.2 and TLS 1.1 are supported by approx. 35% of websites. TlS 1.0 is supported by 98.8%, almost all websites. Furthermore, The insecure protocols SSL 3 & SSL 2 are supported by 81% and 56.5% respectively of websites. Analysis shows that only 14% of websites do support secure protocols TLS 1.x and do not support insecure SSl x.

Fig. 2. Supported secure protocols

Concerning Attacks, Fig. 3 presents that 97.6% and 94.1% are not vulnerable to Heartbleed and BEAST respectively. Moreover, almost 70% of website are not vulnerable to POODLE (SSL & TLS). Furthermore, 90% of websites are vulnerable to attacks on RC4. Finally, almost 80% of websites are vulnerable to protocol downgrade attack. Figure 4a presents various features that are discussed in Sect. 4.2. (1) Only 6% of websites use Extended Validation (EV) certificate. (2) “Secure Renegotiation” is supported by 90% of websites. While (3) “Client-Initiated Renegotiation” is not supported by 94%. (4) “TLS compression” is not supported by all websites. (5) “Strict Transport Security” are not supported by almost 98% of websites. Lastly, Fig. 4b shows that “Forward Secrecy” is supported by 50% of websites, half of them use weak key exchange. The overall rating for the websites is shown in Fig. 5. It is found that almost 35% of websites have good overall rate (A, B & C). While 64% of websites have F grade.

Stock Exchange Threat Modeling, EGX as a Case Study

Fig. 3. SSL/TLS known attacks

(a) Various Features

(b) Forward Secrecy

Fig. 4. SSL/TLS best practices

Fig. 5. Websites overall rating

209

210

6.2

E. ElShafei and N. AbdelBaki

Assessment Discussion

The results shed the light on critical issues. Only 14% of websites may be considered secure as they do support TLS 1.x protocols and do not support SSL x. This also implies, that 86% of websites are vulnerable to protocol downgrade attack. Though all modern Internet browsers prefer to use TLS 1.0, which is supported by all websites, a hacking tool or a MiTM attacker may force clients browsers to use SSL 2.0, as present in Sect. 4.1, then take advantage of its weak to attack clients’ sessions. It is worth mentioning that these attackable websites are used for trading 63% of EGX trading value, more than 55 Billion EGP. The websites that have EV certificate are only 6% of websites, Thus, Only their clients are considered protected from Phisihing attacks. This is very poor rate. Though, [31] concluded that some users may neglect signs placed outside of their attention such as EV certificate does. Educating clients, in order to pay attention to these notification, is the most recommended action by AntiPhisihing Working Group (APWG) to fight it. Brokerage companies should be encouraged to use EV Digital Certificates over standard type. In addition, “Strict Transport Security” (HSTS) is not supported by almost all websites. This could be used by an attacker to gain unauthorized access to clients’ information, the same way as LinkedIn vulnerability found in June 2014 [32]. The poor HTTPS/SSL implementation allows an attacker to intercept a user’s communication and to attempt MitM attack against the website as presented in Sect. 4.1. “Forward Secrecy”, which is not supported by 50% of websites, could be led to ravel clients’ trading history if (i) the private key used by this websites is identified by an attacker (ii) this attacker was recording the clients’ encrypted sessions. Therefore, all websites should support “Forward Secrecy”.

7

Conclusion

The developed threat modeling for stock exchange determine that the most effort should be applied to online trading servers. Digital Certificates, which are based on SSL/TLS protocols, are considered as the countermeasures to prevent, or mitigate the effects of threats to the environment. The results emphasize that there is a particular lack of attention towards information security as demonstrated in the case study. The regulation, as a high level document, is good if it is considered as baseline. Thus, companies cannot depend on it for security technologies deployment. Guidelines should be released to help implementing technologies, related to regulation, best practices. Moreover, the regulator should monitor the companies constantly and pay attention to those who violate the regulation. Needless to say that more assessments needed to complete the whole picture. These assessments aim to make sure that all regulation points are well covered by brokerage companies. Regulation point 3 is an example. Do brokerage companies follow firewalls deployment best practices? Do they maintain and update

Stock Exchange Threat Modeling, EGX as a Case Study

211

their technologies (operating systems, services such as mail & web, database engines, network equipment, antivirus, firewall, IPS, ... etc.) to the latest release that cover volubilities found in the previous versions or not? Another subject is “Software Security”. Is the trading web application used is protected from Buffer Overflow, SQL injection ... etc.? All these assessment are considered as future work.

References 1. Ngare, E., Nyamongo, E.M., Misati, R.N.: Stock market development and economic growth in Africa. J. Econ. Bus. 74, 24–39 (2014) 2. Ayadi, R., Arbak, E., Naceur, S.B., De Groen, W.P.: Financial development, bank efficiency, and economic growth across the Mediterranean. In: Economic and Social Development of the Southern and Eastern Mediterranean Countries. Springer, pp. 219–233 (2015) 3. Tendulkar, R.: Cyber-crime, securities markets and systemic risk. In: IOSCO Staff Working Paper, pp. 3–11 (2013) 4. Rashid, F.Y.: Cyber attacks against stock exchanges threaten financial markets: Report (2013). http://www.securityweek.com/cyber-attacks-against-stockexchanges-threaten-financial-markets-report 5. Shostack, A.: Threat Modeling: Designing for Security. Wiley, New York (2014) 6. Frier, A., Karlton, P., Kocher, P.: The SSL 3.0 protocol. Netscape Commun. Corp. 18, 27–80 (1996) 7. Barnes, R., Thomson, M., Pironti, A., Langley, A.: Deprecating secure sockets layer version 3.0. Technical report, Internet Engineering Task Force (2015) 8. Dierks, T., Allen, C.: The TLS protocol, version 1.0. The Internet Engineering Task Force (1999) 9. Polk, T., McKay, K., Chokhani, S.: Guidelines for the selection, configuration, and use of transport layer security (TLS) implementations. NIST Spec. Publ. 800(52), 32 (2014) 10. Hamid, K., Suleman, M.T., Ali Shah, S.Z., Akash, I., Shahid, R.: Testing the weak form of efficient market hypothesis: empirical evidence from Asia-Pacific markets. Int. Res. J. Finan. Econ. 58, 121–133 (2010) 11. Fenghua, W., Zhifang, H., Zhifeng, D., Xiaoguang, Y.: Characteristics of investors’risk preference for stock markets. Econ. Comput. Econ. Cybern. Stud. Res. 48(3), 80–99 (2014) 12. Coffee Jr., J.C., Sale, H., Henderson, M.T.: Securities Regulation: Cases and materials. Foundation Press, New York (2015) 13. Hussain, S., Kamal, A., Ahmad, S., Rasool, G., Iqbal, S.: Threat modelling methodologies: a survey. Sci. Int. (Lahore) 26(4), 1607–1609 (2014) 14. Alsaadi, E., Tubaishat, A.: Internet of things: features, challenges, and vulnerabilities. Int. J. Adv. Comput. Sci. Inf. Technol. 4(1), 1–13 (2015) 15. Andrea, I., Chrysostomou, C., Hadjichristofi, G.: Internet of things: security vulnerabilities and challenges. In: 2015 IEEE Symposium on Computers and Communication (ISCC). IEEE, pp. 180–187 (2015) 16. William, S.: Cryptography and Network Security, 4/E. Pearson Education India, New Delhi (2006) 17. McKinley, H.L.: SSL and TLS: A Beginners’ Guide. SANS Institute (2003)

212

E. ElShafei and N. AbdelBaki

18. Dierks, T., Rescorla, E.: The transport layer security (TLS) protocol, version 1.1. The Internet Engineering Task Force (2006) 19. Dierks, T., Rescorla, E.: The transport layer security (TLS) protocol, version 1.2. The Internet Engineering Task Force (2008) 20. Turner, S., Polk, T.: Prohibiting secure sockets layer (SSL) version 2.0. The Internet Engineering Task Force (2011) 21. Sheffer, Y., Holz, R., Saint-Andre, P.: Summarizing known attacks on transport layer security (TLS) and datagram TLS (DTLS). Technical report, The Internet Engineering Task Force (2015) 22. Ristic, I.: Bulletproof SSL and TLS: Understanding and Deploying SSL/TLS and PKI to Secure Servers and Web Applications. Feisty Duck, London (2013) 23. Seltzer, L.: Best practices and applications of TLS/SSL. https://www.symantec. com/content/en/us/enterprise/white papers/b-best-practices-applications-of-tlsssl WP.pdf 24. Huang, L.S., Adhikarla, S., Boneh, D., Jackson, C.: An experimental study of TLS forward secrecy deployments. IEEE Internet Comput. 18(6), 43–51 (2014) 25. Rescorla, E., Ray, M., Dispensa, S., Oskov, N.: Transport layer security (TLS) renegotiation indication extension. Internet Engineering Task Force (IETF) (2010) 26. Giesen, F., Kohlar, F., Stebila, D.: On the security of TLS renegotiation. In: Proceedings of the 2013 ACM SIGSAC Conference on Computer & Communications Security. ACM, pp. 387–398 (2013) 27. Prentow, T.S., Krarup, M.V.: MITM attacks on SSL/TLS related to renegotiation (2009) 28. Hansen, R.: Strict communications transport security, uS Patent App. 14/172,899 (2014). https://www.google.com/patents/US20140250296 29. EGX Egyptian exchange (2017). http://www.egx.com.eg 30. EFSA. Egyptian financial supervisory authority (2017). http://www.efsa.gov.eg 31. Dhamija, R., Tygar, J.D., Hearst, M.: Why phishing works. In: Proceedings of the SIGCHI Conference on Human Factors in Computing Systems. ACM, pp 581–590 (2006) 32. Khandelwal, S.: Millions of linkedin users at risk of man-in-the-middle attack (2014). http://thehackernews.com/2014/06/millions-of-linkedin-users-at-risk-of. html

HTTP Application Layer DDoS Attack Mitigation Using Resources Monitor Mohamed Aly Mohamed and Nashwa Abdelbaki(&) Nile University, Cairo, Egypt {mo.aly,nabdelbaki}@nu.edu.eg

Abstract. Denial of Service attacks are one of the most annoying day to day challenges for any security expert and IT professional. This is according to the attack nature. It can be run against any kind of network resources, whether exposed to the Internet or internally in a corporate network, regardless of the type of service it provides and its role in the network. There is no one complete solution or unified framework method against this type of attack. The most dangerous type of DoS attack is the DDoS type. The attack flow from many sources at the same time. In the context of mitigation from DDoS attack, the detection mechanisms are the first step in the way. Mechanisms like IPS and firewall are not effective because of the current challenging DDOS attack methods against application layer. The attackers use vulnerability in the application itself to disrupt the service it provides. Current mitigation techniques depend on preventing the attack traffic from reaching web servers. In this paper we study http application layer DDoS attacks against web servers. We propose new approach for mitigation that depends on absorbing the attack effects on the web server and increases server’s resistance against DDoS attacks. Keywords: Low-rate DoS attack attacks mitigation



Application layer DoS attack



http DoS

1 Introduction Web applications by nature are exposed to Internet. The web applications are all the time vulnerable to misuse and attacks. DDoS attacks are common in the field of web application security. Usual security mechanisms like firewalls and IPSs are not enough for detecting this kind of attacks [1]. This is because the attack traffic is similar to a normal user traffic and the attacker does not aim to consume the network bandwidth. Firewalls and IPSs usually run at layer 3 but the application layer attacks run at the application layer. Get and Post HTTP flood attacks are types of DDoS attack that sends too many identical requests to the victim server in order to consume as much of the server resources as it can. When a legitimate user tries to request a page from the server the user will not find any available resources to serve his request. One Get or Post attacker usually cannot take a server down because the current servers are equipped with enough memory and processing power. The problem can be magnified if the attack came from many sources at the same time, which we call Distributed Denial of Service attack DDoS. DDoS makes the mission of the security expert difficult to fight © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_20

214

M.A. Mohamed and N. Abdelbaki

and mitigate this threat [2, 3]. Another type of DDoS attack against web application is called Low-rate attack. This type of attack relies on attacking the web application by sending modified packets with very low traffic rate. Usual detection mechanism cannot easily detect this attack against web servers. However, the results will be the same, the service will be denied for the legitimate users. One of the famous DDoS attacks for http is the Slowloris attack. This attack tries to use as much from the connection pool of the web server so it denies access for the legitimate user. It achieves this by sending uncompleted request. The server waits for the client to send the rest of the request and the connection will keep open waiting for the rest of the request. The attacker will send small parts of the request in order to reset the timeout value. The attacker will send many requests like this in order to occupy all concurrent connections available on the server. This attack can work in different request parts. It can send slow header or slow body. Because the characteristics of the attack pattern, it is difficult to differentiate between attack and normal flash crowd by legitimate users [4]. There are many mechanisms for detection and mitigation from DDoS attacks. Most of them aim to prevent the attack traffic from reaching the web server. Despite all the efforts for mitigation there is no mechanism that could completely prevent this attack [5], and the attack traffic still can reach the web server. In this paper, we use another approach for mitigating DDoS attacks by reducing the effects of the attack on the web servers. We will add another layer of mitigation to existing mechanisms. This layer will absorb the effects of the attack on the web server and overcome what we think is a weak point in the current mechanisms, which allow the attacker’s traffic to reach our web server. In this paper, we introduce two approaches that can absorb the attack effects on the web server and let the server continue to serve the legitimate users requests. Because DDoS attack can exhaust server resources like memory, cpu and network connections [6, 7], we will monitor specific server resources that’s used by the web service and should be affected by the attack. This monitoring procedures will trigger the mitigation mechanism in both approaches.

2 Literature Review Here we will try to spot some previous efforts that introduced similar mechanisms for detection and mitigation of application layer DDoS attacks. We found that most of the efforts in the field of mitigation and detection of DDoS attacks can be classified into two categories or approaches, rate-based and traffic analysis. Rate-based approach depends on counting the number of connections that every client is using. Then adding limits for every client in order to block any connection that exceeds this limit from the same client. This approach is effective to block many attacks but to a certain limit. This approach is heavily applied on many of the real world solutions. For example, Apache Mod-Evasive is one of the famous Apache modules for DDoS attack mitigation. It depends on counting the number of requests for each IP address. Mod-Security depends on writing custom rules to count the number of connection by each IP address and block any connections that exceeds the pre-defined number. Traffic analysis approach depends on analyzing the requests that are sent to the web application to distinguish between flash crowded traffic sent by legitimate users and the

HTTP Application Layer DDoS Attack Mitigation

215

attack traffic. Below we will try to spot some academic work introduced using this approach. Authors in [8] proposed threshold based algorithm. The proposed algorithm does not need to examine every http get request. It needs to examine only one get request during one session. It does not need to consume much of the cpu time. The algorithm was using what they called Monitoring Period (MP), Time Slot (TS), and the Average Inter-GET Request Packet Exist. Rishie Sharma [9] introduced approach using spectral analysis for detection of low-rate DDoS attack. They used the apache web server log file to be analyzed. The result showed that there are disproportionate amounts of energy in the lower frequencies when the attack is present. However, by randomizing the attack pattern, an attacker can reduce the disproportion to a degree where it might be impossible to correctly identify an attack in a real world scenario. Another approach introduced by [10] depends on managing the low-rate attack by changing the behavior of server during the attack. The proposed techniques are based on modifying the way in which an application server accepts incoming requests. They focus on protective measures aimed at preventing an attacker from capturing all the positions in the incoming queues applications, and randomizing the server operation to eliminate possible vulnerabilities due to predictable behaviors. The approach in [11] studied the variability of low-rate attacks against web protocol http 2 and proved that this version of http protocols is more vulnerable to low-rate attack more than version 1.1. [12] is an another research for detection of application layer attacks on http servers. It offered a mechanism to capture the normal flash crowd events pattern. the App-DDoS attack monitoring, detection and then blocking of further attack is implemented. An effective method is introduced to identify whether the surge in traffic is caused by normal Web users or by attackers. Access Matrix is introduced to detect DDoS attacks based on user logs and threshold value. Hidden Markov model is implemented to detect DDOS attack based on user behavior. Although both approaches can provide certain limit of protection against http application layer attack, but they cannot provide a complete protection, especially for the academic approaches we mentioned which lacks the practical side for implementation on a real world scenario.

3 Techniques Concept Many of the mitigation techniques for http DoS attack are connection rate-based. This means that the system tries to prevent the attack traffic from reaching the web servers. This is achieved by counting the rate of the connections coming from each IP address and blocking traffic when it exceeds specific number of concurrent connection per IP address. This technique can be effective for reducing the attack hits in case of single attacker IP address. It loses its effect in case of DDoS attack. Each attacker source IP address can take the maximum allowed number of concurrent connection. With hundreds or sometimes thousands of attackers the rate-based mechanism will fail to stop the attack traffic.

216

M.A. Mohamed and N. Abdelbaki

In this paper, we introduce another approach that uses the rate-based mitigation techniques as a first layer, but we add another layer which depends on absorbing the attack effects on the web servers. We assumed that some of the attack traffic will bypass the first layer of the mitigations “rate-based” and reaches the web servers. Our approaches should be able to absorb this traffic effects on the server, and the web service should not be interrupted.

4 Mitigation Techniques In this paper, we propose two mitigation techniques, “Reduced Database Version of web application” and “Smart Load Balancing”. These techniques can increase server resistance against attack and absorb the attack effects on server resources. We created a resources monitoring module, which triggers the action for both mitigations when any server resources reach what we call Service Critical State. Also, both mitigation should not allow any resources to reach the Service blocking state. Now we need to define these two parameters and define the value assigned to them. Both mitigations techniques use these parameters. Service Critical State which is the state when server resources are about to reach maximum values that can work with. The web service performance is still acceptable, and the legitimate users are still getting response from the server. Service Blocking State which is the state when one of the monitored resources reaches the maximum value that can work with it. In this case, the web service is interrupted and legitimate users cannot get response from the server. Regarding the Services Critical State Values, we consider the web application response time is about to reach the critical state at 3 s. For the service, Critical state value for the number of concurrent connections, we consider the web application is about to reach the maximum number of its pre-configured value on concurrent connections at 200. Service Blocking State value for response time, we consider the web application response is acceptable till it reaches 5 s. Service blocking state value for the number of connections is 256. This is the maximum number of concurrent connections configured for our web server. The values we set are for the test purposes only. It should be different in a real world scenario and also depending on the server’s hardware configuration. 4.1

Reduced Database Version of the Web Application Technique

Database queries have major influence on the server resources. It can increase cpu utilization, request response time and the number of concurrent connections. Web applications that depend heavily on database queries are more vulnerable to DoS attack than static sites. For example, the web applications created by content management systems like Joomla and WordPress depend on database queries for each user request, which makes these applications more vulnerable to DoS attack and miss use. In this technique, we propose generating new version of the normal web application. This version is customized to reduce the DoS attack effects on the server resources. This version of the web application will be sent to the user only during the attack time.

HTTP Application Layer DDoS Attack Mitigation

217

The reduced database version of the web application is adjusted to reduce database queries as much as possible. This can be achieved by converting the normal web application to static version if possible. Not all applications can be converted to static even temporarily. The application developer can reduce database queries to keep only the main functions. This will minimize database access which makes the web application capable of absorbing DoS attack traffic effects, and keeps the server resources consumed by web application to the minimum. Our resource monitoring module will trigger the application switching when it detects resources degradation. Then it will switch back to the normal site when the resources usage returned to its normal values. System implementation and lab setup This mitigation technique contains of three modules, Creation of reduced database version of the web application, monitoring module and application switch module. The first step in this technique is the creation of the modified version of the web application. It will be created manually by the application developer. Most of the information to be displayed to the user will be statically added to the web site. The dynamic content with database access should be kept to a limited number of functions that the application cannot be functioning without it. In this paper, we used internal web application that keeps information about some historical characters. All the information should be normally retrieved from the database. We converted the application by statically adding some basic information about the characters with HTML code. We disabled all the search and edit functionality to the application. The Monitoring module is continuously monitors our web server’s resources. The monitoring system checks the status of the server resources that can be affected by the attack. The resources that have influence on the system performance and should be monitored are percentage of the cpu used by the web service, amount of memory the web service using, number of concurrent connections and the web application response time. Each one of these resources can affect the web service performance, or even block the service completely. To keep the web service functioning, each resource should be in its normal usage value. First we need to determine the normal usage values for each resource. The monitoring module should keep checking each resource value. If one or more resources exceeded its normal value and reach the Critical state value, the monitoring module should Alert the application switching module. The application switching module is responsible for changing the web server application configuration to send the reduced version of the web application to the user during the attack time. This module also is responsible for switching back to the normal application when it receives notification from the monitoring module that the server resources is back to its normal usage value. Testing In order to test this system, we have run DoS attack against our normal web application without our mitigation technique. We recorded the effects of the attack on our server resources. Then we have run the DoS Attack again with our mitigation enabled. When the monitoring system detects that the server resources have reached the critical value, the switching module starts to send the modified version of the web application. We recorded the resources’ status again in order to compare between the resources status

218

M.A. Mohamed and N. Abdelbaki

with and without the mitigation technique. The test time for both tests is 5 min. It is enough time to reach the blocking state according to the server configuration. In Figs. 1 and 2 we demonstrate the difference between DoS attack effects on some server resources without our mitigation technique and after enabling the mitigation technique.

Fig. 1. Attack effect on response time

Fig. 2. Attack effect on the number of concurrent connections.

4.2

Smart Load Balancing Technique

In this mechanism, we propose using smart load balancing to increase server resistance against DoS attack. We balance the load between two web servers in a way that can increase server performance against DoS attack. Normal load balancer uses two or more active machines to distribute the web requests between them. In this mechanism, we add another layer to the system. For each active server, we have another passive peer.

HTTP Application Layer DDoS Attack Mitigation

219

The load balancer sends the requests normally to the active peer “A”. When the resource monitor system detects that the server is about to run out of its resources and to reach the Service Critical State, the system moves the web service to passive peer “B”. The system should recover server “A” from the attack effects. Server “A” will recover when all the connections to the web service get closed, and the web server has enough number of available connection slots to receive new connections. Accordingly, cpu utilization and memory usage should be returned to its normal state. This cycle will be repeated, and the web service will be moved to the active peer until it reaches the Service Critical State, then the system will switch the service to the other passive peer and so on. System implementation and lab setup In order to achieve the mentioned target, we implemented system with two modules, Monitoring module and Balancing module. The monitoring module is the same one we used in the first technique. It continuously monitors our web server’s resources until one of the resources reaches the Service Critical State. The Balancing module is responsible for moving the web service between peers according to the resource status it receives from the monitoring module. When one of the active web server resources became critical the second module will start moving the web service to the peer server. The peer will be able to serve in a normal way until one of its resource reaches Critical State too. The Balancing module works on clearing the memory and closing the web server open connection on the inactive peer. During the time the active peer is having the service, the other inactive server will run quick diagnoses to fix the affected resource to be ready to have the service again. The web service will be looping between the two peers and should not be interrupted, and the server should not reach the blocking state. Testing In order to test this system, we have run DoS attack against our web server without the mitigation system. We measured the time it took for its resources to reach the critical state. We have run the same test again with the mitigation system enabled to compare the results and test if this mitigation system can help in mitigating the attack. We set the test time to 5 min for the first test, and 20 min for the second test. Table 1. summarizes the system resource’ status during the attack without the mitigation system. It shows that the response time reached 5 s after 240 s of the attack. The number of connections reached the maximum configured value after 210 s. The system reached the critical state after 180 s. The system reached the blocking state after 210 s. Afterwards we run the DoS attack again with the mitigation system enabled. Table 2. shows that the web service has looped between the two servers 6 times. Each server has reached the critical state when one of the resources reached its pre-determined value. It took from 3 to 4 min for the server to reach the critical state. The recovery time takes between 30 to 40 s. The table represent the time it takes for each server to reach the critical state then the service has moved to the other inactive peer.

220

M.A. Mohamed and N. Abdelbaki Table 1. Server resources with mitigation mechanism disabled. Time/Seconds 30 60 90 120 150 180 210 240 270 300 30

Memory/MB 320 500 800 1210 1500 2066 1848 2500 2398 2400 320

Connections 15 50 70 100 125 200 258 258 258 258 15

Response time/seconds 0.011 0.044 1.671 1.871 1.951 2.627 2.985 5.859 7.254 9.245 0.011

Table 2. Server resources with mitigation mechanism enabled. Time to critical state/seconds 210 240 240 240 210 210

Memory/Mb

Connections

1848 1750 1540 1687 1478 1478

206 230 226 244 211 223

Response time/seconds 2.374 2.965 2.734 3.136 2.584 2.968

Server A B A B A B

Recovery time/seconds 38 39 34 35 33 38

5 Results and Discussion For the First technique, “Reduced database version of web application”, the normal web application with full database functionality exhausts the server memory. The server reached the maximum configured concurrent connection with high response time. The system has reached the Service Blocking State. On the other hand, with our mitigation technique enabled and after the switching module has sent the modified web application, the server resources started to return to its normal usage value. The system recorded limited amount of memory usage and the number of concurrent connection, with normal response time. The server has not reached the blocking state. For the second technique “Smart load balancing”, the web services reached the blocking state without the mitigation system after around 210 s. With the mitigation system enabled, the web service continued to work in a normal way for 20 min. The web servers did not reach the blocking state during the test time “20 min”. The recovery time for the web servers was less than the time it takes to reach the blocking state. The recovery time for each server is critical for this mitigation system. This mitigation mechanism can be effective as along as the recovery time is less than the time needed for the servers to reach the blocking state.

HTTP Application Layer DDoS Attack Mitigation

221

6 Conclusion Server resources like memory usage, number of concurrent connection and response time have increased during the attack with a normal web application. Using reduced version of the database technique during the attack time helped to absorb the attack effects on the web server. The more we can convert the web application to be static the more we will absorb the attack effects. Not all the web applications can be converted. This depends on the type and function of the web application. Using smart load balancing can reduce attack effects on the server and increase server resistance. For the smart load balancing mechanism, the web server can continue serving as long as the recovery time of the faulty peer is less than the time it takes for the attack to affect the active server.

References 1. Oo, K.K., Ye, K.Z., Tun, H., Lin, K.Z., Portnov, E.M.: Enhancement of preventing application layer based on DDOS attacks by using hidden semi-markov model. Advances in Intelligent Systems and Computing, vol. 387, pp 125–135, Springer, Cham (2016) 2. Singh, K.J., De, T.: An approach of DDOS attack detection using classifiers. In: Emerging Research in Computing, Information, Communication and Applications, pp 429–437, Springer, India (2015) 3. Saleh, M.A., Manaf, A.A.: Protective frameworks and schemes to detect and prevent high rate DoS/DDoS and flash crowd attacks: a comprehensive review. In: Advanced Machine Learning Technologies and Applications, vol. 488, pp 145–152. Springer, Cham (2014) 4. Umarani, S., Sharmila, D.: Predicting application layer DDoS attacks using machine learning algorithms. Int. J. Comput. 8(10) (2014) 5. Boro, D., Bhattacharyya, D.K.: A dynamic protocol specific defense for high-rate DDoS flooding attacks. Microsyst. Technol. 23(3), 593–611 (2016). Springer, Heidelberg 6. Beitollahi, H., Deconinck, G.: A statistical technique to resist application-layer DDoS attacks. J. Ambient Intell. Humanized Comput. 5(3), 425–442 (2013). Springer, Heidelberg 7. Dick, U., Scheffer, T.: Learning to control a structured-prediction decoder for detection of HTTP-layer DDoS attackers. Kluwer Acad. J. Mach. Learn. 104(2), 385–410 (2016) 8. Choi, Y.-S., Kim, I.-K., Oh, J.-T., Jang, J.-S.: AIGG threshold based HTTP GET flooding attack detection. In: Information Security Applications, vol. 7690. Lecture Notes in Computer Science, pp 270–284. Springer, Heidelberg (2012) 9. Sharma, R.: Detection of low-rate dos attacks against HTTP servers using spectral analysis. In: IEEE/ACM International Conference on Advances in Social Networks Analysis and Mining (ASONAM), pp. 954–961, Paris (2015) 10. Maciá-Fernández, G., Rodríguez-Gómez, R.A., Díaz-Verdejo, J.E.: Defense techniques for low-rate DoS attacks against application servers. Comput. Netw. 54(15), 28, 2711–2727 (2010) 11. Adi, E., Baig, Z.A., Hingston, P., Lam, C.-P.: Distributed denial-of-service attacks against HTTP/2 services 19(1), 79–86 (2016). Springer Science+Business Media, New York 12. Rajesh, S.: Protection from application layer DDoS attacks for popular websites. Int. J. Comput. Electric. Eng. 5(6), December 2013

Semantic Cloud Community Framework for Services Provision Tamer M. Al-Mashat1(&), Fatma A. El-Licy1, and Akram I. Salah2 1

Computer Sciences Department, Institute of Statistical Studies and Research, Cairo University, Giza, Egypt [email protected] 2 Computer Sciences Department, Faculty of Computer Science and Information, Cairo University, Giza, Egypt

Abstract. Cloud computing represents an evolution paradigm that enables information technology (IT) capabilities to be delivered “as a service”. In the last decade number of cloud-based services has grown intensely and rapidly. The diversification of cloud service providers has generated the diversification of their offers. Therefore, end-users face a huge challenge while choosing the appropriate cloud provider. Furthermore, the battle for dominance between the big vendors, like Amazon, Google and Salesforce, makes them reluctant to agree on widely accepted standards promoting their own incompatible formats, thus increases the lock-in effect and affects the competition. Interoperability is the missing element that will recover this situation and allows switch between cloud providers whenever needed without setting data and applications at risk. In this paper, we present an approach that will help strengthen semantic and technical interoperability of services. The approach presents a Cloud Community that acts as a broker to mediate between service providers and service consumers based on web ontology language OWLS. This concept would enable end users to select the right services and compose services across multiple Clouds. It would, also, to provide cloud arbitration services that allow users to shift and to choose between existing platforms. Keywords: Cloud Computing  Cloud Community  Cloud broker  Semantic interoperability  Web service  Ontology

1 Introduction It seems probable that, eventually, most software capabilities will be delivered and consumed as services [1]. “Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction” [2]. The diversity of cloud provider and their variety of services with different features became very critical when the landscape is a multi-cloud environment and the main concern is represented by the vendor lock-in issue [3]. In fact, cloud providers, usually, propose technological solutions that differentiate them from their competitors. © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_21

Semantic Cloud Community Framework for Services Provision

223

These differences have the drawback of locking the customers with no alternatives to be offered, it, also, raises barriers to the path of the ubiquitous cloud realization [4]. This paper present a semantic cloud broker “Cloud Community” that is responsible for the management and the governance of the cloud environment. Cloud Community is a set of service providers working in a common domain of interest to introduce services over the internet. A Cloud Community is introduced to cater services based on the ontological representation of the shared concepts in a specific domain of interest. This would facilitate the automation to enhance service discovery and composition so as providing sophisticated services for end users. The Cloud Community, also, serves as an evaluation entity for quality of service to provide trusted services. Simply, Cloud Community adds a level of abstraction to the cloud setting, that is a semantic level, to understand the context. This paper defines a framework for service provision based on Cloud Community which utilizes services discovery and composition to provide higher integrated services. The rest of this paper is organized as follows. Motivation is discussed in Sect. 2. Section 3 discusses related work. Section 4 tackles a service architecture which represents a seed for Cloud Community notion that act as an intermediary between service providers and end users. Section 5 presents and discusses the proposed Cloud Community framework. Section 6 presents a method for facilitating interoperability between different cloud communities based on exchanging semantics information. Finally, Sect. 7, presents the conclusion.

2 Motivation In Cloud computing, the interoperability between two different Cloud providers refers to their ability to cooperate or else interoperate [5]. Current Cloud computing solutions have not been built with interoperability as a primary interest [6]. A major problem is the absence standardization that applied to enable a portability and interoperability between cloud platforms at different service model were not practiced by services providers [7, 8]. However, the rapid evolution of cloud technologies necessitates the cooperation between cloud providers. Therefore, interoperability problems arise, specially the vendor lock-in problem [9–11]. In an interoperable Cloud environment, customers will be able to, not only, compare and choose among Cloud offerings with different characteristics, but also, switch between Cloud providers whenever needed without setting data and applications at risk.

3 Related Work In the reviewed literature, there are several attempts to scope, address and define Cloud computing interoperability. NIST1 provided the most accepted definition of cloud computing architecture as showed in Fig. 1, includes five essential characteristics

1

https://www.nist.gov/.

224

T.M. Al-Mashat et al.

(on-demand self-service, broad network access, resource pooling, rapid elasticity, measured Service), four service models (IaaS, PaaS, SaaS, BPaas), four deployment models (public, private, community and hybrid cloud) and Service broker acts as an intermediary between cloud providers and users [12]. Mansour discussed taxonomy organized around provider-centric and user centric approaches [13]. The provider-centric approach relies on the provider’s agreement to adopt specific standard to achieve the level of cloud federation. While user centric approach relies on a cloud broker third party. A cloud provider caters a single consistent interface to the services that meet users’ requirements. Whereas, a user schedules resources and apply effective pricing schemes. Furthermore, Cloud broker offers and integrates disparate services across multiple hybrid approaches [14]. A cloud broker provides services in three categories [15]: 1. Intermediation: it acts as an intermediary between clients and cloud providers to adopt cloud services. 2. Aggregation: it can customize and combine multiple cloud services in order to provide composite services. 3. Arbitrage: it assists customers to select from several cloud providers based on QoS requirements, such as cost or performance. Service arbitrage is like service aggregation, except that the combined services are not fixed, which offers adaptive services.

Fig. 1. Cloud Computing architecture.

mOSAIC project addresses the interoperability issue by defining a common ontology Developed by OWL language. This ontology is applied for retrieval and composition of cloud services through developing an open-source platform that enables applications to interoperate Cloud services [16]. The main concern of mOSAIC ontology is the infrastructure as a service model and SLA [17]. Di Martino et al. proposed a semantic representation architecture consisting of a set of interrelated OWL ontologies describing cloud services, patterns, virtual appliances and their compositions within a cloud federated environment. An automated reasoning system is

Semantic Cloud Community Framework for Services Provision

225

presented, in which SPARQL2 queries, Semantic Web Rule Language (SWRL3) and formal Description Logic (DL) is exploited in order to assess the equivalence between services, applications and patterns [18, 19]. Karn et al. proposed a semantic framework that aimed at enabling interoperability between Multiple BPaaS provider through the description of BPaaS configurable model [20]. Zhengping et al. proposed service re-composition approach using discovery service and semantic service matching that applied at either application or platform services level in cloud system. The re-composition goal is to achieve better availability and fault recovery, since a service has no response or fault [21]. The presented framework in this paper follows arbitrage service method which an end user will be involved in selecting appropriate service based on his/her QoS preference. Thereafter, the availability of service will be monitored by the cloud community to recover any fault through arranged alternative plans.

4 Service Oriented Architecture (SOA) We view cloud computing as an extension of Service-Oriented Architecture (SOA) and plans to develop Cloud Community model as extensions over existing standards to support Cloud interoperability. The growing trend in software architecture favoring the building of platform-independent software components, called Web services that would be available in the distributed environment of the Internet, [22]. Web services are a set of emerging standards that enable interoperable integration between heterogeneous IT processes and systems. Two of the most important topics in web services framework are service discovery and services composition. More complex applications would be synthesized from a set of appropriate Web services rather than coding them manually [23]. Seamless composition of Web services has enormous potential in streamlining business-to-business and integrating enterprise application, which, represent one of the best approaches that can be applied by cloud providers [12]. Web services that adopt open standard interfaces and protocols, are, increasingly, utilized to integrate and build business applications over the Internet [24]. Figure 2(a), illustrates the main components of web service architecture and their interrelationships which is the seed of our notion as will be discussed in Sect. 5.1. The main component of typical web service based architecture is service requester, service provider and service broker. A service provider publishes his services on the service registry, namely, “service broker”. Therefore, a service requester may use the published service by discovering it via the service registry. When the requested service is available, the registry replies with the service information. Thereafter, the service requester binds a connection with service provider to invoke the service [25]. The specification of a service is expressed in web service description language (WSDL4) [26]. WSDL provides a function-centric description of the Web services covering inputs, outputs, and exception handling. In addition, a Semantic service provides a process level description of the service.

2 3 4

https://www.w3.org/TR/sparql11-query/. https://www.w3.org/Submission/SWRL/. https://www.w3.org/TR/wsdl.

226

T.M. Al-Mashat et al.

Fig. 2. Cloud Community extended as service oriented architecture

This description, in addition to functional information, models the preconditions and post conditions of the process. This model enables the evolution of the domain to be logically inferred. It relies on ontologies to formalize domain concepts to be shared among services [27].

5 Cloud Community Framework Large scale, dynamics, and heterogeneity, of services may conceal any attempt for understanding their semantics. These properties of services bring difficulties about the automation of their discovery and composition, [28]. These difficulties necessitate new organizing techniques for the services to be better understood and efficiently outsourced. 5.1

Cloud Community as an Extension of SOA

A Cloud Community is a cluster or shared pool of services for specific domain of interest. A Cloud Community caters a description of services and ranking them based on the metric measures and consumers’ feedback. Figure 2(b), illustrates Cloud Community based on service oriented architecture. The cloud services are divided into groups of communities’ reference of a common interest, [29]. Community providers are, generally, groups of nonprofit organizations and/or businesses that, share a common domain of interest to introduce services on the internet. Communities are published in an upper community registry that will be discussed in Sect. 6. Service providers, therefore, could identify a community of interest, discover the corresponding domain in the upper community registry and register their services in it. Service requesters could, then, request a service from the identified community of interest. The main objective of a Cloud Community is to manage and streamline the provision of trusted services to consumers. These services may be mapped into one or more web services to be implemented according to the end users’ requirement or the business process specification. In order to achieve a composed service through synthesized set of heterogeneous services from different service providers. In [30], the authors developed an ontological agent framework based on semantic specification through OWL-S to establish an ontological agent for automating Web service composition.

Semantic Cloud Community Framework for Services Provision

227

The semantic description serves to define the planning domain for the agent to automate the composition procedure. Therefore, ontological agent extract a process model from OWL-S, thereafter transform it to a formal model “Petri Nets” to solve issues deadlock and liveness. In addition, AND-OR graph was applied to represent the dependences among the composed services to select between alternatives based on Quality of Service record. 5.2

Services Provided by the Cloud Community

A Cloud Community mediates between service providers and service consumers. It caters interface of services to be implemented by services providers. Cloud communities would be capable for unifying services standards and specifications, domain’s concepts, business process’s concepts, as well as, annotation methods for services. The vision of cloud communities’ exposure is the ability of ranking services according to feedback of end users and quality measures. The best practices and standards of business processes in a given domain would, not only, be induced from expertise of acquiring & providing services, but, it would also, be broadcasted among the cloud communities. Further, the advantage of semantic description of services will make the Cloud Community amenable for automation. 5.3

Cloud Community Ontology for Web Service

Semantic Web technology provides scalable methods and tools for machine-accessible representation and manipulation of knowledge. Semantic Web Services (SWS)5 make use of Semantic Web technology to support the automation of web services discovery, substitution, composition, and execution. A key for creating a framework for dynamic service composition is semantically rep-resenting the functional and non-functional capabilities of services [31]. Figure 3 illustrates service ontology. Nodes represent the ontology’s concepts. Broken line circle refers to WSDL concepts (e.g., name, binding, input). Solid line circle refers to ex-tended features introduced to augment WSDL descriptions with semantic capabilities. Edges represent relationships between the concepts. Web service ontology is to supports semantic interoperability among services in specific community. 5.4

Cloud Community Architecture Framework

Figure 4 illustrates an abstraction for the proposed framework. It has several layers including: handler layer, security and policy layer, Agent layer, management communication layer and the core of community layer. When a service consumer demands a service from a community, the request handler receives and transmits it to the security and policy layer to be checked. Security and policy layer represent a gate for the community core. The Agent layer is a container of a collection of agents who are co-operating together to fulfill a given request. The request may be fulfilled through the

5

http://www.w3.org/Submission/OWL-S/.

228

T.M. Al-Mashat et al.

Fig. 3. Service ontology

composition of services that are, normally, provided by the community. Communication Management Infrastructure is a layer for controlling and managing interaction between parties of the community. Business process template repository is a container for business process workflow. A workflow is, usually, selected according to the standard and best practice. Semantic business process is a standard definition of concepts, utilized to express business process models (a meta-model). Meta-models define concepts, relationships, and semantics. Service interface repository is a collection of interfaces for services. The interfaces are, normally, provided by the Cloud Community provider and implemented by a service provider. Service registry represents a collection of services, whereas, service description is a repository for its semantic. Domain description repository is a collection of ontologies for both, community domain and its sub domains. QoS repository is a reference for web service quality. Each service in the repository is mapped into quality repository to represent a record of measured qualities for the prescribed criteria.

6 Interoperability Among Cloud Communities Upper Cloud Community (Meta Cloud Community) facilitates interoperability between different communities. It provides global ontology to support cloud communities of services. Upper ontology is an ontology which describes the concepts with synonyms in different knowledge domains. The most important role of the upper ontology is to support a broad semantic interoperability between large numbers of diverse communities. The upper ontology provides the semantic to recognize all the concepts in the communities accessible “under” the upper Cloud Community. Upper Cloud Community is a global community that orchestrates semantics between different cloud communities.

Semantic Cloud Community Framework for Services Provision

229

Fig. 4. Cloud Community architecture framework

Upper Cloud Community is a catalog for a collection of cloud communities with diverse domains, as shown in Fig. 5. In this figure, the semantics of each of the three cloud communities A, B and C are recognized by the upper could community through an upper ontology. Figure 6 expands the ontology illustrated in Fig. 3 to add the community concept. This expansion should facilitate service discovery and composition within different cloud communities for different domains. Figure 6 demonstrates an upper ontology for all cloud communities of services. Multiple ontologies of cloud communities will co-exist to build a global ontology of upper Cloud Community. This upper ontology could be a standard form for describing communities and services beneath the upper Cloud Community which facilitates interoperability between varied cloud communities. In addition, upper ontology will be as catalog for services to accelerate service discovery and composition.

Fig. 5. Upper Cloud Community

Fig. 6. Upper community ontology

230

T.M. Al-Mashat et al.

7 Conclusion This paper proposed a Cloud Community framework architecture that provides a meaningful organization and description of services interoperability to cater higher level of services. Cloud Community is introduced to cluster services based on their domain of interest. Upper Community Ontology was developed to serve as a catalog for describing communities and services. The ontology based Cloud Community framework lays the foundation for the automatic selection and composition of semantic services. The authors believe that, in the long run, exposure of the established concept of upper Cloud Community will enforce the integration between different domain’s concepts, enrich the service trading and induce new standards and methodologies. The introduced upper ontology, would contribute to the advantages of the upper community. More research efforts are required, however, to capture the semantics of the different communities into a global Upper ontology.

References 1. Ruehl, S., Andelfinger, U.: Applying software product lines to create customizable software-as-a-service applications. In: Proceedings of the 15th International Software Product Line Conference, vol. 2, August 2011 2. Liu, F., Tong, J., Mao, J., Bohn, R., Messina, J., Badger, L., Leaf, D.: NIST cloud computing reference architecture. NIST Spec. Publ. 500(2011), 292 (2011) 3. McKendrick, J.: Does platform as a service have interoperability issues? (2010). http://www. zdnet.com/blog/service-oriented/does-platform-as-a-service-have-nteroperability-issues/ 4890 4. Ouardi, Abdesselam, Sekkaki, Abderrahim, Mammass, Driss: Towards energy efficiency in an integrated health care infrastructure based on the cloud. J. Theor. Appl. Inf. Technol. 95 (5), 1200 (2017) 5. Cohen, R.: Examining cloud compatibility, portability and interoperability. In: ElasticVapor: Life in the Cloud (2009). http://www.elasticvapor.com/2009/02/examining-cloudcompati bility.html 6. Sheth, A., Ranabahu, A.: Semantic modeling for cloud computing, part I & II. IEEE Internet Comput. Mag. 14, 81–83 (2010) 7. Bozman, J., Chen, G.: Cloud computing: the need for portability and interoperability. IDC Analyze Future, 1–6 (2010) 8. Martin-Flatin, J.P.: Challenges in cloud management. IEEE Cloud Comput. 1, 66–70 (2014) 9. Nogueira, E., Moreira, A., Lucrédio, D., et al.: Issues on developing interoperable cloud applications: definitions, concepts, approaches, requirements, characteristics and evaluation models. J. Softw. Eng. Res. Dev. 4, 7 (2016). doi:10.1186/s40411-016-0033-6 10. Kostoska, M., et al.: Cloud Computing Interoperability Approaches-Possibilities and Challenges. BCI (Local) (2012) 11. Toosi, A.N., Calheiros, R.N., Buyya, R.: Interconnected cloud computing environments: challenges, taxonomy, and survey. ACM Comput. Surv. (CSUR) 47(1), 7 (2014) 12. Jula, Amin, Sundararajan, Elankovan, Othman, Zalinda: Cloud computing service composition: a systematic literature review. Expert Syst. Appl. 41(8), 3809–3824 (2014)

Semantic Cloud Community Framework for Services Provision

231

13. Mansour, I., et al.: Interoperability in the heterogeneous cloud environment: a survey of recent user-centric approaches. In: Proceedings of the International Conference on Internet of things and Cloud Computing. ACM (2016) 14. Geetha, D.V., Hayat, R.M., Thamizharasan, M.: A survey on needs and issues of cloud broker for cloud environment. Int. J. Dev. Res. 4(5), 1035–1040 (2014) 15. Pritzker, P., Gallagher, P.: NIST Cloud Computing Standards Roadmap. NIST Special Publication, 500-291 (2013) 16. Moscato, F., Aversa, R., Martino, B.D., Fortis, T.-F., Munteanu, V.: An analysis of mOSAIC ontology for cloud resources annotation. In: Proceedings of Federated Conference on Computer Science and Information Systems, Szczecin, pp. 973–980 (2011) 17. Andročec, D., Vrček, N.: Ontologies for platform as service APIs interoperability. Cybern. Inf. Technol. 16(4), 29–44 (2016) 18. Di Martino, B., et al.: Towards an ontology-based intercloud resource catalogue–the IEEE P2302 intercloud approach for a semantic resource exchange. In: 2015 IEEE International Conference on Cloud Engineering (IC2E), IEEE (2015) 19. Di Martino, B., Esposito, A., Cretella, G.: Semantic representation of cloud patterns and services with automated reasoning to support cloud application portability. IEEE Trans. Cloud Comput. PP (2015). doi:10.1109/TCC.2015.2433259 20. Yongsiriwit, K., Assy, N., Gaaloul, W.: A semantic framework for configurable business process as a service in the cloud. J. Netw. Comput. Appl. 59, 168–184 (2016) 21. Wu, Z., Chu, N.: Proceedings - IEEE 10th International Conference on Services Computing, SCC 2013, pp. 176–183 (2013) 22. Srivastava, B., Jana, K.: Web service composition - current solutions and open. In: ICAPS 2003 Workshop on Planning for Web Services (2003) 23. Ma, J., Yanchun, Z., Minglu, L.: OMWSC- an ontology-based model for web services composition. In: Fifth International Conference on Quality Software (2005) 24. Curbera, F., Khalaf, R., Mukhi, N., Tai, S., Weerawarana, S.: The next step in Web Services. Commun. ACM 46(10), 29–34 (2003) 25. Gottschalk, K., IBM Team.: Web services architecture overview: the next stage of evolution for e-business. Article, IBM (2000) 26. Christensen, E., et al.: Web services description language (WSDL) 1.1. (2001). https://www. w3.org/TR/wsdl.html Accessed 30 Apr 2017 27. Sallehuddin, R., Mohamad, R.: A new framework for matching semantic web service descriptions based on OWL-S services. Int. J. Adv. Soft Comput. Appl. 8(2), 126–138 (2016) 28. Milanovic, N., Malek, M.: Current solutions for Web service composition. IEEE Internet Comput. 8(6), 51–59 (2004) 29. Marinos, A., Briscoe, G.: Community cloud computing. In: First International Conference on Cloud Computing (2009) 30. Al Mashat, T.M., El-Licy, F.A., Salah, A.I.: Automating web service composition: an ontological agent framework. Handbook of Research on Architectural Trends in Service-Driven Computing. IGI Global, pp. 330–353 (2014) 31. Pedrinaci, C., Domingue, J., Sheth. A.P.: Semantic web services. In: Handbook of Semantic Web Technologies, pp. 977–1035. Springer, Heidelberg (2011)

Detecting Twitter Users’ Opinions of Arabic Comments During Various Time Episodes via Deep Neural Network Naglaa Abdelhade1(&), Taysir Hassan A. Soliman1, and Hosny M. Ibrahim2 1

2

Information Systems Department, Faculty of Computers and Information, Assiut University, Assiut, Egypt {naglaafci,taysser.soliman}@fci.au.edu.eg Information Technology Department, Faculty of Computers and Information, Assiut University, Assiut, Egypt [email protected]

Abstract. Due to the revolution of web 2.0, the amount of opinionated data has been extremely increased, produced by online users through sharing comments, videos, pictures, reviews, news and opinions. Although Twitter is one of the most prevalent social networking, the gathered data from Twitter is highly disorganized. However, extracting useful information from tweets is considered a challenging task. Twitter has a huge number of Arabic users who mostly post and write their tweets using the Arabic language. There has been a lot of work on sentiment analysis in English texts. However, the datasets and the publications of Arabic tweets analysis are still somewhat limited. In addition, one of the main important issues is that users can change their opinions on different subjects over time. In this work, two main points are discussed. First, a deep neural network (DNN) approach (back propagation algorithm) is applied to Arabic tweets to two different domains: Egyptian stock exchange and sports’ tweets. Second, DNN is implemented to detect users’ attitude in a time period of two years for each dataset (2014 and 2015) and (2012 and 2013). The datasets are manually annotated via constructing a lexicon from the two already existing ones. When DNN performance is evaluated an average value of accuracy 90.22%, precision 90.56%, recall 90.90%, and F-measure of 90.68%, when compared to other three machine learning algorithms Naïve Bayes (NB), Decision Tree, and K-Nearest. Keywords: Arabic tweets  Back propagation algorithm  Deep neural network  Opinion mining and time episodes  Sentiment analysis

1 Introduction Social media and micro-blogging websites, such as Twitter, Facebook, LinkedIn, Google+, Instagram, and YouTube play a significant role in all aspects of life. Their available public data acquiring an API have led to assist researchers to download a large amount of data. Sentiment Analysis is the process of deciding whether a text is © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_22

Detecting Twitter Users’ Opinions of Arabic Comments During Various Time Episodes

233

positive, negative or neutral. It is also known as opinion mining. Sentiment analysis has attracted a huge number of researchers in the last decade. However, most of the current work uses the English language and somewhat few researches have been done in Arabic sentiment analysis. However, Arabic sentiment analysis has become a must because the number of Arabic tweets is tremendously increasing every year in different domains [1]: sports, economic, online advertising, politics, and communities. As a result, new research areas have been raised and Arabic sentiment analysis has become popular again. The Arabic language has its own characteristics which make it unique rather than any other language. First of all, Arabic language is very complex. Second, Arabic language is a derivational language containing many word forms and diacritics. Arabic sentiment analysis can be in various formats product reviews, forums, blogs, and more recently social media data. A number of machine learning algorithms have been developed in for Arabic tweets’ sentiment analysis. One major characteristic that has been recently tackled is the huge amount of Arabic tweets and as a result the requirement of high classifier accuracy for detecting users’ tweets positivity or negativity over time episodes. One of the recent efficient machine learning algorithms is deep learning which can be used to analyze huge amounts of data of all kinds. Deep learning can solve a broad range of complicated problems and allows computational models with multiple processing layers to extract features from raw data. In addition Deep learning discovers the hierarchical representations required by various tasks. Recently, deep learning has achieved prominent progress in many Artificial Intelligence (AI) tasks, such as image recognition, speech recognition, and natural language processing including sentiment analysis. One of the main tasks is the usage of deep learning in sentiment classification, where its architecture according to the problem it is applied to, the data size, and the data format used. However, applying deep learning to Arabic tweets of time series data is still an ongoing research. A time series is a sequence of values that occurs at regular intervals. Time series data are very essential to analyze phenomena that change over time, such as stock market analysis, sales forecasting, and economics [12]. It is important to analyze users’ opinions in different periods of time because they may change their opinions more frequent according to human nature of current topics under which situations. As a result, in the current work, Arabic tweets over time episodes are classified using deep learning at the sentence level based on the topic, having various users at different time episodes. The proposed Deep Neural Networks (DNN), composed of as many hidden layers as possible to obtain a high accuracy level of results. The remaining of the paper is organized as follows: Section two summarizes related work; Section three proposes the system architecture and discusses the implementation details. Section four describes conducted experiments and their results. Finally, Section five concludes the paper and discusses future work.

2 Related Work Sentiment analysis or opinion classification is the task of detecting users’ opinions about specific topics or products. Several previous researches has been accomplished to identify users’ opinions using machine learning algorithms, such as support vector

234

N. Abdelhade et al.

machine, naïve Bayes classifier, and J48 decision tree in different domains. These domains vary between business Arabic business reviews and FIFA comments. Users’ opinions can be divided into positive and negative reviews or multi-label classifiers of positive, neutral or negative opinions or any required labels according to the problem domain. Shoukry and Rafea [1] determine the class of the tweets either negative or positive using a supervised approach. They examined two algorithms: support vector machine and naïve Bayes. They used feature extractions are unigram and bigram, applying Twitter’s APIs to collect Arabic tweets by setting language = “Arabic”. They extracted 1000 tweets consisting of 500 positive and 500 negative tweets. Elhawary and Elfeky [2] built a system for sentiment analysis on Arabic business reviews. They utilized a similarity graph to create an Arabic lexicon. The authors manually annotated 900 negative words, 600 positive words, and 100 neutral words in order to have them as a seed for Arabic lexicon. Also, Ahmed et al. [3] applied five algorithms of supervised approach: support vector machine, naïve Bayes, Bayes Net, Maximum Entropy, J48 decision tree. They collected Arabic tweets by using Twitter filter streams, extracting 2861 tweets of 612 positive, 513 negative and 848 neutral tweets from different popular topics: technology, politics, religion, and sports, respectively. El-Halees [4] used a hybrid approach of having a lexicon and applying maximum entropy and k-nearest algorithm. This lexicon used in this case is built via translating the SentiStrength project and online dictionary from English to Arabic and familiar Arabic words. Duwairi et al. [5] used three algorithms of supervised approach, which are SVM, NB, and KNN by using RapidMiner software. For annotation process, they hired CrowdSource website that displays the tweets on users to label 25000+ tweets. Barnaghi et al. [7] examined Logistic Regression classification for classifying a positive or negative opinion on tweets. Then, a sentiment analysis is applied to look for a correlation between these extracted opinions and FIFA World Cup 2014 events. Abdulla et al. [6] developed a hybrid approach of supervised and unsupervised learning, where they built their lexicon manually by using SentiStrength website to enhance the lexicon by adding the synonyms of the word; SVM, NB, D-Tree, and KNN algorithms are applied in RapidMiner software. They collected 2000 tweets: 1000 positive and 1000 negative tweets on various topics, such as arts and politics, including opinions written in both the Jordanian dialect and Modern Standard Arabic. Recently, deep learning approaches have improved many sentiment analysis tasks, including sentiment extraction, sentiment classification of sentences or documents, and sentiment lexicon learning. Al Sallab et al. [8] proposed four deep learning models: DNN, DBN, Deep Auto Encoder (DAE), and combined DAE with DBN (RAE) for sentence level sentiment classification in Arabic language, using Linguistic Data Consortium Arabic Tree Bank dataset that splits into 944 training sentences and 236 test sentences. The input data to the first three models are based on the Bag-of-Words, with features based on ArSenL the recently developed Arabic Sentiment Lexicon in combination with other standard lexicon features. The results show great improvement of the fourth model. It outperforms all the other models by 9% in the average F1 score where no lexicon is used. Socher et al. [9] introduced Recursive Neural Tensor Network (RNTN) over a fine grained phrase level annotated corpus (Stanford Sentiment Tree Bank), which consists of 11,855 single sentences extracted from movie reviews. Their method captured the

Detecting Twitter Users’ Opinions of Arabic Comments During Various Time Episodes

235

effects of negation for different sentiment and its scope at various tree levels for both positive and negative phrases where classification is from 80% up to 85.4%. The accuracy of RNTN in predicting fine-grained sentiment labels for all phrases gives 80.7%, an enhancement of 9.7% over the bag of features baselines.

3 Proposed Methodology In this paper, we propose a classifier of Arabic tweets over time episodes. The proposed classifier consists of several phases: (1) gathering tweets, (2) pre-processing and annotating the datasets, and (3) Applying deep learning. Figure 1 shows the workflow of the proposed system. Next, we explain each component in details.

Fig. 1. Workflow of the twitter’s sentiment analysis

3.1

Gathering Tweets

Twitter provides an API that allows users to search for tweets that contain specific keywords, but there was a restriction imposed by the official Twitter API regarding the downloaded number of tweets, having only 100 tweets allowed for the automatic connection. Another restriction, limitation of time as one cannot get tweets older than seven days. Some tools give access to older tweets; however, the majority of them are commercial. In the current step, a Java source code is developed to overcome some restrictions of Twitter Official API. It used to collect Arabic tweets setting the language to Arabic, according to specific keywords such as “Football”- “‫ ”ﻛﺮﺓ ﺍﻟﻘﺪﻡ‬and “The Egyptian stock exchange”-“‫ ”ﺍﻟﺒﻮﺭﺻﺔ ﺍﻟﻤﺼﺮﻳﺔ‬and a user-specific time period. This period defines the start and end posting date of tweets. The downloaded tweets are stored in excel file that contains tweet text, user name, date, retweets number, and favorite number, as described in Table 1.

236

N. Abdelhade et al. Table 1. Structure of download tweet

After collecting tweets, we apply preprocessing step as explained in more details in the next section. 3.2

Preprocessing

Data preparation is a vital phase of any data analysis used to clean text by removing any data, which are assumed as insignificant to the analysis, such as usernames, pictures, hashtags, URLs and all non-Arabic words. The following pre-processing steps are a hybrid approach of previously proposed work by other researchers, such as [3, 6, 16] but in the current work a hybrid approach is developed to cover most of the existing cases in the Arabic sentiment analysis. These steps are as follows; Examples of preprocessing are shown in Table 2: • Tokenization tokens are separated by spaces. • Removing non-Arabic letters, digits, single Arabic letters, special symbols ($, %, &, |, _, -, …). • Remove any punctuation mark from the tweet such as (., : “”; ‘). • Removing username, picture, and URL from the tweet. • Removing repeated tweets which appear more than one. • Remove any of these prefix (‫ ﻟ ﻞ‬، ‫ ﻭ ﻟ ﻞ‬، ‫ ﻭ ﻛ ﺎ ﻝ‬، ‫ ﻛ ﺎ ﻝ‬، ‫ ﻭﺗﺎﻝ‬، ‫ ﺗ ﺎ ﻝ‬، ‫ﻭﺍﻝ‬، ‫ )ﺍ ﻝ‬from the word. • Removing Stop Words are a collection of words that do not change the meaning of the text, such as prepositions. A list of 179 Arabic stop words is used. • Replace some of the characters that appear more than one time by a single one (‫ ﺍﻧﻬﻴﺎﺍﺍﺍﺍﺍﺍﺍﺍﺍﺍﺍﺍﺍﺍﺍﺍﺍﺭ‬to ‫)ﺍﻧﻬﻴﺎﺭ‬ Table 2. Example of datasets

Detecting Twitter Users’ Opinions of Arabic Comments During Various Time Episodes

237

• Normalization is the process of replacing the same letters that are used correspondingly by one of them and removing none letters from the words; the normalization conditions are as follows: [3] – Replace “ ”, “ ”, and “‫ ”ﺁ‬with bare alif “‫ ”ﺍ‬in spite of position in the word. – Replace last “‫ ”ﻯ‬with “‫”ﻱ‬. – Replace last “‫ ”ﺓ‬with “‫”ﻩ‬. 3.3

Annotating Tweets

In this phase, the data are selected and annotated as positive and negative sentiment, using the semantic orientation approach due to its various challenges and high potential. On the other hand, there is, unfortunately, no publically available Tweet corpus for evaluating target dependent Twitter Arabic text sentiment classification [3]. A sentiment lexicon is created with each word having its semantic intensity as a number indicating its class. Then, this lexicon is used to extract all sentiment words from the tweet and sum up their polarities scores to represent the sentiment of the whole tweet. We build an Arabic lexicon from a seed list of 4974 words from [10]. To improve the performance of the Arabic lexicon tool, several additions are applied to the lexicon. For instance, a list of 316 words is added from [11]. Finally, The remaining words are manually annotated and added to the lexicon. Both positive and negative words are listed together with +1 and −1 weights for positive and negative polarities, respectively. The resulting lexicon contains 15840 unique words described in Table 3. Table 3. Statistics on lexicon Positive Negative Total words 9595 6245

3.4

Deep Learning Model for Arabic Tweets Sentiment Classification in Time Episodes

In this phase, each tweet will be classified as positive and negative by the DNN classifier. The experiments are conducted using three famous classifiers: Naïve Bayes (NB), Decision Tree (D-Tree), and K-Nearest Neighbor (KNN) to compare them with the Deep Neural Network to test the performance of DNN. 3.4.1 Naive Bayes The Naïve Bayes classifier is a machine learning algorithm, a simple probabilistic model, which relies on the assumption of feature independent to classify input data. Despite its simplicity, the algorithm is commonly used for text classification in many opinion mining applications [15]. Much of its popularity is due to its extremely simple

238

N. Abdelhade et al.

implementation, low computational cost and its relatively high accuracy. The algorithm itself is derived from Bayes theorem, which is declared as follows: PðHjXÞ ¼ PðXjHÞPðHÞ=PðXÞ

ð1Þ

Where H and X are events and P(X) 6¼ 0. It makes the assumption that words are generated independently of word position. 3.4.2 Decision Tree A decision tree is an example of the most widely used machine learning algorithms much of its popularity is because it can be adapted to almost any type of data. It is a supervised machine learning algorithm that divides its training data into smaller parts to extract patterns which used for classification. The knowledge is then presented in the form of a tree that can be easily understood. The structure of a decision tree composes of a root node which describes the dataset, decision nodes, which perform the computation and leaf nodes which perform the classification. In the training phase, the algorithm learns what decisions have to be made to split the labeled training data into its classes. 3.4.3 K-Nearest Neighbor A non-parametric technique used for classification and regression in both processes, the input, consists of the k training examples in the feature space. The output is a class membership. An example is classified by a majority vote of its neighbors, with the case being allocated to the class most common between its k nearest neighbors. If k = 1, then the object is assigned to the class of that single nearest neighbor. The similarity score of each nearest neighbor text to the test text is used as the weight of the classes in the neighbor’s document. The weighted sum in KNN classification can be written as follows [13]: scoreðd; sÞ ¼

X

simðd; dj Þdðdj ; sÞ dj 2 knnðdÞ

ð2Þ

Where knn(d) is the set of k nearest neighbors of document d. If dj belongs to sentiment s, d(dj,s) equal to 1, or otherwise 0. Document d belongs to the sentiment s that has the highest score. 3.4.4 Deep Learning Deep learning has the edge over the traditional machine learning algorithms, like SVM and Naive Bayes, for sentiment analysis because it overcomes the challenges faced by sentiment analysis and handles the diversities involved. Deep learning models promise one thing - given an enough amount of data and of training time. They can achieve the task of sentiment classification on any text genre with minimal constraints and no task-specific or data-specific manual feature engineering.

Detecting Twitter Users’ Opinions of Arabic Comments During Various Time Episodes

239

DNN is an artificial neural network that is composed of multiple hidden layers between the input and output layers. For the Deep Learning Architecture, the number of neurons in each layer is selected to yield the best accuracy for obtaining data sets. For the examined data, the number of neurons was 100 per layer gives best accuracy. The depth of the deep learning network is selected by iteratively incrementing the number of layers one at a time while assessing the accuracy at every increment. The depth of eight hidden layers was found to give the best accuracy with the selected data set. The activation function of each hidden layer is taken as hyperbolic tangent activation tanh. A decision softmax layer composed of two neurons was then added on top of the eight network layers. It determines the probability distribution over the labels [14]:   Pðy ¼ jjx; s; bÞ ¼ softmaxj xT w þ b ex ¼ PK

T

k¼1

wj

þ bj

ex T w k

þ bk

;

ð3Þ

where wk and bk are the weight vector and bias of the k-th class, wj and bj are the weight vector and bias of the j-th class, and xT w denotes the inner product of x and w. 3.5

Classifier Evaluation

The DL classifiers are tested using 10-fold cross validation method. There are various methods to determine effectiveness; however, accuracy, precision, recall, and F-measure are the most common. Accuracy measures the percentage of the tweets that the classifier has labeled correctly. Furthermore, the precision and recall are calculated. Precision is the percentage of predicted tweets class that is correctly classified. The recall is the percentage of the total tweets for the given class that are correctly classified [4]. The precision answers the question, “If a tweet is classified as positive, what is the probability that this prediction is correct?” The recall answers the question, “If a tweet is going to positive, what is the probability that the model will detect it. F- Measure (F-score) to measure the accuracy of the test as it considers both the precision and the recall of the test in computing the score. Their mathematical equations are listed below. Accuracy ¼ ðTP þ TNÞ=ðTP þ TN þ FP þ FNÞ

ð4Þ

Precision ¼ TP=ðTP þ FPÞ

ð5Þ

Recall ¼ TP=ðTP þ FNÞ

ð6Þ

F  Measure ¼ ð2:Precision:RecallÞ=ðPrecision þ RecallÞ

ð7Þ

Where TP, FP, TN, and FN are true positive, false positive, true negative, and false negative, respectively [4].

240

N. Abdelhade et al.

4 Experimental Results and Analysis To test the deep learning approach, datasets are collected from Twitter about two different fields the economic field by setting the keyword search to “The Egyptian stock exchange”-“‫”ﺍﻟﺒﻮﺭﺻﺔ ﺍﻟﻤﺼﺮﻳﺔ‬, and sports field by setting the keyword search to “football”-“‫ ”ﻛﺮﺓ ﺍﻟﻘﺪﻡ‬for two different time periods for two years at (2014 and 2015), and (2012 and 2013), as will be described in details. The dataset about the Egyptian stock exchange consists of 8635 tweets: 2855 positive and 5780 negative. Datasets for the time period from 2014 and 2015 contain tweets about 176 users. The second dataset consists of 7440 tweets: 4797 positive and 2643 negative. The dataset for the time period from 2012 and 2013 contain tweets about 203 users. In addition, the dataset about the football consists of 3139 tweets: 407 positive and 2732 negative. Datasets for the time period from 2014 and 2015 contain tweets about 130 users. The second dataset consists of 4334 tweets: 415 positive and 3919 negative. The dataset for the time period from 2012 and 2013 contain tweets about 184 users. The dataset is sorted in descending order according to the number of tweets for each user and remove all users that have tweets less than a particular threshold (e.g. 20 tweets). Figure 2 shows the relationship between every month in two years (2014 and 2015) and user interaction for the Egyptian stock exchange dataset.

Fig. 2. Relation between time and user

We notice that seven months have the higher interaction from users than other those are (December, August, April, March) from 2015 and (December, August, April) from 2014. Figure 3 describes the relationship between months and users’ view.

Detecting Twitter Users’ Opinions of Arabic Comments During Various Time Episodes

241

Fig. 3. Relation between months and users’ opinion

Table 4 summarizes the performance of Deep Learning model and the three machine learning classifiers on the dataset. The experiments show that the deep learning outperforms other three machine learning algorithms. Table 4. Different measures of four classifiers Naïve Bayes Accuracy 64.17% Precision 47.15% Recall 69.07% F-Measure 56.04%

Decision Tree KNN Deep Learning 75.72% 62.84% 87.03% 93.32% 42.69% 82.66% 28.62% 36.29% 77.30% 43.80% 39.23% 79.89%

Fig. 4. Relation between time and user

242

N. Abdelhade et al.

Figure 4 shows the relationship between every month in two years (2012 and 2013) and user interaction for the Egyptian stock exchange dataset. We notice that six months have the higher interaction from users than other those are (August, July, April, March) from 2013 and (July, March) from 2012. Figure 5 describes the relationship between months and users’ view.

Fig. 5. Relation between months and users’ opinion

Table 5 summarizes the performance of Deep Learning model and the three machine learning classifiers on the dataset. The experiments show that the deep learning outperforms other three machine learning algorithms. Table 5. Different measures of four classifiers Naïve Bayes Accuracy 60.55% Precision 80.48% Recall 51.23% F-Measure 62.60%

Decision Tree KNN Deep Learning 73.92% 73.21% 88.60% 71.77% 78.65% 89.29% 98.19% 80.21% 93.60% 82.92% 79.42% 91.39%

Figure 6 shows the relationship between every month in two years (2014 and 2015) and user interaction for football dataset.

Detecting Twitter Users’ Opinions of Arabic Comments During Various Time Episodes

243

Fig. 6. Relation between time and user

We notice that five months have the higher interaction from users than other those are (April) from 2015 and (June, May, April, and March) from 2014. Figure 7 describes the relationship between months and users’ view.

Fig. 7. Relation between months and users’ opinion

Table 6 summarizes the performance of Deep Learning model and the three machine learning classifiers on the dataset. The experiments show that the deep learning outperforms other three machine learning algorithms. Table 6. Different measures of four classifiers Accuracy Precision Recall F-Measure

Naïve Bayes 78.17% 89.27% 82.61% 85.81%

Decision Tree KNN Deep Learning 90.79% 74.32% 91.13% 92.55% 80.04% 95.18% 96.21% 90.36% 94.31% 94.34% 84.88% 94.74%

244

N. Abdelhade et al.

Figure 8 shows the relationship between every month in two years (2012 and 2013) and user interaction for football dataset.

Fig. 8. Relation between time and user

We notice that five months have the higher interaction from users than other those are (September, July, and February) from 2013 and (December, November) from 2012. Figure 9 describes the relationship between months and users’ view.

Fig. 9. Relation between months and users’ opinion

Table 7 summarizes the performance of Deep Learning model and the three machine learning classifiers on the dataset. The experiments show that the deep learning outperforms other three machine learning algorithms. Table 7. Different measures of four classifiers Naïve Bayes Accuracy 81.24% Precision 95.67% Recall 82.59% F-Measure 88.65%

Decision Tree KNN Deep Learning 91.28% 85.54% 94.12% 93.15% 90.30% 95.13% 95.29% 93.77% 98.40% 94.20% 92.00% 96.73%

Detecting Twitter Users’ Opinions of Arabic Comments During Various Time Episodes

245

5 Conclusion and Future Work In this paper, a deep learning approach is proposed for the users’ opinion classification problem with Arabic tweets collecting about two different fields first is about “The Egyptian stock exchange”-“‫ ”ﻟﺒﻮﺭﺻﺔ ﺍﻟﻤﺼﺮﻳﺔ‬and second about “football”- “‫”ﻛﺮﺓ ﺍﻟﻘﺪﻡ‬ during two distinct time period each one consists of two years (2014 and 2015) and (2012 and 2013). We are preprocessing tweets, then annotating to a positive and negative opinion by creating a lexicon involve two already lexicon and manually words collecting from tweets and deep neural network with applied with several experiments to obtain higher accuracy. We found deep learning models gave better results compared to Naïve Bayes (NB), Decision Tree, and K-Nearest with eight hidden layers with 100 neurons in each hidden layer. Future work will include: (1) further modifications and experimentation on other datasets will be carried out, and (2) apply another deep learning models such as conventional deep neural network and recurrent deep neural network.

References 1. Shoukry, A., Rafea, A.: Sentence-level Arabic sentiment analysis. In: 2012 International Conference on Collaboration Technologies and Systems (CTS), pp. 546–550. IEEE, May 2012 2. Elhawary, M., Elfeky, M.: Mining Arabic business reviews. In: Proceedings of International Conference on Data Mining Workshops (ICDMW), pp. 1108–1113. IEEE, (2010) 3. Ahmed, S., Pasquier, M., Qadah, G.: Key issues in conducting sentiment analysis on Arabic social media text. In: 2013 9th International Conference on Innovations in Information Technology (IIT), pp. 72–77. IEEE, March 2013 4. El-Halees, A.: Arabic opinion mining using combined classification approach. In: Proceedings of the International Arab Conference on Information Technology, ACIT (2011) 5. Duwairi, R.M., Marji, R., Sha’ban, N., Rushaidat, S.: Sentiment analysis in Arabic tweets. In: 2014 5th International Conference on Information and Communication Systems (ICICS), pp. 1–6. IEEE, April 2014 6. Abdulla, N.A., Ahmed, N.A., Shehab, M.A., Al-Ayyoub, M.: Arabic sentiment analysis: Lexicon-based and corpus-based. In: 2013 IEEE Jordan Conference on Applied Electrical Engineering and Computing Technologies (AEECT), pp. 1–6. IEEE, December 2013 7. Barnaghi, P., Ghaffari, P., Breslin, J.G.: Text analysis and sentiment polarity on FIFA world cup 2014 tweets. In: Proceedings of Conference ACM SIGKDD (2015) 8. Al Sallab, A.A., Baly, R., Badaro, G., Hajj, H., El Hajj, W., Shaban, K.B.: Deep learning models for sentiment analysis in Arabic. In: Workshop 2015 on ANLP, pp. 9–17, July 2015 9. Socher, R., Perelygin, A., Wu, J.Y., Chuang, J., Manning, C.D., Ng, A.Y., Potts, C.: Recursive deep models for semantic compositionality over a sentiment treebank. In: Proceedings of the Conference on Empirical Methods in Natural Language Processing (EMNLP), pp. 1631–1642, October 2013 10. El-Beltagy, S.R.: NileULex: a phrase and word level sentiment lexicon for egyptian and modern standard Arabic. In: Proceedings of LREC 2016, pp. 2900–2905 (2016) 11. ElSahar, H., El-Beltagy, S.R.: A fully automated approach for Arabic slang lexicon extraction from microblogs. In: International Conference on Intelligent Text Processing and Computational Linguistics, pp. 79–91. Springer, Heidelberg, April 2014

246

N. Abdelhade et al.

12. Bollen, J., Pepe, A., Mao, H.: Modeling public mood and emotion: Twitter sentiment and socioeconomic phenomena. In: ICWSM11, Barcelona, Spain, pp. 450–453 (2011) 13. Tan, S., Zhang, J.: An empirical study of sentiment analysis for Chinese documents. Expert Syst. Appl. 34(4), 2622–2629 (2008) 14. Severyn, A., Moschitti, A.: Twitter sentiment analysis with deep convolutional neural networks. In: Proceedings of the 38th International ACM SIGIR Conference on Research and Development in Information Retrieval, pp. 959–962. ACM, August, 2015 15. Pak, A., Paroubek, P.: Twitter as a corpus for sentiment analysis and opinion mining. In: LREc, Vol. 10, pp. 1320–13262010) ) 16. Al-Kabi, M.N., Gigieh, A.H., Alsmadi, I.M., Wahsheh, H.A., Haidar, M.M.: Opinion mining and analysis for Arabic language. Int. J. Adv. Comput. Sci. Appl. (IJACSA) 5(5), 181–195 (2014). SAI Publisher

EEG-Based Emotion Recognition Using a Wrapper-Based Feature Selection Method Mohammed A. AbdelAal(B) , Assem A. Alsawy, and Hesham A. Hefny Institute of Statistical Studies and Research (ISSR), Cairo University, Giza, Egypt [email protected], asem [email protected], [email protected]

Abstract. Emotions are important part of the daily communication process between people. The need for embed emotion recognition in the human-computer interaction systems became an important issue recently. Researchers addressed the use of internal physiological signals for emotion observation. Electroencephalography (EEG) has a great attention recently and it is now the most used method for observing brain activities. This paper presents a method for EEG-based emotion recognition. Addressing the high dimensionality of the EEG features, recursive feature elimination (RFE) as a wrapper-based feature selection method is used to select the most important features. Then, many classifiers are evaluated to classify emotions using the selected features. The presented method has been tested on a public dataset, and the results demonstrate the robustness of this method and its superiority compared to other studies on the same dataset. Keywords: Affective computing · Emotion recognition · Electroencephalography (EEG) · Feature selection · Recursive Feature Elimination (RFE)

1

Introduction

Emotions are playing an important role in the communication process between people. My talks can have a different meaning depending on the conveyed emotions with these talks. Despite of its importance, most of the human-computer interaction (HCI) systems lack the ability to recognize and interpret human emotions. The interest in filling this gap has grown so much recently. Affective computing is a research field interested in studying and designing systems with the ability to recognize, interpret and simulate human emotions [20]. Observing emotions can be done with many non-verbal ways, e.g. facial expressions and voice intonation. It also can be done with internal physiological signals, e.g. heart rate, respiration, galvanic skin response (GSR), electroencephalography (EEG), magnetoencephalography (MEG) and functional magnetic resonance imaging (fMRI). The use of physiological signals are considered more reliable than other ways specially the signals of central nervous system c Springer International Publishing AG 2018  A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3 23

248

M.A. AbdelAal et al.

(CNS), such as EEG, MEG and fMRI [19]. Compared to other physiological signals, EEG has a great attention recently and it is now the most used method for observing brain activities [18]. In this paper, a method for EEG-based emotion recognition is presented, where spectral power, oscillation and Shannon entropy features are extracted. Then, recursive feature elimination (RFE) as a wrapper-based feature selection method is used to select the most important features. Finally, many classifiers are evaluated to classify emotions using the selected features. The presented method was tested on a public dataset, DEAP, for emotion analysis. This paper is organized as follows. Section 2 gives a background knowledge. A brief explanation of the used dataset with this work is given in Sect. 3 while Sect. 4 discusses the related work. Section 5 explain the used methodology in this paper. Section 6 gives and discusses the results. Finally, the conclusion is given in Sect. 7.

2

Background

The following subsections give brief explanations of emotion representation and EEG. 2.1

Emotion Representation

Emotion representation is an important issue in this research area. Many models are defined for emotion representation. These models can be categorized into two approaches. The first approach is to use discrete categories for emotion representation, such as anger, fear and happiness. This approach is close to common sense, but its main limitation is the lack of a global agreement on what categories have to be used [23] in addition to the difficulties of translating this categories between different cultures [25]. In the second approach, emotion representation are done through a number of scales or dimensions in a multi-dimensions space. Each scale is used to express one aspect of human emotions, and a common sense emotion can be represented as a point in that multi-dimensions space [23]. Each scale can be considered as a separated problem which can be a regression problem or, by splitting it into a number of levels, a classification problem. The most used model in this approach is designed by Russell [21] where two scales are used for emotion representation. The first scale is called valence and ranged from unpleasant to pleasant, while the second is called arousal and ranged from inactive to active. A third scale can also be used with this model [17,22], it called dominance and ranged from submissive to dominant. 2.2

Electroencephalography (EEG)

EEG is a method to measure the electrical activity of the brain using a set of electrodes, channels, placed on the scalp [3]. The placement of these electrodes is

EEG-Based Emotion Recognition

249

defined by a standard system called the international 10–20 system, which introduced by the American Electroencephalographic Society [14], and each electrode has a name that identifies it from other electrodes. Figure 1 shows the electrodes placement on the scalp using 10–20 system, with only 32 electrodes as in the used dataset.

Fig. 1. International 10–20 system with 32 channels (source: [2] p. 38)

Hoagland et al. [11] are the first to notice a relationship between emotions and EEG on one of their patients. A further investigation study [12] was made on a group of normal people and patients with depression or schizophrenia. The results confirmed that relationship, and no significant difference between normal people and patients has been noticed. Feature Extraction. EEG comprises a set of rhythms which are related to a biological phenomena. This rhythms may be categorized according to their frequency band. Classical frequency bands are delta (0–4 Hz), theta (4–8 Hz), alpha (8–12 Hz), beta (12–30 Hz) and gamma (30+ Hz) [18]. After decomposing EEG signals into these frequency bands, the EEG signals are mapped into feature vectors which are more suitable for the classification step. Figure 2 illustrates the process of EEG signals decomposition and feature extraction. From Fig. 1, the one can notice that each electrode on left hemisphere have odd numbers and there is identical opposite one on the right hemisphere with even numbers. The first study to compare the left and right hemispheres in context of emotional state is Harman and Ray [10]. A significant difference between

250

M.A. AbdelAal et al.

Fig. 2. Each EEG channel is decomposed into sub-frequency bands. Then, various features are calculated.

both hemispheres was found, so another aspect of feature extraction is to measure the difference between left and right hemisphere across all symmetrical pairs of electrodes. Feature Selection. Extracting one kind of features from EEG will result in a hug number of features. For example, extracting the spectral power only will result in 230 features (32 electrodes × 5 rhythms + 14 symmetrical pairs of electrodes × 5 rhythms). Extracting more kinds of features will multiply this number. This hug number of features will affect the complexity of classification step. Not only the computational costs will increase but also classification performance may be decreased [8,13]. In that case, selecting the most relevant features became a mandatory step. Feature selection can be done by a filtering methods, where a subset of features are selected independently of the learning method, or by a wrapper methods, where a subset of features are selected based on its usefulness to the learning method [8]. Recursive Feature Elimination (RFE). RFE is a wrapper based feature selection method. First, it starts with a set of all the features and a learning method is trained on it. Then, each feature is ranked based on its importance to the learning method. Finally, one or more features with the lowest rank are eliminated. This procedure is repeated recursively on the remaining features until the desired number of features is reached [9]. According to Guyon et al. [9] RFE is much more robust to overfitting than other feature selection methods.

3

Dataset

One of the important issues in this research area is collecting enough data for training and testing the model. Kolestra et al. [15] provided a relatively large

EEG-Based Emotion Recognition

251

dataset for emotion analysis called DEAP dataset (a Database for Emotion Analysis using Physiological signals). In this dataset, the EEG, GSR, blood volume pressure, respiration amplitude, skin temperature, electrocardiogram (ECG), electromyogram (EMG) and electrooculogram (EOG) for 32 participants were recorded as each participant watched 40 one-minute long excerpts of music videos. In addition to this physiological signals, the face video of 22 participants was recorded by a camera. A total number of 1280 trials were provided for studying. After each trial, the participant was asked to set his levels of valence, arousal, dominance and liking. The level of each scale can be set between 1 and 9. DEAP dataset authors provided a preprocessed version of physiological signals in addition to raw signals. EEG signals were down-sampled to 128 Hz, EOG artifacts were removed and noise was reduced by applying a bandpass frequency filter (4–45 Hz). Then, data was averaged to a common reference. The preprocessed version is well-suited to quickly test machine learning techniques without the hassle of preprocessing [1], so in this study the preprocessed version of the dataset is used.

4

Related Work

In this paper, a binary classification is performed on valence, arousal, dominance and liking scales where each scale is mapped into 2 classes, low (1–4.5) and high (5–9). Many studies for EEG-based emotion recognition have been made. Only studies on DEAP dataset and with the same binary classification problems can be compared with the presented study. Few of these studies are briefly explained below. Koelstra et al. [15], authors of DEAP dataset, performed single trial classification on each participant separately using spectral power features, Fisher’s score for feature selection and Gaussian na¨ıve Bayes for classification. The reported accuracies for valence, arousal and liking are 57.60%, 62.00% and 55.40% while F1-scores are 56.30%, 58.30% and 50.20% respectively. Fuzzy based classifier has been tested by Matiko et al. [16] to estimate the valence level. Fisher’s discrimination analysis was used for feature selection where spectral power and oscillation were the most selected features comparing to others. The proposed system obtained accuracy of 62.62%. Daimi and Saha [6] used dual-tree Complex Wavelet Packet Transform (DTCWPT) for extracting energy features. Most important features were selected by singular value decomposition (SVD), QR factorization with column pivoting and F-Ratio based feature selection method. Support vector machine (SVM) was used for classification on each participant separately. For valence, arousal, dominance and liking scales, the reported accuracies are 65.30%, 66.90%, 69.10% and 71.20% while F1-scores are 55.00%, 57.00%, 55.20% and 50.90% respectively. Chen et al. [5] extracted a various types of features. Spearman correlation and an analysis of variance (ANOVA) were applied to select the most relevant

252

M.A. AbdelAal et al.

features for each gender. C4.5 decision tree, SVM, Multilayer Perceptron (MLP) and k-Nearest Neighbors (k-NN) were used for classification. C4.5 outperformed other classifiers with accuracies of 67.89% and 69.09% for valence and arousal respectively and F1-scores of 67.83% and 68.96%. Gao and Wang [7] used principle component analysis (PCA) for dimension reduction of spectral power features and hierarchical Bayesian network for classification. The obtained accuracies were 58.00% and 58.40% while F1-scores were 55.20% and 48.80% for valence and arousal respectively.

5

Methodology

The following subsections explain the used methodology for EEG-based emotion recognition. 5.1

Feature Extraction

A finite impulse response (FIR) with hamming window was used to separate each EEG electrode signal into the 5 major frequency bands. Next, the EEG signals are mapped into feature vectors. The following features were extracted in this study using MATLAB (R2015b): 1. The logarithms of the spectral power using Welch’s method and its difference between all symmetrical pairs of electrodes. 2. The ratio of the spectral power of beta-to-theta, beta-to-alpha and alpha-totheta bands. 3. Oscillation feature [16] and its difference between all symmetrical pairs of electrodes. 4. Shannon entropy [24] and its difference between all symmetrical pairs of electrodes. The total number of extracted features was 786. 5.2

Feature Selection

SVM with a linear kernel [4] was used as a learning method for RFE where features are ranked based on its weights in the coefficient matrix. Only one feature is eliminated in each iteration of RFE until 25% of the total number of features is remains (786 × 25% = 196). The used RFE algorithm is implemented by scikit-learn toolkit.1

1

http://scikit-learn.org/.

EEG-Based Emotion Recognition

5.3

253

Classification

Using SVM-RFE, the performance of SVM is expected to be enhanced. In addition to SVM, other popular classifiers have been compared. The evaluated classifiers in this paper are: SVM with radial basis function (RBF) kernel, SVM with a linear kernel, linear discriminant analysis (LDA), k-NN, Gaussian na¨ıve Bayes, MLP and Decision Tree. All classifiers are implemented by scikit-learn toolkit (See Footnote 1). To evaluate the performance of different classifiers, a 10-fold cross-validation schema was used and both accuracy and F1-score, which take class balance into account, were calculated. The process of evaluating each classifier was repeated 10 times and the means of accuracy and F1-score were reported.

6

Results and Discussion

Table 1 shows the accuracy and F1-score for each classifier and each emotional scale. As expected, linear SVM outperformed other classifiers where it achieved accuracies of 76.84%, 77.66%, 79.99% and 79.45% for valence, arousal, dominance and liking respectively. LDA also as a linear classifier achieved great results (accuracies of 74.14%, 74.10%, 76.17% and 76.77%), which imply that SVM-RFE selects features that maximize the linear separability of data, so the performance of linear classifiers is enhanced. Linear SVM also achieved good F1scores of 74.91%, 75.38%, 76.92% and 74.12% for valence, arousal, dominance and liking respectively which confirms the consistent of RFE performance and its robustness to overfitting. Figure 3 illustrates the performance of each classifier for each scale in terms of accuracy. Table 1. Accuracies and F1-scores of different classifiers for each emotional scale Classifier

Accuracy (%) F1-score (%) Valence Arousal Dom Liking Valence Arousal Dom Liking

SVM (RBF)

61.22

65.05

66.36 68.68

45.52

56.06

55.58 42.32

SVM (Linear)

76.84

77.66

79.99 79.45

74.91

75.38

76.92 74.12

LDA

74.14

74.10

76.17 76.77

72.24

71.74

72.88 71.85

k-NN

63.91

63.31

66.64 66.47

60.70

57.76

60.56 57.22

G. Na¨ıve Bayes 54.89

63.06

61.46 60.63

54.32

58.99

60.26 56.43

MLP

60.29

65.55

66.24 67.14

51.21

58.18

56.27 48.88

Decision tree

57.68

59.93

60.95 58.77

55.34

57.18

56.91 52.42

Results of the previously discussed related work compared to this study are given in Table 2 and illustrated in Fig. 4. In terms of valence and arousal scales, Chen et al. [5] achieved the best results among other studies with accuracies of 67.89% and 69.09% respectively while the presented study achieved 76.84% and

254

M.A. AbdelAal et al.

Accuracy (%)

Valence

Arousal

Dominance

Liking

80

60

40 SVM (RBF)

SVM (Linear)

LDA

G. na¨ıve Bayes

k-NN

MLP

Decision Tree

Fig. 3. Accuracies of different classifiers for each emotional scale Table 2. Accuracies and F1-scores of other studies compared to this study Method

Accuracy (%) F1-score (%) Valence Arousal Dom Liking Valence Arousal Dom Liking 62.00

-

55.40

56.30

58.30

-

50.20

Matiko et al. [16]

62.62

-

-

-

-

-

-

-

Daimi and Saha [6]

65.30

66.90

69.10 71.20

55.00

57.00

55.20 50.90

Chen et al. [5] 67.89

69.09

-

-

67.83

68.96

-

-

Gao and Wang [7]

58.00

58.40

-

-

55.20

48.80

-

-

The presented study

76.84

77.66

79.99 79.45

74.91

75.38

76.92 74.12

Accuracy (%)

Koelstra et al. 57.60 [15]

Valence

Arousal

Matiko et al. [16]

Daimi and Saha [6]

Dominance

Liking

80

60

40 Koelstra et al. [15]

Chen et al. [5]

Gao and Wang [7]

Fig. 4. Comparing accuracies of other studies with this study

The presented study

EEG-Based Emotion Recognition

255

77.66% (8.95% and 8.57% higher) for valence and arousal respectively. In terms of dominance and liking scales, Daimi and Saha [6] achieved good accuracies of 69.10% and 71.20% but low F1-scores of 55.20% and 50.90% respectively. The presented study achieved better accuracies of 79.99% and 79.45% (10.89% and 8.25% higher) and good F1-scores of 76.92% and 74.12% for dominance and liking respectively. The comparison between this study and other studies confirms the superiority and robustness of the presented method.

7

Conclusion

This paper presents a method for emotion recognition using EEG signals. The presented method is tested on DEAP dataset which contains 1280 trials. In this method, a binary classification is performed on valence, arousal, dominance and liking scales. Spectral power, oscillation and Shannon entropy features are extracted from EEG signals. A wrapper-based feature selection method, SVMRFE, was used to select the most important features. Then, many classifiers are evaluated to classify emotions using the selected features. The best results were achieved by linear SVM with accuracies of 76.84%, 77.66%, 79.99% and 79.45% for valence, arousal, dominance and liking respectively. LDA also achieved great results (accuracies of 74.14%, 74.10%, 76.17% and 76.77%), which imply that SVM-RFE selects features that maximize the linear separability of data, so the performance of linear classifiers is enhanced. Linear SVM and LDA also achieved a good performance in terms of F1-score which confirms the robustness of RFE to overfitting. A comparison between this study and other studies on the same dataset has been made. The presented method achieved an average of 9% higher accuracy than the best of other methods. Results confirms the superiority and robustness of the presented method.

References 1. Deap: A dataset for emotion analysis using physiological and audiovisual signals. http://www.eecs.qmul.ac.uk/mmv/datasets/deap/. Accessed 28 Mar 2017 2. AbdelAal, M.A., Alsawy, A.A., Hefny, H.A.: On emotion recognition using EEG. In: The 50th Annual Conference on Statistics, Computer Sciences and Operations Research, pp. 35–49 (2015) 3. Baillet, S., Mosher, J.C., Leahy, R.M.: Electromagnetic brain mapping. IEEE Sig. Process. Mag. 18(6), 14–30 (2001) 4. Chang, C.C., Lin, C.J.: LIBSVM: a library for support vector machines. ACM Trans. Intell. Syst. Technol. (TIST) 2(3), 27 (2011) 5. Chen, J., Hu, B., Moore, P., Zhang, X., Ma, X.: Electroencephalogram-based emotion assessment system using ontology and data mining techniques. Appl. Soft Comput. 29, 663–674 (2015) 6. Daimi, S.N., Saha, G.: Classification of emotions induced by music videos and correlation with participants rating. Expert Syst. Appl. 41(13), 6057–6065 (2014) 7. Gao, Z., Wang, S.: Emotion recognition from EEG signals using hierarchical Bayesian network with privileged information. In: Proceedings of the 5th ACM on International Conference on Multimedia Retrieval, pp. 579–582. ACM (2015)

256

M.A. AbdelAal et al.

8. Guyon, I., Elisseeff, A.: An introduction to variable and feature selection. J. Mach. Learn. Res. 3, 1157–1182 (2003) 9. Guyon, I., Weston, J., Barnhill, S., Vapnik, V.: Gene selection for cancer classification using support vector machines. Mach. Learn. 46(1), 389–422 (2002) 10. Harman, D.W., Ray, W.J.: Hemispheric activity during affective verbal stimuli: an EEG study. Neuropsychologia 15(3), 457–460 (1977) 11. Hoagland, H., Cameron, D.E., Rubin, M.A.: The electroencephalogram of schizophrenics during insulin treatments. Am. J. Psychiatry 94(1), 183–208 (1937) 12. Hoagland, H., Cameron, D.E., Rubin, M.A.: Emotion in man as tested by the delta index of the electroencephalogram: I. J. Gen. Psychol. 19(2), 227–245 (1938) 13. Jain, A.K., Duin, R.P., Mao, J.: Statistical pattern recognition: a review. IEEE Trans. Pattern Anal. Mach. Intell. 22(1), 4–37 (2000) 14. Jasper, H.H.: The ten-twenty electrode system of the international federation. Electroencephalogr. Clin. Neurophysiol. 10, 371–375 (1958) 15. Koelstra, S., M¨ uhl, C., Soleymani, M., Lee, J.S., Yazdani, A., Ebrahimi, T., Pun, T., Nijholt, A., Patras, I.: DEAP: a database for emotion analysis using physiological signals. IEEE Trans. Affect. Comput. 3(1), 18–31 (2012) 16. Matiko, J.W., Beeby, S.P., Tudor, J.: Fuzzy logic based emotion classification. In: IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), pp. 4389–4393. IEEE (2014) 17. Mehrabian, A.: Pleasure-arousal-dominance: a general framework for describing and measuring individual differences in temperament. Curr. Psychol. 14(4), 261– 292 (1996) 18. Nicolas-Alonso, L.F., Gomez-Gil, J.: Brain computer interfaces, a review. Sensors 12(2), 1211–1279 (2012) 19. Petrantonakis, P.C., Hadjileontiadis, L.J.: Emotion recognition from brain signals using hybrid adaptive filtering and higher order crossings analysis. IEEE Trans. Affect. Comput. 1(2), 81–97 (2010) 20. Picard, R.W.: Affective computing. Technical report, 321, MIT Media Laboratory Perceptual Computing Section (1995) 21. Russell, J.A.: A circumplex model of affect. J. Pers. Soc. Psychol. 39(6), 1161–1178 (1980) 22. Russell, J.A., Mehrabian, A.: Evidence for a three-factor theory of emotions. J. Res. Pers. 11(3), 273–294 (1977) 23. Scherer, K.R.: What are emotions? And how can they be measured? Soc. Sci. Inform. 44(4), 695–729 (2005) 24. Shannon, C.E.: A mathematical theory of communication. Bell Syst. Techn. J. 27(3), 379–423 (1948) 25. Soleymani, M., Koelstra, S., Patras, I., Pun, T.: Continuous emotion detection in response to music videos. In: IEEE International Conference on Automatic Face and Gesture Recognition and Workshops (FG 2011), pp. 803–808. IEEE (2011)

Early Prediction of Wheat Diseases Using SVM Multiclass Ahmed Reda1(&), Essam Fakharany1, and Maryam Hazman2 1

College of Computing and Information Technology, Arab Academy for Science, Technology and Maritime Transport, Cairo, Egypt [email protected], [email protected] 2 Central Laboratory for Agricultural Expert System Giza, Giza, Egypt [email protected]

Abstract. The early prediction of Plant diseases based on learning algorithms is one of promising research areas. Several types of classification techniques can be utilized on such data to early predict the different kinds of wheat diseases. However, the high dimension of the dataset in our case study and how selecting of the best data mining classifiers is one of the challenges. For that, Principle Component Analysis (PCA) technique was carried out for reducing the dimension by combining a set of correlated features as preprocessing step. Then, the Support Vector Machine (SVM) classifier with different multiclass techniques has been applied to predict of wheat diseases. The results have been combined with different voting methods in conjunction with PCA. The proposed system evaluated by several measurements and the classification accuracy reached to 96%. Keywords: Data mining  Data preprocessing  Principle component analysis  Wheat diseases  Support vector machine

1 Introduction Wheat crop is one of the most important crops for Egypt because it is used in making “Baladi” bread which is considered a vital source to feed the Egyptian population because for what it provides a high source of nutritive values. Wheat crop contains a lot of important minerals such as potassium and calcium, in addition, vitamins A, E and vitamin K. Egypt is one of the top 20 commodities production for wheat globally in 2014 with 9.3 Million tons per year, according to the international wheat production statistics produced by the food and agriculture organization1. Thus, it is considered one of the most strategic food crops in Egypt because it used in the Egyptian diet, and it produces more than one-third of the daily caloric intake of the Egyptian population and more than 45% of the total daily protein consumed by the Egyptians. Data mining technique play an important role as Knowledge Discovery in Database (KDD) tool by extracting the hidden patterns from exhaustive data records in Multi-dimensional scaling. The goal of classification is to assign unknown objects to one of the already predefined groups. Its target function is applied to map the input of attribute space to one of the predefined groups by adding a class label to the input [2]. Recently, the huge © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_24

258

A. Reda et al.

number of classifiers used to solve such classification problem reached 179 classifiers as in [3] with 17 families. The common types of classifiers can be (probabilistic, discriminant, decision tree and support vector machine). The performance of each type has pros and cons, and it shows a high variation in accuracy according to the number of patterns, the size of training samples and numbers of input variables [4]. Many studies show that Neural Network (NN) classifier is used in many applications and it allows handling noisy data, moreover, it can work well with a high dimension data. However, it has some limitations such as; NN can fall in local minima, besides NN suffers from the difficulty to determine the number of neurons needed in the hidden layer. Also, NN needs a long time to build a training model and it does not work well with the small size of training samples. On the other side, the decision trees achieve high accuracy in classification problems [5], but they suffer from the overfitting and fragmentation problems related to the nature of data or if sub-trees are replicated in decision tree [6]. Therefore, according to previous drawbacks of NN and decision trees, in this paper we utilized SVM classifier which has the following advantages: (1) (2) (3) (4)

High generalization ability to overcome the overfitting problem. Easily handle nonlinear data point. High performance in the high-dimensional dataset. High performance in small training data.

Since SVM has a previous advantage, initially we reduce the effects of the high dimension of features space dataset by using PCA [7] as processing step. SVM multiclass has been utilized by different types of kernel functions for identifying and predicting the Egyptian wheat diseases. The main object of this research work is increasing the national income of wheat crop by preventing wheat losing. Therefore, it will reduce the cost and minimize the agrochemicals use aiming to reduce the losses of wheat yield due to dwarfing of the plants and malformations of the leaves. Besides, it will prevent contaminating other crops within the same area. In this research, the main contribution is to compare the results and measure the performance metrics of various data mining classifiers for early prediction of Egyptian wheat diseases. The rest of this paper is organized as follows: Sect. 2 presents the proposed system. Section 3 describes the wheat dataset. Section 4 explains the metrics of evaluation. The results of experiments and discussion are illustrated in Sect. 5. Finally, the conclusion and future work are in Sect. 6.

2 The Proposed System The proposed system as shown in “Fig. 1” for early prediction of wheat diseases based on SVM multiclass is composed of the following stages: (1) Building of Egyptian knowledge base of wheat disease: based on a powerful web-based tool developed by the central laboratory for agricultural expert systems (CLAES) [8]. (2) Pre-processing stage: Replacing all missing values in a dataset with “null” as nominal attribute values.

Early Prediction of Wheat Diseases Using SVM Multiclass

259

Fig. 1. Proposed model of wheat diseases

(3) Reduce of dataset dimensionality: Performs a principal components analysis to reduce the high number of dataset attributes. (4) Classification stage: is used to build an SVM multiclass model based on training data which contains (name of wheat diseases and related symptoms). Then, in the final stage, the predictive model for diseases can be tested by entry the new symptoms. Theses stages details will be explained in the next subsection. 2.1

Building of Egyptian Knowledge Base of Wheat Disease

Knowledge Base (KB) of wheat diseases is built by using the web-based knowledge acquisition tool developed by CLAES in 2010. This tool allows the human experts and agriculture knowledge engineers to add data and knowledge about different kinds of diseases related to wheat crop remotely on the internet. In addition, this tool includes variety selection tasks that allow their user to select the types and names of diseases, and assign the values of related symptoms. Also, it has several properties for plant diseases parts, color, appearance, and soil types. Finally, the rule-based knowledge scheme has been created based on the rule instance as numbers of IF-THEN condition statements in XML standard data language. The role of the inference engine enables the expert system to build reasoning mechanism from the rules in the KB. 2.2

Preprocessing Stage

The objective of Preprocessing is to make the wheat dataset format suitable for working with different data mining classifiers. Most of our experiments are implemented in WEKA [9]. The WEKA is a tool that has the ability to simulate and perform many data mining tasks. First, most of the attributes in the wheat dataset are a nominal data type, and WEKA uses ARFF (Attribute-Relation File Format). ARFF declares the nominal data type as case-sensitive values. For that, the values having the same subtypes of wheat diseases has been handled manually with assuring that all distinct attribute values

260

A. Reda et al.

appear with their unique statistical indicators in WEKA such as (Label, Count, and Weight). Second, to get the best performance, the missing values have been replaced by a constant value “null” because it can be inconsistent with other recorded data. 2.3

Reduction of Dataset Dimensionality

This paper mainly aims to enhance the accuracy of the SVM classifier by reducing the dimension of the wheat dataset. PCA has been used to reduce the size of attributes of the wheat dataset by compressing the dataset and keeping only important information. The main idea of PCA is to choose the dimensions which have the largest variance based on the statistical techniques to improve the predictive performance of the machine learning classifier. Arithmetical procedures have been applied to convert a set of numbers of correlated variables into a set of a linearly uncorrelated variable which called Principal Components (PCs) [10]. The properties of PCs depend on the eigenvalues and eigenvectors of the covariance matrix [11], the mathematical calculation of values and eigenvectors described in [12]. For example, the dimension problem can be denoted as: given the random variable X = (X1, …, Xn)T, Y = (Y1, …, YN)T where n, N refers to the dimension of data before applying PCA and after applying PCA. Find a lower dimensional y where N < n and T is the transpose vector. In our dataset, the number of input attributes is highly correlated with each other which can lead to an overfitting problem that affects the accuracy of the classification model. For that, we apply PCA to select a subset of the attributes set that is weighted combinations of the original attribute. At the same time, PCA keeps the same power of accuracy of full original dimension. 2.4

Classification Based on SVM

SVM is a machine learning algorithm proposed by Vapnik [13] it is considered a type of unsupervised learning. SVM is a statistical classification method that can classify training samples by using a hyperplane or set of hyperplanes, which can be used for classification, regression, or other tasks [14]. In a q dimensional space, suppose that the training data samples of r denoted by fxi ; yi g; i ¼ 1; . . .; r ; yi 2 f1; 1g. The aim of SVM to choose an optimal separating hyperplane in the feature space that represented by vector ~ w that separates between two classes which represented in the positive and negative training vectors by calculating the maximum margin. Assuming a hyperplane is represented as wT x + b ¼ 0 where w is the vector of coefficients, x is a point located on the hyperplane, b is a constant. SVM constructs a separating hyperplane for two classes which can define as: yi ðwT xi þ bÞ  1  0

ð1Þ

Early Prediction of Wheat Diseases Using SVM Multiclass

Equation (1) combine two classes 8yi ¼  1 the margin between the planes is and we need to find w and b that minimize the objective function as: 1=2kwk2 Subject to yi ðwT xi + bÞ  1; 8i

261 2 kwk

ð2Þ

For nonlinearly separable classes, the Eq. (2) after adding a penalty term will be  min

kwk2 2

þC

r P

 ni

i¼1

Subject to yi ðw xi + bÞ [ 1  ni

ð3Þ

T

The second term C

r P

ni added as a penalty value when n is a slack value to

i¼1

handling non-separable data. By using the Lagrange function, this optimization problem solved as: Lðw; b; aÞ ¼ 12 wT w 

N P

ai ½yi ðwT xi þ bÞ  1

i¼1

Subject to ai  0; 8i

ð4Þ

Where a1,a2, …, aN are Lagrange multipliers, and a = [a1,a2, …, aN]T. SVM Multiclass problem can be solved by single optimization problem as in Eq. (5). When m-th is a function for SVM multiclass where wTm Uðxi Þ + b separates the training data of class m from other classes are constructed, notation U refer to the mapping function. min 12

w;b;n

n P m¼1

wTm wm þ C

L P P i¼1 m6¼yi

T nm i wm Uðxi Þ þ byi 

wTm Uðxi Þ + bm þ 2  nm i m with ni  0; i ¼ 1; . . .; L, m 2 f1; . . .; ng

ð5Þ

By solving Eq. (6) you can expect the new data of training sample and determine that it relates to any class. arg maxm¼1;...;n ðwTm Uðxi Þ + bm Þ

ð6Þ

In case of linear classification problem, a separating hyperplane can be used to divide the data as in Fig. 2. Hence, in the nonlinear problem, kernels function has been used to transform non-linearly of the input data to a high-dimensional space [15].

262

A. Reda et al.

Fig. 2. SVM margin and hyperplane

Several types of kernel functions have been used for mapping and transform of feature space as following: 1. Linear Kernel Function k(! x ;! z Þ ¼ \! x ;! z [

ð1Þ

Where ! x ;! z vectors in the input space and terms are k is a kernel to an inner product in a feature space 2. Polynomial Kernel Function k(! x ;! z Þ ¼ ðc\! x ;! z [ + c)d

ð8Þ

Where c is a free parameter trading off the influence of higher-order versus lower-order, d is a degree of polynomial 3. Gaussian (Radial Basis Function) ! !  2 k(! x ;! z Þ ¼ ecð x  z Þ

ð9Þ

Where c is a constant, c = 2r1 2 Several techniques have been used to solve SVM multiclass problem by decomposing the multiclass to a set of binary problems as following methods: One – against- one: In this approach, the pair-wise comparison has applied between all n classes. Thus, from the training set of n classes all possible two-class classifiers will be evaluated. This method requires the total of n (n-1)/2 of training classifiers from every pair of classes, where n is the number of classes. Finally, the class with most votes will be assigned with classification label [16]. One – against- all: In this approach, a set of binary classifiers has trained to separate one class from the rest of classes has been generated. The final class will be

Early Prediction of Wheat Diseases Using SVM Multiclass

263

corresponding to SVM with the largest margin, to solve SVM multiclass problem we need solve a single optimization problem as shown in Eq. 5. Random Error Correcting output code (ECOC): In this approach, SVM multiclass can be solved by decomposing the output space into several two-class classification problems. Each column of the error correcting code matrix has a code of bit values that employed to reclassify the training samples that previously constructed. The code matrix is generated randomly. Finally, different unrelated two class sub-classifiers are constructed and the final classification results are decided based on specific decoding rules [17]. In this study, SVM has used as a binary classifier beside the multiclass classifier algorithm. We applied several fixed combining methods as in below equations to combine the multi-classifier and make a decision from the outputs. Let’s suppose fyn gn¼1;...;N represent a set of N label that refer to the number of observations, R is the number of base classifier for each observation which can be denoted as z. Where Pr ðyn jz) is the probability that z belongs to the class with label yn , given the Rth classifier [18] the different combination rules have been used as shown below: Product rule

Z 2 yd if d ¼ arg maxn¼1;...;N

R Y

Pr ðyn jz)

ð10Þ

r¼1

Majority Vote rule Z 2 yd if d ¼ arg maxn¼1;...;N

R X

Mrn

r¼1

( Mrj¼

1 if j = arg maxn¼1;...;N Pr ðyn jz) otherwise 0

ð11Þ

Max rule Z 2 yd if d ¼ arg maxn¼1;...;N maxr¼1;...;R Pr ðyn jz)

ð12Þ

Z 2 yd if d ¼ arg maxn¼1;...;N minr¼1;...;R Pr ðyn jz)

ð13Þ

Min rule

3 Wheat Dataset Description WEKA data mining tool has been used in experiments. Prediction of wheat diseases determined by using the dataset includes 285 instances, 63 attributes and 24 classes of wheat diseases. Description of attributes shows in Table 1.

264

A. Reda et al. Table 1. Description of dataset attributes

Attributes Variety Types of disease Names of diseases Appearance Colors Parts

Description Sakha 8, Giza 157, Sakha 61, Giza 160, Sakha 69, Giza 162 Bacterial, Insects, Fungal, Viral Mineral Deficiencies, Others Genetic-flecking, Downy mildew, Barley yellow Dwarf, aphids, Leaf rust Pustules, Spots, Streaks, Blotches, Glume Melanesia Brown, Black, Grey, Red, Purple, White Root, Stem, Leaves, Spike, Grains, Panicles

4 Metrics of Evaluation We use the following measurements: True Positive (TP): is the number of positive samples correctly identified. True Negative (TN): is the number of negative samples correctly identified. False Negative (FN): is the number of positive samples wrongly identified. False Positive (FP): is the number of negative samples wrongly identified. The main performance metrics are described and calculated by using different formulas as in Fig. 3.

Fig. 3. Description of dataset attributes and formula

5 Experimental Results Many experiments are applied on existing wheat dataset within the WEKA platform for many selected classification algorithms to evaluate the performance of the proposed model. Our approach is based on the comparison between the numbers of classifiers such as; J48 decision tree, Random Forest (RFs), K-Nearest Neighbor (KNN), Naïve Bayes (NBs), ANN and SVM. The variance parameter of PCA has changed from 0.95

Early Prediction of Wheat Diseases Using SVM Multiclass

265

Fig. 4. Effect of PCA in accuracy

to be 1.0 to allow flexibility to change the suitable output number of dimensions. The results of accuracy due to utilizing PCA are presented in Fig. 4. The SVM number of attributes, for example, is reduced from 63 to 45 and the accuracy before and after applying PCA has been kept very close as shown in Fig. 4. In Table 2, the accuracy of most classifiers is very close after applying the PCA and dimension is reduced. The accuracy of NN and Naïve Bayes classifier has increased. Thus, the rate of time to build the model is decreased especially in ANN case from 24.92 s to 7.49 s. We noticed that the accuracy of SMO (96.1404%) is the best is a comparison to other classifiers followed by J48 (93.33%). Science RFs and KNN give the same accuracy (91.6%). Table 3 shows that the results of different classifiers are based on different evaluation measures. Such as mean absolute, root means square error and kappa statistic as numeric value but root relative square and relative absolute error calculated as percentage value for all test samples. Another performance measures have been computed such that precision, recall and Mathews Correlation Coefficient (MCC) [24] which applied as a linear correlation coefficient. It is used as a measure of the quality of classifications. The output value of MCC scale range between +1 indicate a (perfect prediction), 0 refer to (average random prediction) and –1 an inverse prediction. Figure 5 shows the comparison between the different evaluation parameters of classifiers. The specificity metric for each RFs and KNN is the same value is (91.6) but the best recall metric for SVM (96.1) and the lowest value of specificity metric for Naïve Bayes is (87). Several experiments were run based on the fine tuning of the parameters of SVM, then the best parameter was chosen to achieve the best accuracy. A lot of experiments were run based on fine tuning, then the best parameters were chosen as shows for SVM parameters in Table 4. The e-insensitive loss function has affected the number of support vectors, and its effects on the smoothness of the SVM’s response both the complexity and the generalization capability of SVM depend on its value. Parameter C controls the trade-off between margin maximization and errors of the SVM on training data. Gamma parameter is the free parameter effect on kernel functions. On the other side, the accuracy of SVM multiclass was tested by using several types of kernel functions. Figure 6 shows that the polynomial kernel function

266

A. Reda et al.

Fig. 5. Comparison between evaluation parameters

Table 2. Comparison of accuracy before and after PCA Classification Algorithms

K-Fold Transformation Technique

Incorrectly Classified Instance

Correctly Classified Instance

Time to Accuracy build Model (seconds)

Multiclass SVM J48 RFs KNN ANN Naïve Bayes Multiclass SVM J48 RFs KNN ANN Naïve Bayes

10

11

274

1.04

96.1404% 3.8596%

63

19 24 24 28 50 12

266 261 261 257 235 273

1.05 0.28 0 24.92 0 0.81

93.3333% 91.5789% 91.5789% 90.1754% 82.4561% 95.7895%

6.6667% 8.4211% 8.4211% 9.8246% 17.5439% 4.2105%

63 63 63 63 63 45

36 27 25 27 37

249 258 260 258 248

0.02 0.07 0 7.49 0

87.3684% 90.5263% 91.2281% 90.5263% 87.0175%

12.6316% 9.4737% 8.7719% 9.4737% 12.9825%

45 45 40 40 40

Before PCA

After PCA

Error

Number of attributes

Table 3. Error of different classification techniques Accuracy measures SVM J48 RFs KNN ANN Naïve Bayes

Mean Abs. Error (MAE) 0.0454 0.0034 0.0094 0.0098 0.0068 0.0062

Relative Ab. Error (RAE)% 103.70% 7.672% 21.50% 22.29% 15.53% 14.11%

Kappa Sta. (KS) 0.9576 0.9266 0.9072 0.9074 0.892 0.8551

Root Mean Sq. Error (RMSE) 0.1496 0.054 0.0586 0.0624 0.0575 0.0786

Root Relative Sq. Error (RRSE)% 103.70% 36.889% 39.752% 42.302% 38.981% 53.296%

Early Prediction of Wheat Diseases Using SVM Multiclass

267

Table 4. Parameters of SVM Kernel type Polynomial The e-insensitive loss function 1.0 e−3 Parameter C 1.0

Fig. 6. Effect of SVM kernel types on accuracy

Fig. 7. SVM multiclass methods versus accuracy

achieved the best accuracy 96.1%. The effects of different multiclass methods are shown in Fig. 7, the random correcting code achieves the best results 96.14% in conjunction with SVM multiclass because it enhances the generalization ability of binary classifier. Finally, we evaluate the results of SVM multiclass by different combination methods as shown in Fig. 8. The maximum probability method achieves the best results 96.14%.

268

A. Reda et al.

Fig. 8. Different combination methods versus accuracy

6 Conclusion and Future Work In this paper, the SVM-based wheat diseases prediction model is proposed by using PCA. The dataset composed of 24 kinds of wheat diseases with different symptoms (63 attributes). 285 instances have been used for training and testing the proposed model. In this research work, we utilized different types of SVM kernel with 10-folds of cross-validation and the effects on accuracy were evaluated. In addition, the effect of PCA in a number of attributes and training time and final accuracy has also been obtained. The experimental results showed that random ECOC technique is used to decompose the multiclass to a set of binary spaces to solve SVM multiclass problems in conjunction with the maximum probability method as one of the voting techniques achieved the best accuracy 96.1% compared to J48, RFs, KNN, ANN and Naïve Bayes classifiers which respectively achieved 93.3%, 91.6%, 91.6%, 90.5% and 87.0%. In the future work, we will be utilizing the deep neural network classifier for classification which can deal with a huge number of attributes in conjunction with extracting features directly from plant images by using pattern recognition techniques.

References 1. Jiang, H., Yang, A., Yan, F., Miao, H.: Research on pattern analysis and data classification methodology for data mining and knowledge discovery. Int. J. Hybrid 9(3), 179–188 (2016) 2. Fernández-Delgado, M., Cernadas, E., Barro, S.: Do we need hundreds of classifiers to solve real world classification problems. J. Mach. Learn. Res. 15, 3133–3181 (2014) 3. El-Telbany, M., Warda, M.: An empirical comparison of tree-based learning algorithms: an egyptian rice diseases classification case study. Int. J. Adv. 5, 22–26 (2016) 4. Nikam, S.: A comparative study of classification techniques in data mining algorithms. Orient. J. Comput. Sci. Technol. 8, 13–19 (2015) 5. Brijain, M., Brijain, M., Patel, R., Kushik, M., Rana, K.: A survey on decision tree algorithm for classification, 1–5 (2014)

Early Prediction of Wheat Diseases Using SVM Multiclass

269

6. Sannakki, S.S., Rajpurohit, V.S., Nargund, V.B., Kulkarni, P.: Diagnosis and classification of grape leaf diseases using neural networks. In: 2013 Fourth International Conference on Computing, Communications and Networking Technologies (ICCCNT), pp. 1–5. IEEE (2013) 7. Kambhatla, N., Leen, T.K.: Dimension reduction by local principal component analysis. Neural Comput. 9, 1493–1516 (1997). doi:10.1162/neco.1997.9.7.1493 8. Rafea, A.: Web-Based Domain Specific Tool For Building Plant Protection Expert Systems. INTECH Open Access Publisher (2010) 9. Hall, M., Frank, E., Holmes, G., Pfahringer, B., Reutemann, P., Witten, I.H.: The WEKA data mining software. ACM SIGKDD Explor. Newsl. 11, 10 (2009). doi:10.1145/1656274. 1656278 10. Subbuthai, P., Periasamy, A.: Identifying the character by applying PCA method using Matlab. Int. J. 60, 8–11 (2012) 11. Abdi, H., Williams, L.: Principal component analysis. Wiley Interdiscip. Rev. Comput. Stat. 2(4), 433–459 (2010) 12. Basu, A., Walters, C., Shepherd, M.: Support vector machines for text categorization. In: Proceedings of the 36th Annual Hawaii International Conference on System Sciences, 2003, p. 7. IEEE (2003) 13. Yu, H., Kim, S.: SVM tutorial—classification, regression and ranking. In: Handbook of Natural Computing, pp. 479–506. Springer, Heidelberg (2012) 14. Cristianini, N., Shawe-Taylor, J.: An Introduction to Support Vector Machines and Other Kernel-Based Learning Methods. Cambridge University Press, Cambridge (2000) 15. Mathur, A., Foody, G.M.: Multiclass and binary SVM classification: implications for training and classification users. IEEE Geosci. Remote Sens. Lett. 5, 241–245 (2008). doi:10.1109/LGRS.2008.915597 16. Kindermann, J., Leopold, E., Paass, G.: Multi-class classification with error correcting codes. Treffen der Gi-fachgr. (2000) 17. Nguyen, T., Pham, X., Liew, A.: Aggregation of classifiers: a justifiable information granularity approach. arXivPrepr:1703.05411 (2017) 18. Ferri, C., Hernndez-Orallo, J., Modroiu, R.: An experimental comparison of performance measures for classification. Pattern Recognit. Lett. 30, 27–38 (2009). doi:10.1016/j.patrec. 2008.08.010

Coronary Artery Vessel Tree Enhancement in Three-Dimensional Computed Tomography Angiography Marwa Shams1(B) , Safwat Hamad1 , Mohammed A.M. Salem1,2 , and Howida A. Shedeed1 1

Faculty of Computer and Information Sciences, Ain Shams University, Cairo, Egypt {marwa shams,shamad,salem,dr howida}@cis.asu.edu.eg 2 Faculty of Media Engineering and Technology, German University in Cairo, New Cairo, Egypt [email protected]

Abstract. Coronary artery segmentation in 3D images is a fundamental step in evaluating the degree of Coronary Artery Disease (CAD) in cardiac clinical diagnosis and surgical planning. In this paper, we study the effect of vessel filtering and enhancement on coronary artery segmentation from Computed Tomography Angiography (CTA) datasets. The method mainly consists of two steps: (1) CTA datasets enhancement using Hessian-based analysis; and (2) coronary vessels segmentation in enhanced images using Otsu thresholding. The experiments are carried on 18 different CTA datasets and segmentation results of enhanced and non-enhanced datasets are quantitatively measured and compared using three different evaluation metrics. Experimental results show that segmenting coronary vessels in enhanced CTA images gives more accurate extraction of coronary arteries than non-enhanced images. Keywords: Vessel enhancement · Vessel segmentation · Coronary arteries · Three-dimensional segmentation · Medical imaging · CTA · Computed tomography angiography · Thresholding · Otsu method · Region growing

1

Introduction

Based on the reports of the world health organization (WHO) [1], CAD is one of the main causes of death worldwide. It’s caused by some narrowed places along coronaries that slow down the blood flow. As a result, oxygen-rich blood can’t reach the heart muscle causing angina or heart attack. There are many cardiac tests that are performed for the assessment of CAD. The reference standard test is the quantitative coronary angiography (QCA) or catheterization. Although, it provides accurate estimation of CAD due to the perfect visualization of vessels, it is invasive, high-cost and may cause some complications [2]. c Springer International Publishing AG 2018  A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3 25

Coronary Artery Vessel Tree Enhancement in Three-Dimensional CTA

271

Recent advances in cardiac medical imaging provide high resolution 3D images of heart like Computed Tomography Angiography (CTA) and Magnetic Resonance Angiography (MRA). Such image modalities have recently become an alternative way for coronary disease assessment [3]. It is better than QCA as it is non-invasive but its interpretation is difficult, time consuming and requires special training [4]. These drawbacks motivate the development of automatic accurate coronary segmentation techniques. The main problems that disturb the coronary segmentation process are: structures attached to coronaries and have similar intensities which mostly cause over segmentation and the variations in geometry and size along the vessels that may cause under-segmentation at low resolution regions. Many segmentation techniques have been developed for segmenting coronary tree and other vessel trees within human body [5]. The coronary segmentation framework usually consists of three main steps: (1) initialization, (2) enhancement and (3) segmentation. Figure 1 shows the main components of that framework. The initialization step guides the segmentation algorithm to the regions of interest which can be done by manual initialization or automatic detection of seed points and/or centerlines. The enhancement step is often applied to enhance vessel structures to obtain better segmentation results. Enhanced images and provided seed points/centerlines are then used in the segmentation process. Sometimes there is a fourth step in which segmented coronary tree is used to extract centerlines or detect and quantify stenoses.

Manual Initialization

CTA Image Data

Preprocessing/ Enhancement

Automatic Detection

Seed points / Centerlines Enhanced Image Data

Coronary Artery Segmentation

Segmented Coronaries

Coronaries Centerline Post-processing

Fig. 1. General framework of coronary artery segmentation.

272

M. Shams et al.

This paper shows the effect of vessel enhancement on the coronary artery segmentation results. Firstly, a Hessian-based vessel filter is applied to input CTA images. Secondly, Otsu thresholding is applied to get the thresholds that discriminate between vessel and non-vessel regions. Finally, these thresholds are then used in a region growing process for segmenting the vessel region. The rest of the paper consists of four sections. Section 2 reviews some related work. Section 3 explains the vessel enhancement approach for coronary artery. Section 4 shows the results and evaluation of applying vessel enhancement on coronary arteries. Section 5 concludes the proposed method and provides possible improvements for achieving better results.

2

Related Work

Hennemuth et al. [6] proposed a three-step coronary segmentation approach. First, the algorithm was initialized by a single seed point placed in ascending aorta. This point was used for coronary ostium detection. Second, the detection of ostium was done by segmenting aorta and analyzing the geometry of its cross-sections. Finally, coronary arteries were segmented using 3D region growing based on Boskamp et al. [7]. Starting from detected coronary origins, neighboring voxels were checked for satisfying some merging criteria. These criteria were a lower threshold, an adaptive upper grey threshold and also a gradient threshold to check the grey level difference in neighboring voxels. Metz et al. [8] proposed a four-step approach for coronary segmentation and centerline extraction. First, the algorithm was initialized by one seed point at the beginning of the vessel to be segmented. Second, an enhancement step was performed using vessel enhancing diffusion (VED) filter developed by Manniesing et al. [9], which was a smoothed version of Frangi vessel filter [10]. Third, the three main coronaries were segmented using greyscale-based region growing. Starting from vessel beginning, voxels were merged based on predefined greyscale thresholds. Finally, six sub-iteration thinning algorithm was applied to extract centerlines of the coronary tree. Bock et al. [11] proposed a three-step coronary segmentation approach. First, the algorithm was initialized by a seed point in ascending aorta. Second, this seed point was used to track aorta and detect coronaries. Finally, coronaries were segmented by applying a progressive region growing algorithm. The growing process depended on two thresholds (a lower and an upper threshold) that were initially defined based on the gray value of coronary seeds’ neighboring voxels. These thresholds were continuously updated due to intensity changes along the vessel which allowed for detecting the small distal parts of vessel. ¨ uz et al. [12] proposed a five-step approach for coronary artery analysis. Oks¨ First, the algorithm was initialized by two seed points at the origins of left and right coronaries. Second, a thresholding at −400 HU and 500 HU was performed to remove pulmonary vessels and calcifications, respectively. Third, Hessianbased Frangi Vesselness filter was applied to enhance vessel (tubular) structures. Fourth, coronary arteries were segmented according to the intensity of voxels.

Coronary Artery Vessel Tree Enhancement in Three-Dimensional CTA

273

Voxels were added to vessel region based on a similarity merging criterion which is the absolute difference between the gray value of the current voxel and the average gray value of the current segmented region. This approach required extra seed points in both left and right coronaries during segmentation for completing non-segmented parts. Finally, obtained coronary tree was used for detection and quantification of stenoses. Chen et al. [13] proposed a three-step coronary segmentation approach. First, the algorithm was initialized with a seed point placed at the beginning of the vessel to be segmented. Second, input CTA images were enhanced by removing pulmonary vessels and high-intensity regions like calcifications, stents or pacemakers using morphological closing and thresholding at 676 HU, respectively. Finally, coronaries were segmented using a minimum path-based region growing (MP-RG) that used the minimum path searching process as a merging criterion. Zhou et al. [14] proposed a four-step coronary segmentation approach. First, the algorithm was initialized with two pints at the origins of left and right coronaries. Second, heart region was extracted using thresholding at −970 HU followed by adaptive expectation maximization (EM) and morphological opening operation with a spherical structuring element. Third, Coronary vessels were enhanced using a multi-scale coronary artery response (MS CAR) method by Zhou et al. [15]. Finally, coronary artery tree was segmented using a dynamic 3D rolling balloon region growing (RBG). In this method, a sphere with center at the pre-defined seed point and a 15 mm diameter was moved from vessel start to its end. The voxels inside that sphere were checked to be vessel or non-vessel voxels using an adaptive mean-value-based merging criterion.

3

Methods

In this work, coronary artery tree is segmented in two steps given the CTA datasets and their centerlines. The first step main purpose is to extract the blood vessels which is done by applying Hessian-based vesselness filter. The second step is to segment the coronary artery from enhanced CTA using Otsu thresholding. 3.1

Vessel Enhancement

Input CTA images are enhanced by applying a multi-scale Hessian-based vesselness filter proposed by Sato et al. [16]. Many previous methods have integrated multi-scales and multi-orientations to refine line structures with different widths and orientations [17–19], but they was insufficient to be applied to 3D medical images. Sato et al. extended these previous methods to suit 3D images. The filter uses a line filter where the line structure represents the blood vessel to be extracted and enhanced. It aims to refine tubular structures (blood vessels) by calculating a vesselness measure for each voxel in the image. The ideal 3D line is defined as   −(x2 + y 2 ) , (1) I(x, y, z) = exp 2σ 2

274

M. Shams et al.

where I(x, y, z) is the calculated line value at position xyz and σ is the standard deviation that represents the width of the line. The maximum second derivative of that line has a value equals to zero and its direction is identical to z-axis. The second derivative value at any point in the center region of the line cross-section has a negative value. The analysis of vessel structures is based on the eigenvectors and eigenvalues of the Hessian matrix which consists of the second order gradients of the image, ⎤ ⎡ Ixx Ixy Ixz (2) H = ⎣Iyx Iyy Iyz ⎦ , Izx Izy Izz where the second order gradients of an image I(x,y,z) are Ixx , Ixy and so on. The eigenvectors of H are λ1 , λ2 and λ3 while e1 , e2 and e3 are their corresponding eigenvalues. A voxel is said to be vessel (gives highest vesselness measure) if the maximum eigenvalue λ1 is zero and the direction of its eigenvector e1 is identical to the z-axis as the conditions of the ideal line are satisfied (λ1 ∼ = 0 and λ2 ∼ = λ3  0). Figure 2 shows the effect of applying the Hessian-based vessel filter on two CTA slices. 3.2

Coronary Segmentation

Coronary lumen is segmented using Otsu-based region growing. Otsu’s method constructs a histogram for the input image and iteratively tests each gray value for being an optimal threshold. The optimal threshold minimizes the within-class (intra-class) variance which results in maximizing the between-class (inter-class) variance. The between-class (inter-class) variance is: 2 (t) = q1 (t) σ12 (t) + q2 (t) σ22 (t), σw

(3)

where q1 (t) and q2 (t) are class probabilities given by: q1 (t) =

t 

p(i)

(4)

p(i).

(5)

i=1

and q2 (t) =

L  i=t+1

t is the selected threshold and L is the number of bins in the used histogram. The individual class variances are: σ12 (t)

=

t  i=1

[i − μ1 (t)]2

P (i) q1 (t)

(6)

Coronary Artery Vessel Tree Enhancement in Three-Dimensional CTA

(a)

(b)

(c)

(d)

275

Fig. 2. Vessel enhancement using multi-scale Hessian-based analysis: (a) and (c) represent two non-enhanced CTA slices, (b) and (d) represent the same two slices after vessel enhancement.

and σ22 (t) =

L 

[i − μ2 (t)]2

i=t+1

P (i) , q2 (t)

(7)

where μ1 (t) and μ2 (t) are class means and given by μ1 (t) =

t  iP (i) i=1

and μ2 (t) =

q1 (t)

L  iP (i) q (t) i=t+1 2

(8)

(9)

Otsu method can be applied to get one threshold (single-thresholding) or extended to obtain more than one thresholds (multi-thresholding). In the application of coronary artery, segmentation methods are often interested in highintensity regions, as coronary vessel regions are brighter than surrounding tissues

276

M. Shams et al.

(a)

(c)

(e)

(b)

(d)

(f)

Fig. 3. Vessel enhancement effect on segmentation result: (a), (c) and (e) represent the result of the proposed segmentation method without enhancement, (b), (d) and (f) represent the result of the same datasets after enhancements.

Coronary Artery Vessel Tree Enhancement in Three-Dimensional CTA

277

due to the contrast material (radiographic dye) injection. So, coronary regions are defined with the high-valued thresholds obtained from Otsu. Figure 3 shows the output of applying the proposed method on three different datasets (dataset00, dataset02 and dataset15).

4

Experimental Results

The proposed method is applied to the 18 training CTA datasets that are publicly available in the Coronary Artery Stenoses Detection and Quantification Evaluation Framework [20,21]. The method also uses the provided centrelines that were automatically extracted by Yang et al. [22]. Segmentation results are evaluated with three different metrics: Dice Coefficient, Mean Surface Distance (MSD) and Max Surface Distance (MAXSD). Values of the three metrics are reported separately for healthy (H) and diseased (D) vessel segments. Table 1 shows the quantitative evaluation of the segmentation results compared with three human expert observers. Applying Otsu thresholding segmentation after enhancement gives better results than segmenting without enhancement. Table 1. Segmentation results evaluation before and after enhancement. Method

Dice MSD MaxSD Rank D [%] H [%] D [mm] H [mm] D [mm] H [mm] Avg.⇓

Observer3

0.76

0.80

0.24

0.19

3.07

3.25

6.3

Observer1

0.74

0.79

0.26

0.26

3.29

3.61

7.2

Observer2

0.66

0.73

0.31

0.25

2.70

3.00

8.7

Otsu Thresholding after enhancement*

0.44

0.35

0.50

0.99

2.84

5.72

12.9

Otsu Thresholding without enhancement

0.03

0.02

1.03

1.50

3.76

6.80

16.0

5

Conclusion and Future Work

In this paper, a coronary artery segmentation method is proposed to segment coronaries in CTA datasets. The method is applied in two steps: enhancement and segmentation. Hessian-based analysis filtering has a good effect on segmentation results by enhancing vessel regions and making them more obvious which give the next steps like segmentation a chance to achieve better results. Otsu thresholding combined with region growing to segment vessel regions in enhanced images. They are applied at each centerline point with different thresholds to cope with intensity variations along the vessel.

278

M. Shams et al.

The segmentation approach can be redeveloped to obtain higher accuracy segmentation results. Two ways of modifications may be applied at different stages: Enhancement and Segmentation. The first suggested modification is a better enhancement technique as enhancement has a direct effect on resulted segmentation. The second suggested modification is to replace Otsu segmentation method with another method, that can achieve better results on defining vessel regions, like K-Means and Fuzzy C-Means clustering approaches. For each modification, segmentation results should be obtained and quantitatively evaluated to be compared with previous results.

References 1. World Health Organization. The top 10 causes of death (2014) 2. Tavakol, M., Ashraf, S., Brener, S.J.: Risks and complications of coronary angiography: a comprehensive review. Global J. Health Sci. 4(1), 65 (2012) 3. Meinel, F.G., Bayer II, R.R., Zwerner, P.L., De Cecco, C.N., Schoepf, U.J., Bamberg, F.: Coronary computed tomographic angiography in clinical practice: state of the art. Radiol. Clin. North Am. 53(2), 287–296 (2015) 4. Pugliese, F., Hunink, M.M., Gruszczynska, K., Alberghina, F., Malag, R., van Pelt, N., Mollet, N.R., Cademartiri, F., Weustink, A.C., Meijboom, W.B., Witteman, C.L.: Learning curve for coronary CT angiography: what constitutes sufficient training? Radiology 251(2), 359–368 (2009) 5. Lesage, D., Angelini, E.D., Bloch, I., Funka-Lea, G.: A review of 3D vessel lumen segmentation techniques: models, features and extraction schemes. Med. Image Anal. 13(6), 819–845 (2009) 6. Hennemuth, A., Boskamp, T., Fritz, D., Khnel, C., Bock, S., Rinck, D., Scheuering, M., Peitgen, H.O.: One-click coronary tree segmentation in CT angiographic images. In: International Congress Series, vol. 1281, pp. 317–321. Elsevier (2005) 7. Boskamp, T., Rinck, D., Link, F., Kummerlen, B., Stamm, G., Mildenberger, P.: New vessel analysis tool for morphometric quantification and visualization of vessels in CT and MR imaging data sets. Radiographics 24(1), 287–297 (2004) 8. Metz, C., Schaap, M., Van Der Giessen, A., Van Walsum, T., Niessen, W.: Semiautomatic coronary artery centerline extraction in computed tomography angiography data. In: IEEE 4th International Symposium on Biomedical Imaging: From Nano to Macro, pp. 856–859. IEEE (2007) 9. Manniesing, R., Viergever, M.A., Niessen, W.J.: Vessel enhancing diffusion: a scale space representation of vessel structures. Med. Image Anal. 10(6), 815–825 (2006) 10. Frangi, A.F., Niessen, W.J., Vincken, K.L., Viergever, M.A.: Multiscale vessel enhancement filtering. In: International Conference on Medical Image Computing and Computer-Assisted Intervention, pp. 130-137. Springer, Heidelberg (1998) 11. Bock, S., Khnel, C., Boskamp, T., Peitgen, H.O.: Robust vessel segmentation. In: Medical Imaging, pp. 691539–691539. International Society for Optics and Photonics (2008) ¨ uz, I., ˙ Unay, ¨ 12. Oks¨ D., Kadıpa¸sao˘ glu, K.: A hybrid method for coronary artery stenoses detection and quantification in CTA images. In: MICCAI Workshop 3D Cardiovascular Imaging: A MICCAI Segmentation (2012) 13. Chen, Y., Cao, Q., Zhuang, Z., Yang, Z., Luo, L., Toumoulin, C.: 3-D coronary vessel extraction using a novel minimum path based region growing. In: International Conference Image Analysis and Recognition, pp. 502–509. Springer, Heidelberg (2013)

Coronary Artery Vessel Tree Enhancement in Three-Dimensional CTA

279

14. Zhou, C., Chan, H.P., Chughtai, A., Kuriakose, J., Agarwal, P., Kazerooni, E.A., Wei, J.: Computerized analysis of coronary artery disease: performance evaluation of segmentation and tracking of coronary arteries in CT angiograms. Med. Phys. 41(8), 081912 (2014) 15. Zhou, C., Chan, H.P., Chughtai, A., Patel, S., Hadjiiski, L.M., Wei, J., Kazerooni, E.A.: Automated coronary artery tree extraction in coronary CT angiography using a multiscale enhancement and dynamic balloon tracking (MSCAR-DBT) method. Comput. Med. Imaging Graph. 36(1), 110 (2012) 16. Sato, Y., Nakajima, S., Atsumi, H., Koller, T., Gerig, G., Yoshida, S., Kikinis, R.: 3D multi-scale line filter for segmentation and visualization of curvilinear structures in medical images. In: CVRMed-MRCAS 1997, pp. 213–222. Springer, Heidelberg (1997) 17. Koller, T.M., Gerig, G., Szekely, G., Dettwiler, D.: Multiscale detection of curvilinear structures in 2-D and 3-D image data. In: Proceedings of IEEE Fifth International Conference on Computer Vision, pp. 864–869. IEEE (1995) 18. Sato, Y., Chen, J., Yamamoto, S., Tamura, S., Harada, N., Shiga, T., Harino, S., Oshima, Y.: Measuring microcirculation using spatiotemporal image analysis. In: Computer Vision. Virtual Reality and Robotics in Medicine, pp. 302–308. Springer, Heidelberg (1995) 19. Sato, Y., Chen, J., Zoroofi, R.A., Harada, N., Tamura, S., Shiga, T.: Automatic extraction and measurement of leukocyte motion in microvessels using spatiotemporal image analysis. IEEE Trans. Biomed. Eng. 44(4), 225–236 (1997) 20. Coronary Artery Stenoses Detection and Quantification Evaluation Framework. http://coronary.bigr.nl/stenoses/about.php 21. Kiri¸sli, H.A., Schaap, M., Metz, C.T., Dharampal, A.S., Meijboom, W.B., Papadopoulou, S.L., Cramer, M.J.: Standardized evaluation framework for evaluating coronary artery stenosis detection, stenosis quantification and lumen segmentation algorithms in computed tomography angiography. Med. Image Anal. 17(8), 859876 (2013) 22. Yang, G., Kitslaar, P., Frenay, M., Broersen, A., Boogers, M.J., Bax, J.J., Reiber, J.H., Dijkstra, J.: Automatic centerline extraction of coronary arteries in coronary computed tomographic angiography. Int. J. Cardiovasc. Imaging 28(4), 921–933 (2012)

Understanding Medical Text Related to Breast Cancer: A Review Noha Ali1(&), Eslam Amer2, and Hala Zayed2 1

2

Department of Computer Science, Modern Academy, Cairo, Egypt [email protected] Department of Computer Science, Faculty of Computers and Informatics, Benha University, Benha, Egypt {eslam.amer,hala.zayed}@fci.bu.edu.eg

Abstract. Breast Cancer is a harmful disease that has caused millions of women deaths. There are a huge number of publications on breast cancer research which offers a good source of information. Identifying breast cancer biomarkers is not a trivial task. There are many approaches used to identify and extract the needed information more efficiently from structured/unstructured text, uncover relationships and hidden rules from the huge amount of information such as text mining, machine learning and data mining. This paper reviews some of research literature on breast cancer using these approaches. Keywords: Breast cancer

 Text mining  Data mining  NLP

1 Introduction Since a long time ago breast cancer researches in imaging field had launched aiming to find the real causes of the disease. Nowadays the increased number of articles and researches about the breast cancer disease offer to us a good source of information to have a deeper knowledge and clear understanding of the disease. Figure 1 shows the number of articles yearly published on PubMed. Text mining, Machine Learning and Data mining applied to breast cancer has several directions the first one, Knowledge Gathering and Discovery, to find the hidden knowledge and rules behind huge amount of information. To achieve this goal using text mining you should select the data source then analysis this data to find the main entities and relationships between the entities, visualize these relationships to discover new knowledge which is a difficult task for humans to do it in a short time with high efficiency but in Machine learning or Data mining you should select the dataset and the appropriate algorithm. The second direction is Hypothesis generation to explore the possible solution for the existed problems. In this paper, we review the recent researches in the two mentioned directions. The paper is organized as follows: Sect. 2 presents the main characteristics of biomedical text and biomedical articles. Section 3 describes the main phases to understand the medical text. Section 4 presents a literature review. Section 5 describes the framework and defines the most popular tools used for text mining applied to breast cancer and conclusion in Sect. 6. © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_26

Understanding Medical Text Related to Breast Cancer

281

Fig. 1. Number of breast cancer articles yearly published on PubMed

2 Main Characteristics of Biomedical Text and Biomedical Articles The Biomedical text is different from the normal text in these characteristics: A biomedical term may have several written forms; terms abbreviations can cause ambiguity problems. For example, the abbreviation PC may mean prostate cancer or may also mean personal computer. Biomedical term may have more than one meaning in text. Biomedical terms may contain compound words or phrases or which has suffix or prefix. The biomedical articles are different from the other articles. The same article may emerge several domains, for example the article in biology computer science can also talk about artificial intelligence or applying some mathematics and so on. Due to domain specific, cancer research articles are very ambiguity and variable [1]

3 Main Phases to Understand the Medical Text Mainly there are three main phases to understand the medical text: Information Retrieval (IR), Named Entity Recognition (NER) and Information Extraction (IE). Information Retrieval is the process to find out the relevant information in database which is already exists. The most well-known biomedical database is PubMed it comprises more than 27 million citations on biomedical articles from MEDLINE, life science journals and online books. Citations may include links to full-text content from PubMed Central and publisher web sites. Named Entity Recognition (NER), is a subtask of information extraction that seeks to locate and classify named entities in text into pre-defined categories such as proteins, genes, .. etc. We can categorize the

282

N. Ali et al.

biomedical named entity recognition techniques to two main categories machine learning approaches and rule-based approaches. Machine learning approaches generally require standard annotated training datasets which usually takes a lot of human efforts to build. The performance of the recognition is often measured through Precision, recall, and F1 score. Dictionary-based approaches tend to miss undefined terms that are not mentioned in the dictionary, rule-based approaches require rules that identify terms from text, and the resulting rules are often not effective in all cases. Information Extraction: is the process to extract structured information from unstructured and/or semi-structured data, in other words it is the process to convert the unstructured data into structured information by finding the relation between the entities in the text. After these 3 main phases we visualize these relationships to understand the text and discover new knowledge.

4 Literature Review In this section we will review some of recent researches in the breast cancer using text mining, machine learning and data mining approaches. In the direction of Knowledge Gathering and Discovery this paper [2] the researchers provide an approach to extract biomedical information related to breast cancer using text mining technology. They used PubMed for information retrieval phase then they extract entities related to breast cancer using ABNER (A Biomedical Named Entity Recognizer) integrated with BerMiner and the result of this phase they can extracts 115214 entities by ABNER, 419539 ones by BerMiner, 61298 mutual entities between ABNER and BerMiner, then they used the co-occurrence statistics to extract entities’ relationships by weights to measure the relevance considering two level’s relationship: article and sentence, these extracted entities and their relationships are annotated in original experimental dataset as annotated breast cancer corpus. The result of this research: they find out a relationship between FGF8 protein and wnt1, FGF8 mRNA, breast cancer cell lines. Also in this paper [3] BCISearch is a searching platform, provides a web-portal for the collection of molecular information linked to breast cancer using text mining technology. BCISearch developed a system on Linux operating system using Java programming. They used PubMed using key word “breast cancer” in the information retrieval phase. They used they applied the Conditional Random Fields (CRFs) model to identify static information involving six categories entities and their relationships: protein, DNA, RNA, Cell-type, Cell-line, and Virus. The result of this phase is BCISearch could search 248997 Proteins, 71358 DNA, 7724 RNA, 58891 Cell-line, 871 Virus, and 31698 Cell-type. The BCISearch would assist researcher to understand breast cancer etiology in genetic factors. Then, the for relation extraction phase they use occurrence statistics to extract dynamic information. The result of this research is the identified static information and dynamic information could be represented as the formats containing tables and graphs for researcher’s browsing. In this paper [4] the researchers try to find and analysis the relation between breast cancer and obesity using text mining technology. They used PubMed database for information retrieval phase using 3 main groups: group I as Obesity, group II as Breast Cancer, and group III as breast cancer and obesity in combination. For the entity

Understanding Medical Text Related to Breast Cancer

283

recognition phase they used three softwares to extract keywords and genes from the data. They used RapidMiner and Coremine for Keywords extraction. From literature data, genes are extracted using PubMed Miner then data obtained from 3 softwares analyzed using spreadsheets in MS-Excel and visualized using Pi charts and Bar graphs. Then for relationship extraction they used PubMatrix to obtain co-occurrence between the selected 3 genes and 8 keywords. It is used to relate genes with keywords and their frequency of occurrence together. The result of this research: the authors found that the gene called AR could be potentially linked between obesity and breast cancer. Also natural language processing (NLP) used to discover new knowledge from the medical text related to breast cancer like this paper [5] authors are used natural language processing and information extraction techniques to extract the parameters required for cancer staging namely Tumor (T), Lymph nodes (N) and Metastases (M) to classify T, N and cancer stage S. The experimental dataset was 150 de-identified reports and these reports were in PDF-format. The result of this search: the system can determine the stage of cancer from breast cancer pathology reports. The accuracy of automatic staging process is 72%. The difference between text mining and natural language processing is: natural language processing (NLP) attempts to understand the meaning of text as a whole but text mining concentrate on solving a specific problem in a specific domain. Data Mining also used in social media sites to extract information from text like this paper [6]. Researchers have been used a clustering method called (k-medoid) to cluster the symptoms of breast cancer. They have been transforming up to 50,000 messages generated by 12,991 users of the breast cancer online forum on MedHelp.org into a structured form that include user ID, message content, and timestamp. The result of this research: they clustering the symptoms as shown in Fig. 2.

Fig. 2. Result of clustering symptoms of breast cancer

284

N. Ali et al.

And also Text Mining applied on Big Data infrastructure like this research [7] uses the cancer articles published on PubMed to classify the cancer type such as (Breast Cancer, Prostate Cancer, or Lung Cancer). They used some of machine learning algorithms like Naïve Bayes, Logistic Regression and Support Vector Machine and the result of this research they could classify the cancer type among tens of thousands of articles and the accuracy of classifying was 93.81%. In the way of rule based approaches authors creating a rule based system [8] for text mining to extract information from breast cancer pathology reports from Norway Cancer Registry. The experimental dataset was 40 pathology reports and these reports in XML-format. The result of this system precision 80%, recall 98% and an F-score 86% was achieved. In this paper [9] authors have been developed a machine learning based method to extract the relation between mutations and disease automatically from biomedical literature. They are applied this approach on 3 diseases one of them is the breast cancer. They used the PubMed abstracts as an experimental dataset, tmVar for mutation extraction and DNorm for extraction of disease name. The result of this research has obtained F-measures of 0.845 and 0.880 for beast and prostate and cancer mutations, consecutively. In this work [10] researchers are use the PubMed to extract entities from biomedical articles using a machine learning algorithms. They applied this methodology on 3 diseases thyroid cancer, breast cancer and lung Cancer. They are compared the result of extraction using support vector machine with the result of extraction using Feature Space algorithm based on SVM and they are proved that the Feature Space obtains better results than the SVM and also better than other approaches used for NER according to the results of precision, recall and F-measure. On the other hand the Hypothesis generation direction this paper [11] goals to contribute novel ideas for knowledge discovery and hypothesis generation related to genes involved in breast cancer. They use ready-API for IR, NER, and IE parts of the developed framework. They uses the PubMed for information retrieval phase Then they use BeCAS API to recognize the named entities in the abstracts and titles which identifies biomedical concepts in text. The advantage of BeCAS API: it is integrated with PubMed such that it requires only the PubMed ID of the abstract to perform the analysis and also used to generate hypothesis about the relationships between genes and others information associated with them, and also between genes itself. The relationships between the genes have been measured as co-occurrences within the abstracts, and the semantic relations or directionality between the genes. The authors also used additional information, such as the author’s country locations, and dates. The result of this research they find a relation between gene-country, gene-year and gene-gene to find out how the discoveries varied over time and how overlapping are the discoveries and the interest of various research groups in different countries. Table 1 provides a comparison between the previous mentioned approaches. Based on the previous work, when we use machine learning or data mining algorithms sometimes we need to convert the unstructured text to structured form to work on it but the text mining techniques has the ability to work directly on the unstructured text and extract information such as main entities and relations that hidden with the text. Due the large number of publications in breast cancer which is in unstructured form we suppose to use the framework described in the next section.

Understanding Medical Text Related to Breast Cancer

285

Table 1. Comparison between the mentioned approaches Research name [2]

Year Experimental dataset 2016 PubMed

[3]

2016 PubMed

Unstructured TEXT

[4]

2015 PubMed

Unstructured text

[5]

2015 Breast cancer pathology reports 2016 Social media (MedHelp. org) 2016 PubMed

[6]

[7]

Type of text

Approach used

Target

Unstructured text

Structured text

Text mining (Entity extraction + Relationship extraction) Text mining (Entity extraction + Relationship extraction) Text mining (Keyword extraction + Gene extraction + Relationship extraction) NLP + Information extraction

Find breast cancer biomarkers Find breast cancer biomarkers Find the relation between obesity and breast cancer Determining the stage of cancer

Unstructured text

Data mining (k-medoid clustering method)

Unstructured text Structured text

Text mining on big data infrastructure Text mining (rule based system)

Breast Cancer symptom clustering Classifying cancer types Extract information from breast cancer pathology reports Extract the relationship between disease and mutations Entity extraction Hypotheses generation

[8]

2015 Norwegian breast cancer pathology reports

[9]

2016 PubMed

Unstructured text

Machine learning

[10]

2016 PubMed

[11]

2016 PubMed

Unstructured text Unstructured text

Text mining + Machine learning NER + IE

5 The Framework and Most Popular Tools Used for Text Mining Applied to Breast Cancer The framework used to extract structured knowledge from unstructured text related to Breast Cancer is shown in Fig. 3 by using different tools in IR, NER and IE phases and using different techniques in each step or even change the entities to be extracted from the unstructured text, we can produce different results.

286

N. Ali et al.

Fig. 3. Text mining framework to extract structured knowledge from the unstructured text related to breast cancer

And the most popular tools used in the information retrieval, named entity recognition, information extraction are described below. 5.1

Information Retrieval (IR) Tools

The most well-known biomedical database is PubMed it comprises more than 27 million citations on biomedical articles from MEDLINE, life science journals and online books. There are other some IR systems, like PubMed Central (UKPMC), which retrieves full-text documents from PubMed. Textpresso uses ontology, returns searching goals for classes of biological concepts, related descriptions and classes of relations of objects PolySearch, which retrieves information including documents and database entries according to particular patterns of queries. Table 2 provides some of frequently tools used for information retrieval phase. Table 2. Some frequently tools used for information retrieval Tool PubMed PubMed central Poly search

5.2

Brief description Retrieve the biomedical abstracts only Retrieve the full-text biomedical articles Retrieves information including documents and database entries

Named Entity Recognition (NER) Tools

Machine learning approaches are now used widely for named entity recognition, e.g., Conditional Random Fields (CRFs), Hidden Markov Models (HMM), Support Vector Machines (SVMs), and Maximum Entropy (ME). There are some frequently used and popular tools for named entity recognition phase ABNER [12] and BeCAS described in Table 3.

Understanding Medical Text Related to Breast Cancer

287

Table 3. Some frequently and popular tools used for named entity recognition Tool ABNER BeCAS

5.3

Brief description It is a statistical machine learning system using linear-chain conditional random fields (CRFs). F1 scores of 70.5 and 69.9 respectively) BeCAS, the Biomedical Concept Annotation System, is a web-based tool for biomedical concept identification has the ability to select multiple concept types

Information Extraction (IE) Tools

The most popular methodology used for relation extraction is co-occurrence statistics and there are useful relationship extraction systems, such as iHOP [12], it is also based on a co-occurrence approach which detects the interactions between genes by using genes or proteins as hyperlinks between abstracts and sentences. Table 4 provides the tools used for relationship extraction phase. Table 4. Tools used for relationship extraction Tool iHOP BCMS

Brief description Allows researchers to explore a network of protein and gene interactions by directly navigating the pool of published scientific literature It is prototype platforms can automatically generate annotations for PubMed/Medline abstracts and Annotate types cover protein-protein interactions, gene names and gene IDs

6 Conclusion In this paper we reviewed the recent researches in text mining, data mining and machine learning approaches applied to breast cancer to extract information and knowledge discovering about the disease and we also supposed a text mining framework and the most popular tools applied in this field. The use of different tools on the unstructured text related to breast cancer with a different number of input articles may provide different results.

References 1. Yan, S., Qi, Y.: Apply Text Mining to Advance Cancer Research. Int. J. Pharma Med. Biol. Sci. 4(2), 132 (2015) 2. Gong, L., Yan, R., Liu, Q., Yang, H., Yang, G., Jiang, K.: Extraction of biomedical information related to breast cancer using text mining. In: 2016 12th International Conference on Natural Computation, Fuzzy Systems and Knowledge Discovery (ICNC-FSKD), pp. 801–805. IEEE (2016) 3. Gong, L., Yang, R., Yang, H., Jiang, K., Dong, Z., Chen, H., Yang, G.: BCISeach: a searching platform of breast cancer text mining for biomedical literature. In: 2016 12th International Conference on Semantics, Knowledge and Grids (SKG), pp. 158–161. IEEE (2016)

288

N. Ali et al.

4. Kumar, A., Thakur, P., Gupta, K., Pal, A.: Text mining approach to analyse the relation between obesity and breast cancer data. Int. Lett. Nat. Sci. 44 (2015) 5. Gladis, D., Manipadam, M.T., Ishitha, G.: Breast cancer staging using natural language processing. In: 2015 International Conference on Advances in Computing, Communications and Informatics (ICACCI), pp. 1552–1558. IEEE (2015) 6. Marshall, S.A., Yang, C.C., Ping, Q., Zhao, M., Avis, N.E., Ip, E.H.: Symptom clusters in women with breast cancer: an analysis of data from social media and a research study. Qual. Life Res. 25(3), 547–557 (2016) 7. Ye, Z., Tafti, A.P., He, K.Y., Wang, K., He, M.M.: SparkText: biomedical text mining on big data framework. PLoS ONE 11(9), e0162721 (2016) 8. Weegar, R., Dalianis, H.: Creating a rule based system for text mining of Norwegian breast cancer pathology reports. In: Sixth International Workshop on Health Text Mining and Information Analysis (Louhi), p. 73 (2015) 9. Singhal, A., Simmons, M., Lu, Z.: Text mining for precision medicine: automating disease-mutation relationship extraction from biomedical literature. J. Am. Med. Inform. Assoc. 23(4), 766–772 (2016) 10. Kanya, N., Ravi, T.: Named Entity Recognition From Biomedical Text-An Information Extraction Task. ICTACT J. Soft Comput. 6(4) (2016) 11. Jurca, G., Addam, O., Aksac, A., Gao, S., Özyer, T., Demetrick, D., Alhajj, R.: Integrating text mining, data mining, and network analysis for identifying genetic breast cancer trends. BMC Res. Notes 9(1), 236 (2016) 12. Settles, B.: ABNER: an open source tool for automatically tagging genes, proteins and other entity names in text. Bioinformatics 21(14), 3191–3192 (2005) 13. Fernández, J.M., Hoffmann, R., Valencia, A.: iHOP web services. Nucleic Acids Res. 35 (suppl 2), W21–W26 (2007)

Intelligent Algorithms for Optimal Selection of Virtual Machine in Cloud Environment, Towards Enhance Healthcare Services Ahmed Abdelaziz1, Mohamed Elhoseny2,5(&), Ahmed S. Salama3, A.M. Riad2, and Aboul Ella Hassanien4,5 1

Department of Information Systems Higher Technological Institute Cairo, Cairo, Egypt 2 Faculty of Computers and Information Sciences, Mansoura University, Mansoura, Egypt [email protected] 3 Computer and Information Systems Department, Sadat Academy for Management Sciences, Cairo, Egypt 4 Faculty of Computers and Information, Cairo University, Giza, Egypt 5 The Scientific ResearchGroup in Egypt (SRGE), Cairo, Egypt

Abstract. Cloud computing plays a very important role in healthcare services (HCS). Cloud computing for HCS can restore patients’ records, diseases diagnosis and other medical domains in less time and less of cost. In cloud computing, optimally chosen of virtual machines (VMs) is very significant to interest in healthcare services (IHS) (patients, doctors, etc.) in HCS to implementation time and speed of response to medical requests. This paper proposes a new intelligent architecture for HCS. also, this paper proposes three intelligent algorithms are a genetic algorithm (GA), particle swarm optimization (PSO) and parallel particle swarm optimization (PPSO) to find optimal chosen of VMs in a cloud environment. For that, this paper uses MATLAB tool to find optimal intelligent algorithm and CloudSim to find optimal chosen of VMs in a cloud environment. The results proved that PPSO algorithm is better than GA and PSO algorithms. Keywords: Cloud computing  Healthcare services Parallel particle swarm optimization



Genetic algorithm



1 Introduction HCSs are considered of the most medical domains of interest to the world at present. The optimal utilize of HCS protects much public from death. IHS of the HCS such as the patients and the doctors use old methods to restore patients records to detect the patients’ health condition in a long time, but using new methods such as cloud computing can restore patients records in less time and less cost. Cloud computing has become critical to IHS in many fields for transmitting medical services over the Internet. Cloud computing is sending application, infrastructure services to huge numbers of IHS with assorted and dynamically changing requirements. © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_27

290

A. Abdelaziz et al.

Cloud is consists of datacenters, servers, VMs, resources, etc. Datacenters are containing a big number of resources and list of different applications. Hosts are consists of a large number of VMs to store and regain several medical resources to stakeholders. The IHS in healthcare services suffers from time retard of medical requests on cloud computing environment [14]. Many causes are lead to time retard of medical requests such as execution time (make span) and the waste of resources utilization. This paper proposes intelligent algorithms to find optimal chosen of VMs helps the IHS to minimize their total execution time of medical requests on cloud computing environment and maximize utilization of resources. To estimate the quality of those three algorithms, this paper introduces a comparative study to their work in a cloud environment. The comparison targets to see which algorithm can be used to enhance the quality of HCS. This paper also chooses the optimal algorithm through execution time and speed. The contribution of this paper can be summarized as follows: • Optimal selection of VMs is very significant to IHS to minimize total execution time of medical requests on cloud environment and maximize utilization of resources. • Present Comparison between intelligent algorithms (GA, PSO, and PPSO) [11–13, 15] to execution of these algorithms on MATLAB package. It also selected the optimal algorithm through execution time and speed. Implement the optimal intelligent algorithm on CloudSim tool to find the optimal chosen of VMs on a cloud environment. This paper is organized as follows: Sect. 2 introduces presents related work. Section 3 introduces a proposed intelligent model of cloud computing for HCS, Sect. 4 introduces a proposed GA, PSO and PPSO based algorithms for cloud computing, Sect. 5 introduces the exponential results. Section 6 presents conclusion and future work.

2 Related Work Through related work, many types of research were done on applying and using intelligent algorithms such as PSO and GA as follow: AJITH SINGH. N and et al. [1], presented a new approach to finding optimal VM placement in a datacenter in cloud environment based on honeybee algorithm with hierarchical clustering. This study seeks to detect optimal VM placement to maximize resources utilization and reduce energy consumption in servers. This study implemented experiments on Planet Lab where new approach help to detect optimal VM placement and reduce energy consumption. Researcher opinion, clarity of proposed a new approach to finding optimal VM placement and reduce energy consumption in servers in cloud computing environment. Lei Chen and et al. [2], this study is presented multitarget heuristic algorithm to solve VM placement problem to improve retrieve resources efficiently and reduce the number of servers in cloud computing. This study focuses on VM placement efficiently, maximize resources utilization, wastage rate and reduce energy consumption in

Intelligent Algorithms for Optimal Selection of Virtual Machine

291

servers in the datacenter. Researcher opinion, multitarget heuristic algorithm can detect optimal VM placement in a cloud environment. R. S. Camati and et al. [3], presented a new approach to solving VM placement problem based on multiple multidimensional knapsack problem. This study tries to find treatment to VM placement problem to facilitate task scheduling and minimize energy consumption in servers in the datacenter. Simulation experiments are implemented on CloudSim package. Researcher opinion, clarity of proposed a new approach to solve VM placement problem, facilitate task scheduling and minimize energy consumption in hosts in cloud computing environment. B. Benita Jacinth Suseela and et al. [4], presented a novel model to find optimal VM placement based on hybrid particle swarm optimization (PSO) and Ant colony optimization (ACO). This study tries to detect optimal VM placement to improve VM allocation time, minimize energy consumption and maximize resources utilization. Implementation results show that a novel model maximizes resources utilization, reduces power consumption and provides load balancing in hosts in the datacenter. Researcher opinion, PSO-ACO algorithm may outperform on ACO algorithm to find optimal VM placement in a cloud environment. J. Zhao and et al. [5], presented a new approach to finding the selection the best VM placement in datacenter based on improved PSO. This study seeks to enhance the total incremental energy consumption in servers, protects the quality of VM running and maximizes resources utilization. Simulation experiments are implemented on planet lab. Researcher opinion, improved PSO algorithm may find the best VM placement in cloud computing environment. Y.S. Dong and et al. [6], presented a new strategy to detect the optimal VM placement in cloud environment based on distributed parallel GA (DPGA). This study tries to improve performance VM running, reduce energy consumption in servers and maximize utilization of resources. Researcher opinion, DPGA outperforms on default GA to find optimal VM placement in a cloud environment. C. G. Garino [7] presented a new model to find the optimal scheduling of VMs on cloud environment based on PSO. This study makes a comparison between PSO, round robin (RR) and GA to detect the best VM placement. Simulation experiments are implemented on CloudSim tool. Researcher opinion, PSO outperforms on RR and GA to detect the best scheduling of VM placement in cloud computing environment. K. Parikh and et al. [8], presented a new policy to find the best VM allocation in cloud computing based on Hungarian algorithm. This study tries to find the best load balancing of services on the cloud through scheduling of VM in the datacenter. This study verified the results on CloudSim package tool. Researcher opinion, a new policy may find the best VM allocation to solve load balancing problem on a cloud environment. G. Kaur and et al. [9], presented various domains based on Cloud computing such as virtualization, distributed computing, grid computing, etc. This paper introduced a new way to obtain high benefit from resources; optimized resources utilization is important. Researcher opinion, lack of clarity of PSO algorithm to achieve optimized of resources utilization.

292

A. Abdelaziz et al.

3 The Proposed Intelligent Architecture of Cloud for HCS This section introduces the architecture of the proposed intelligent cloud computing for HCS. It composed of four levels are IHS devices, IHS tasks, cloud broker and network administrator as shown below in Fig. 1. The communication devices services are responsible for executing variety network communication management between IHS and the cloud.

Fig. 1. Intelligent architecture of cloud computing for HCS

Intelligent Algorithms for Optimal Selection of Virtual Machine

293

IHS uses a different of devices (PC, Laptop, Smartphone, etc.) to send a different of medical tasks easily through cloud computing to get variety medical services such as restoring patient’s records, diseases diagnosis, electronic medical records (EMR), etc. Cloud broker is responsible for transmitting and receiving tasks from the cloud service. Each network may have many application servers = {server1, server2… and servern} providing the SaaS and can be allocated to execute the cloud IHS tasks. Each application server has a set of resources = {R1, R2 … and Rn} that can be allocated for the coming IHS tasks. Each network has a network administrator that is responsible for the coordination of the communication between the servers inside the network and between this network and other networks in the clouds. A network administrator is responsible for applying the intelligent technique (PPSO algorithm) that it uses to obtain the optimal chosen of VMs in the cloud to improve the task scheduling process which leads to minimize total time of IHS requests and maximize resources utilization.

4 Proposed GA, PSO and PPSO Based Algorithms for Cloud The proposed architecture is based on GA, PSO and PPSO algorithms to calculate implementation time of IHS requests and fitness function to determine the optimal VM in datacenter through three attributes are CPU utilization, turnaround time and waiting time. This attributes consists of three parameters are arrival time (AT), burst time (BT) and completion time (CT), shown below in Table 1. Table 1. Parameters of optimal selection of VMs SN 1 2 3

Data CPU Utilization (U) Turnaround time (TT) Waiting time (WT)

Description The percentage of CPU capacity used during a specific period of time. Time difference between completion time and arrival time. Time difference between turnaround time and burst time.

Formula U = 100% − (% time spent in the idle task) TT = CT − AT WT = TT − BT

This paper proposed GA, PSO and PPSO based algorithms of cloud computing for HCS as shown below in Figs. 2 and 3. The proposed algorithms seek to get optimal chosen of VMs to minimize implementation time off requests from IHS and maximization of resources utilization. 4.1

The Proposed GA for Cloud Computing

Assume that there are M chromosomes (VMs) in all the clouds. Each VM in the cloud (s) is considered a chromosome which represents a potential solution (VM) that can be allocated for executing the stakeholder’s subtasks. GA for Cloud Computing is proposed as follows (A declarative flow chart [16] is shown in Fig. 2):

294

A. Abdelaziz et al.

Fig. 2. The proposed flow chart of GA for cloud computing

4.2

Fig. 3. The proposed flow chart of PSO for cloud computing

The Proposed PSO for Cloud Computing

Assume that there are M particles (VMs) in all the clouds. Each VM in the cloud(s) is considered a particle which represents a potential solution (VM) that can be allocated for executing the stakeholder’s subtasks. PSO for Cloud Computing is proposed as follows (A declarative flow chart is shown in Fig. 3): – Update each Particle Velocity and position according to Eq. (1) [10]. Vk1 þ 1 ¼ w Vk1 þ C1 rand2  ðpbesti - Ski Þ þ ðgbesti - Ski Þ Where: Vk1 þ 1 W Rand Ski pbesti gbesti

= = = = = =

Velocity of agent i at iteration k, Weighting function, Random number between 0 and 1, Current position of agent iteration k, Pbest of agent i, gbest of the group.

ð1Þ

Intelligent Algorithms for Optimal Selection of Virtual Machine

295

The weighting function used in Eq. 2: w = Wmax Where: Wmax Wmin itermax iter

= = = =

Wmax - Wmin  iter itermax

ð2Þ

Initial weight, Final weight, Maximum iteration number, Current iteration number.

In PPSO, parallel processing aims to produce the same results that achievable using multiple processors with the goal of reducing the run time. The same steps described in PSO will be applied.

5 Experimental Results This section is composed of implementation of GA, PSO, and PPSO on MATLAB tool and implementation of PPSO on CloudSim tool as follows: 5.1

Implementation of GA, PSO, and PPSO on MATLAB

This paper provides the execution of the GA, PSO, and PPSO on MATLAB tool and comparison between these algorithms through execution time (ET). GA algorithm showed a positive relationship between the populations and implementation time, whenever the increased the number of populations which reflects the increased in the implementation time. PSO algorithm showed a positive relationship between the particles and implementation time, whenever the increased the number of particles which reflects the increased in the implementation time. PPSO algorithm showed a positive relationship between the particles and implementation time, whenever the increased the

Fig. 4. Relationship between GA, PSO, and PPSO

296

A. Abdelaziz et al.

number of particles which reflects the increased in the implementation time. Figure 4 showed the relationship between GA, PSO, and PPSO where implementation time in PPSO decreased compared with GA and PSO. 5.2

Implementation of PPSO Algorithm on CloudSim

This section proposes PPSO algorithm on CloudSim to get optimal chosen of VMs for IHS to minimize implementation time off requests and maximize resources utilization. The first execution is default CloudSim where the first task takes the first VM, the second task take the second VM, etc. Total time to build successful cloudlets is 3 s as shown in Fig. 5.

Fig. 5. Results of default CloudSim

The second execution is PPSO algorithm on CloudSim to get optimal chosen of VMs where the first task may take the second VM; the second task may take the fourth VM, depending on the number of processors, task status, and VM status. Total time to build successful cloudlets is 1 s. PPSO algorithm better than CloudSim default to total time in build successful cloudlets as shown in Fig. 6.

Fig. 6. Sample of results of PPSO algorithm on CloudSim

Figure 7 showed an inverse relationship between the number of processors and Makespan (time) of requests from IHS, whenever the increased the number of processors which reflects the decreased in the makespan.

Intelligent Algorithms for Optimal Selection of Virtual Machine

297

Fig. 7. Proposed PPSO leads to minimized makespan with increasing in no. of processors

6 Conclusion and Future Work This paper introduced intelligent architecture based on GA, PSO, and PPSO to get optimal chosen of VMs in a cloud environment. This paper showed PPSO algorithm better than GA and PSO to implementation time. Therefore, this paper proposes the application of PPSO algorithm to obtain the best chosen of VMs to support IHS in minimizing implementation time of medical requests (tasks), improve task scheduling, maximize resources utilization and applied this algorithm on CloudSim package. The future work is to apply new swarm optimization algorithms such as gray wolfs, cat optimization and ant colony optimization to obtain an optimal selection of VMs on a cloud environment.

References 1. Singh, A., Hemalatha, M.: Cluster-based bee algorithm for virtual machine placement in cloud data centre. JATIT 57(3), 1–10 (2013) 2. Chen, L., Zhang, J., Cai, L., Meng, T.: MTAD: a multitarget heuristic algorithm for virtual machine placement. Int. J. Distrib. Sensor Netw. 2015, 1–14 (2014). Article no. 5 3. Camati, R., Calsavara, A., Lima, L.: Solving the virtual machine placement problem as a multiple multidimensional knapsack problem. In: The Thirteenth International Conference on Networks, pp. 253–260. IEEE (2014) 4. Suseela, B., Jeyakrishnan, V.: A Multi-objective hybrid ACO-PSO optimization algorithm for virtual machine placement in cloud computing. IJRET 3(4), 474–476 (2014) 5. Zhao, J., Hu, L., Ding, Y., Xu, G., Hu, M.: A heuristic placement selection of live virtual machine migration for energy-saving in cloud computing environment. PloS ONE 9(9), 1– 13 (2014). Springer 6. Dong, Y., Xu, G., Fu, X.: A distributed parallel genetic algorithm of placement strategy for virtual machines deployment on cloud platform. Sci. World J. 2014, 1–12 (2014) 7. Pacini, E., Mateos, C., Garino, C.: Dynamic scheduling based on particle swarm optimization for cloud-based scientific experiments. CLEI Electron. J. 14(1), 1–14 (2014) 8. Parikh, K., Hawanna, N., Haleema, P., Jayasubalakshm, R.: Virtual machine allocation policy in cloud computing using CloudSim in Java. IJGDC 8(1), 145–158 (2015) 9. Kaur, G., Sharma, Er.S.: Optimized utilization of resources using improved particle swarm optimization based task scheduling algorithms for cloud computing. IJETAE 4(6), 110–115 (2014)

298

A. Abdelaziz et al.

10. Darwish, N., Mohamed, A., Zohdy, B.: Applying swarm optimization techniques to calculate execution time for software modules. IJARAI 5(3), 12–17 (2016) 11. Elhoseny, M., Yuan, X., Yu, Z., Mao, C., El-Minir, H., Riad, A.: Balancing energy consumption in heterogeneous wireless sensor networks using a genetic algorithm. IEEE Commun. Lett. 19(2), 2194–2197 (2015). doi:10.1109/LCOMM.2014.2381226 12. Yuan, X., Elhoseny, M., Minir, H., Riad, A.: A genetic algorithm-based, dynamic clustering method towards improved WSN longevity. J. Netw. Syst. Manag. 25(1), 21–46 (2017). doi:10.1007/s10922-016-9379-7. Springer, US 13. Metawa, N., Elhoseny, M., Kabir Hassan, M., Hassanien, A.: Loan portfolio optimization using genetic algorithm: a case of credit constraints. In: 12th International Computer Engineering Conference (ICENCO), pp. 59–64. IEEE (2016). http://dx.doi.org/10.1109/ ICENCO.2016.7856446 14. Elhoseny, H., Elhoseny, M., Abdelrazek, S., Bakry, H., Riad, A.: Utilizing service oriented architecture (SOA) in smart cities. Int. J. Adv. Comput. Technol. (IJACT) 8(3), 77–84 (2016) 15. Metawa, N., Hassan, M.K., Elhoseny, M.: Genetic algorithm based model for optimizing bank lending decisions. Expert Syst. Appl. 80, 75–82 (2017). http://www.sciencedirect.com/ science/article/pii/593S0957417417301677 16. Metawa, N., Elhoseny, M., Hassanien, A.: An automated information system to ensure quality in higher education institutions. In: 12th International Computer Engineering Conference (ICENCO). IEEE (2016). doi:10.1109/ICENCO.2016.7856468

Gesture Recognition for Improved User Experience in Augmented Biology Lab Gehad Hassan and Nashwa Abdelbaki(&) Nile University, Cairo, Egypt [email protected], [email protected]

Abstract. The Learning process in education systems is one of the most important issues that affect all societies. Advances in technology have influenced how people communicate and learn. Gaming Techniques (GT) and Augmented Reality (AR) technologies provide new opportunities for a learning process. They transform the student’s role from passive to active in the learning process. It can provide a realistic, authentic, engaging and interesting learning environment. Hand Gesture Recognition (HGR) is a major driver in the field of Augmented Reality (AR). In this paper, we propose an initiative Augmented Biology Lab (ABL) which mix between Augmented Reality and Gaming Techniques to make the learning process more effective in biology learning. Our contribution in this paper focuses on the integration of hand gesture recognition technique for the use within the proposed ABL to reduce the gap between biology lessons, especially in body anatomy and understanding in an interactive and collaborative way. Furthermore, we present a reliable and robust hand gesture recognition system (ABL-HGR). Keywords: Augmented reality  Gaming techniques  Hand gesture recognition  Support vector machine

1 Introduction Teacher-centered learning model, where students sit and listen to their teacher in their seats is a ludicrous way of learning. It focused on rote learning and memorization with no effort at understanding the meaning. The main goal of education for students in this model turned into gaining high test scores, which diminish the feeling of development in their reasoning [1]. Technological innovations have been integrated into the educational arena; provide an exciting opportunity to design the learning environment that is realistic, authentic, engaging and extremely fun. They help the teacher in transferring knowledge and the student in grasping that knowledge. They help students to construct knowledge rather than to reproduce a series of facts [2]. Augmented Reality (AR) is one of the most powerful technologies that have been integrated into the educational arena. It allows the mixing of virtual content into a real-world physical context. It helps the students to gain better understanding by visualizing virtual 3D models in the real environment [3]. Understanding biology concepts represent a big challenge to students. There are many branches in biology such as Anatomy, Aerobiology, Botany, Cell biology, © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_28

300

G. Hassan and N. Abdelbaki

Ecology and much more branches. So the nature of science itself represents a challenge because it requires memorizing a great deal of information. Also the teaching methods are among the reasons for the difficulties in biology such as using textboxes, teaching the abstract level of concepts, and the overloaded biology curriculum [4]. In this paper, we introduce an innovative Augmented Biology Lab (ABL) that mixes Augmented Reality concepts and Gaming Techniques to improve the learning process. The direct goal of the ABL is to target mainly the elementary school students. ABL makes students able to learn the shape of their bodies’ organs, their positions, and their functions. The system will position the organ or the biological system in its right place on the image of the student. Our contribution in this paper focuses on the integration of gesture recognition system for the use within Augmented Biology Lab. The rest of the paper is organized into 4 more section. In Sect. 2, we provide a literature review related to hand gesture recognition. Afterward, hand gesture recognition approach for the proposed ABL will be introduced in Sect. 3. In Sect. 4, we discuss the experiment and results obtained from the presentation of the proposed hand gesture recognition technique. Finally, the conclusion and future work are introduced in Sect. 5.

2 Hand Gesture Recognition A general hand gesture recognition system consists of 3 main modules; Hand Extraction, Features Extraction and Recognition [5]. Figure 1 shows the block diagram of typical hand gesture recognition. First, the hand extraction module which extracts the hand gesture from the background of the gesture image.

Fig. 1. Hand gesture recognition system

Gesture Recognition for Improved User Experience

301

Hand extraction phase is the most challenging step towards hand gesture recognition. Uncontrolled environment, lighting condition, skin color detection, rapid hand motion, and self-occlusions are the challenges need to be considered while extracting the hand gesture [6]. Many types of researches have proposed techniques for hand extraction. These techniques utilize several types of visual features like skin color, shape, motion and anatomical models of hands. RGB used in [7]. HSV used in [8] and YCbCr used in [9] skin detection. In [10] an adaptive skin color segmentation algorithm based on Gaussian Mixture Model (GMM) has been proposed. The second main module is Feature Extraction; it extracts features that can be used to determine the meaning of a given gesture. Many researcher works have proposed techniques for hand features extraction. In [11], the author extracts a set of features like motion orientation of hand center, change of boundary size, the number of fingers, wrist angle, the ratio of width to height, the angle of the finger and finally cross sections. In [12], the author used an Edge Oriented Histogram (EOH) features and multiclass SVM. In [13], a technique was proposed using Principal Component Analysis (PCA) and Point Cloud descriptors for dynamic hand gesture recognition. In [14] a method is implemented for extraction hand features using Meanshift Analysis, motion features and shape features. In [15] a method is introduced for hand feature extraction using localized contour sequences (LCS) and block based features. And in [16] a set of features like Distance metric, Finger EarthMover’s Distance (FEMD) were used for Hand Gesture Recognition system Using Kinect Sensor. The last main module is Recognition; it interprets the semantics that the hand(s) location, posture, or gesture conveys. Recognition is affected by the proper selection of features of gesture. A number of researches works have been developed for the sake of hand gesture recognition. In [17], the author introduced a technique using multilayer feed forward neural network to identify 24 letters of the alphabet (without J and Z), with 150 training gestures collected from datasets. In [18] a technique is introduced to train feature vector to train a feed-forward back propagation network. In [19] a new method is proposed to support hand gesture recognition in the static form, using artificial neural network. A method was presented in [20] using SVM for hand gesture recognition system in complex background for 20 hand gestures.

3 Hand Gesture Recognition in Augmented Biology Lab (HGR-ABL) 3.1

Hand Gesture Database

National University of Singapore (NUS) Hand Posture Dataset II was used in hand gesture recognition module. It has 10 different gestures and taken from 40 individuals; in a total of 2000 samples. NUS dataset was conducted under cluttered background, uncontrolled environment, and high variation gestures in terms of color, scale, and orientation. In ABL lab, 5 different gestures were used in the proposed hand gesture recognition system; each gesture represented a gesture command mode. These commands were

302

G. Hassan and N. Abdelbaki

Fig. 2. ABL defined gesture

used in the proposed ABL lab that can perform 5 tasks (Close, Open, Minimize, Maximize, and Next) (Fig. 2). 3.2

Hand Extraction

First, we blurred the image to remove noise and preserve edges in the image. Then we used edge and color to extract the hand region from the background. We used a combination of RGB and HSV color spaces to detect the skin portion of an image. According to [21] the rules for skin segmentation in RGB color space were given by: R [ 95 && G [ 40 && B [ 20 && jR  Gj [ 15 ðmaxðR; G; BÞ  minðR; G; BÞÞ [ 15

&& R [ G &&R [ B

ð1Þ

Similarly, according to [22] the rules for skin segmentation in HSV color space were given by: 0  H  50 && 0:20  S  0:68 && 0:35  V  1

ð2Þ

Afterwards, the skin similarity of each pixel is calculated using HSV color space and the average pixel values of the skin color by using the following Equation [23].

Sskin

sffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi   Hsmax  Hsmin 2 ¼ 1  ðH  Hs0 Þ2 þ ðS  Ss0 Þ Ssmax  Ssmin

ð3Þ

Where, Sskin is the skin similarity of the pixel, H&S are the hue and saturation values of the pixel, Hs0&Ss0 are the average skin values in hue and saturation channels, Hsmax &Hsmin are the maximum and minimum of skin values in hue channel, and Ssmax &Ssmin are the maximum and minimum of skin values in saturation channel.

Gesture Recognition for Improved User Experience

303

Table 1. Skin color parameters Ss0 Hsmax Hsmin Ssmax Ssmin Hs0 0.1073 0.3515 0.1892 0.0122 0.6250 0.0558

The values of Hs0 , Ss0 , Hsmax ; Hsmin ; Ssmax ; and Ssmin are obtained from [23] and given in Table 1. By using skin similarity, the edges and shapes can be enhanced within complex background images [23]. Then we applied a binary thresholding to remove nonskin pixels. We assumed hand region was the largest region in the image. This region was detected by extracting the largest connected region and applying some morphological operations. The resulted image may contain false positives because some of background present was of similar color as skin color. We used edge detectors for detecting boundaries of objects in a scene. We used the luminance (Y) plane and sobel edge detector for detecting the edges of the hand regions. To make a boundary between the hand region and skin background, we applied an “AND” operation on the edge detected. Then we applied some morphological operations to get the final segmented hand region in the image. 3.3

Features Extraction

We used contour-based information for feature extraction process. Contour-based information is geometrical features which help in reduce complexity, preserve storage space needed and time consuming due to simplicity of processing binary images. We extracted 16 features, which are: 1. 2. 3. 4.

Position and Orientation of hand Area and Perimeter of hand Furthest-Distance from Centroid of the hand contour Image Gradients Features which are: Image gradients are a directional change in intensity in an image. There are 2 components of the gradients; horizontal and vertical gradients. We use Sobel gradient operator which is a joint Gaussian smoothing operation plus differentiation operation. It computes the gradient of an image intensity function. Then we extracted the gradients features which are: a. Number of changes in X-direction b. Number of changes in Y-direction c. Mean and standard deviation of distances between all the neighboring gradient points. 5. Hu moments; Moments are properties of an object that uniquely represent its shape, additionally; they are invariant to translation, rotation or scale. Hu [24] proposed a method for describing a shape by 7 moments, calculated from central moments of orders 2 and 3, which are scaling, rotation and translation invariant.

304

3.4

G. Hassan and N. Abdelbaki

Recognition

After extracting 16 features from all the training hand gestures, a multiclass Support Vector Machine (SVM) is then trained to automatically determine which command to apply according to the defined gestures. SVM have been widely applied to pattern recognition problems in different applications. The n-dimensional input data fx1 ; x2 ; . . .. . .; xn g is the dataset belonging to two classes and ti 2 f1; 1g is the labeled of xi . If these data are linearly separable, the decision function can be defined as [25, 26]: W T xi þ w0 Where W is known as the weight vector and w0 is a bias term. The bias w0 translates the hyper plane away from the origin. Points lying on the right side or left side of the hyperplane must satisfy the following conditions:  W xi þ w0 T

 1;  1;

for for

ti ¼ 1 ti ¼ 1

Both equations can be implicitly formulated as:   ti W T xi þ w0  1;

for i ¼ 1; . . .::; N

The goal of Support Vector Machine is to find the optimal separating hyperplane which maximizes the margin between 2 sets. Thus, the hyperplane that optimally separates the data can be found by solving the following constrained optimization problem [25, 26] [30]:   1 Minimize kwk2 Subject to constraint ti W T xi þ w0  1 2 To minimize a function subject to some constraints, we include the constraints in the objective function using Lagrange multipliers. The decision function can be formulated as: N X     1 J ¼ WTW ¼ ai ti W T xi þ w0  1 2 t¼1

where ai > 0 are the Lagrange multipliers.

Gesture Recognition for Improved User Experience

305

4 Experimental Results As shown in Tables 2 and 3, the proposed skin detection approach has several good performances on some backgrounds and sometimes fails in other. It produced an average recall of 80.48%, an average precision of 81.91% and average F-Score of 78.15% for 988 hand gestures database through different background. Table 2. The dataset statistics Gesture

# Images

Close Open Minimize Maximize Next

188 200 200 200 200 988

# Correct segmented images 132 126 135 120 130 643

#Backgrounds

38 40 40 40 40

# Correct segmented background 28 26 25 26 27

# Incorrect segmented background 10 14 15 14 13

Table 3. Recall, precision and F-score results Gesture Close Open Minimize Maximize Next Total

Recall 80.49% 81.10% 80.63% 80.65% 79.55% 80.48%

Precision 83.95% 85.53% 82.26% 81.38% 76.44% 81.91%

F-score 80.52% 80.51% 78.07% 76.92% 74.73% 78.15%

NUS dataset was conducted under different background, was going from simple to complex. It introduced different lighting conditions. The proposed approach produced its best performance with background of high level of contrast and low dynamic ranges of skin colors such as the backgrounds. In recognition experiment, first we trained multiclass SVM classifier on the training data for the 5 defined hand gestures used in proposed ABL. We considered in this experiment recognition rate as performance measure. In our case we have only training data, so we used Repeated Random Sub-sampling cross validation method. It randomly splits the dataset into training set and test set, where the size of the sets is defined by user. For each split, the model is fit to the training data, and the accuracy is calculated using the test data. Then the accuracy results were averaged over the splits.

306

G. Hassan and N. Abdelbaki

We have 4 multiple scenarios for recognition. • 20 Random Selection of 250 training * 250 testing, with cost: 1, and Gamma: 0.25. The recognition rate within the range from 94% to 98.8%. The average recognition rate is 96.6% for recognizing the testing set. • 20 random selection of 250 training * 250 testing by varying C [1:20]. The recognition rate with varying C parameter is within 97.94% to 99.6%, with average recognition rate of 98.93%. • 20 random selection of 500 training * 200 testing, with cost: 1, and Gamma: 0.25. The recognition rate is within the range from 99.7% to 100%. The average recognition rate is 98.6% for recognizing the testing set. • 20 random selection of 500 training * 200 testing by varying C [1:20]. The recognition rate with varying C parameter is within the range of 98.8% to 100%, with average recognition rate of 99.5%.

5 Conclusion and Future Work New technologies like Augmented Reality and Gaming Techniques have become very important learning and teaching techniques in education systems. Integration of these technologies will increase students’ interest and retention of information. We presented an innovative Augmented Biology Lab (ABL) that helps in supporting learning biology by mixing Augmented Reality and Gaming Techniques together. In this paper we presented a reliable hand gesture recognition technique for recognizing 5 gestures used within Augmented Biology Lab (ABL); Open Close, Minimize, Maximize and Next gestures. The proposed system consists of 3 main stages; Hand Extraction, Feature Extraction and Gesture Recognition. The proposed skin detection approach has produced results with an average recall of 80.48% and average precision of 81.91% under cluttered background, uncontrolled environment and high variation gestures in terms of color, scale and orientation. In recognition experiment, The proposed approach has performance of 94.8% correct recognition results on average of 5 types of gestures. In the future, there are many ideas that can enhance the proposed ABL. Visualizing the organs in 3D instead of 2D. This will make the student feel that she/he could imagine the concepts of biology lessons in an effective way. Adding concept of adaptive games. This feature will make the ABL’s gaming method dynamically adaptable to every student. It could be implemented by sensing the student behavior and style of learning and making this an input to the game so that the scenario of the game could adapt to the player. The other feature we are planning to add to the proposed ABL is the speech recognition which aims to recognize the spoken word as an input to computer and make certain command or action.

Gesture Recognition for Improved User Experience

307

References 1. Edmiston, B.: Transforming teaching and learning with active and dramatic approaches: engaging students across the curriculum. Choice Rev. Online 51(11), 51–6292–51–6292 (2014) 2. Cahalan, J.M.: Teaching classroom video recording analysis to graduate students: strategies for observation and improvement. Coll. Teach. 61(2), 44–50 (2013) 3. Azuma, R.T.B.: A survey of augmented reality. Presence: Teleoperators Virtual Environ. 6(4), 355–385 (1997) 4. Marzouk, D., Attia, G., Abdelbaki, N.: Biology learning using augmented reality and gaming techniques. Environment 2, 3 (2013) 5. Shanableh, T., Assaleh, K., Al-Rousan, M.: Spatio-temporal feature-extraction techniques for isolated gesture recognition in arabic sign language. IEEE Trans. Syst. Man and Cybern. Part B (Cybernetics) 37(3), 641–650 (2007) 6. Hasan, M.M., Mishra, P.K.: Superior skin color model using multiple of Gaussian Mixture Model. Br. J. Sci. 6(1), 1–14 (2012) 7. Chaudhary, A., Gupta, A.: Automated switching system for skin pixel segmentation in varied lighting. In: 2012 19th International Conference on Mechatronics and Machine Vision in Practice (M2VIP), pp. 26–31. IEEE (2012) 8. Lakshmi, H.V., PatilKulakarni, S.: Segmentation algorithm for multiple face detection in color images with skin tone regions using color spaces and edge detection techniques. Int. J. Comput. Theor. Eng. 2(4), 552 (2010) 9. De Dios, J.J., Garcia, N.: Face detection based on a new color space YCgCr. In: 2003 International Conference on Image Processing, Proceedings, vol. 3, pp. III-909. IEEE (2003) 10. Hassanpour, R., Shahbahrami, A., Wong, S.: Adaptive gaussian mixture model for skin color segmentation. World Acad. Sci. Eng. Technol. 41, 1–6 (2008) 11. Vo, D.-H., Huynh, H.-H., Meaunier, J.: Geometry-based dynamic hand gesture recognition. J. Sci. Technol 1, 13–19 (2015) 12. Nagarajan, S., Subashini, T.: Static hand gesture recognition for sign language alphabets using edge oriented histogram and multi class SVM. Int. J. Comput. Appl. 82(4), 28–35 (2013) 13. Kopinski, T., Gepperth, A., Handmann, U.: A real-time applicable dynamic hand gesture recognition framework. In: 2015 IEEE 18th International Conference on Intelligent Transportation Systems (ITSC), pp. 2358–2363. IEEE (2015) 14. Ghaleb, F.F., Youness, E.A., Elmezain, M., Dewdar, F.S.: Vision-based hand gesture spotting and recognition using CRF and SVM. J. Softw. Eng. Appl. 8(07), 313 (2015) 15. Ghosh, D.K., Ari, S.: Static hand gesture recognition using mixture of features and SVM classifier. In: 2015 Fifth International Conference on. Communication Systems and Network Technologies (CSNT), pp. 1094–1099. IEEE (2015) 16. Ren, Z., Yuan, J., Meng, J., Zhang, Z.: Robust part-based hand gesture recognition using kinect sensor. IEEE Trans. Multimedia 15(5), 1110–1120 (2013) 17. Nguyen, T.-N., Huynh, H.-H., Meunier, J.: Static hand gesture recognition using artificial neural network. J. Image Graph. 1(1), 34–38 (2013) 18. Ashfaq, T., Khurshid, K.: Classification of hand gestures using Gabor filter with Bayesian and naive Bayes classifier. Int. J. Adv. Comput. Sci. Appl. 7(3), 276–279 (2016) 19. Schmidt, T., Araujo, F.P., Pappa, G.L., Nascimento, E.R.: Real-time hand gesture recognition based on sparse positional data. In: Proceedings of WVC 2014, Brazilian Workshop on Computer Vision, pp. 243–248 (2014)

308

G. Hassan and N. Abdelbaki

20. Ohn-Bar, E., Trivedi, M.M.: Hand gesture recognition in real time for automotive interfaces: a multimodal vision-based approach and evaluations. IEEE Trans. Intell. Transp. Syst. 15(6), 2368–2377 (2014) 21. Kovac, J., Peer, P., Solina, F.: Human skin color clustering for face detection, vol. 2. IEEE (2003) 22. Wang, Y., Yuan, B.: A novel approach for human face detection from color images under complex background. Patt. Recogn. 34(10), 1983–1992 (2001) 23. Pisharady, P.K., Vadakkepat, P., Loh, A.P.: Attention based detection and recognition of hand postures against complex backgrounds. Int. J. Comput. Vision 101(3), 403–419 (2013) 24. Flusser, J.: Moment invariants in image analysis. Proc. World Acad. Sci. Eng. Technol. 11(2), 196–201 (2006) 25. Luss, R., d’Aspremont, A.: Support vector machine classification with indefinite kernels. Adv. Neural Inf. Process. Syst. 953–960 (2008) 26. Ben-Hur, A., Weston, J.: A user’s guide to support vector machines. Data Min. Tech. Life Sci. 609, 223–239 (2010)

Parameter Optimization of Support Vector Machine Using Dragonfly Algorithm Alaa Tharwat1,3(B) , Thomas Gabel1 , and Aboul Ella Hassanien2,3 1

Faculty of Computer Science and Engineering, Frankfurt University of Applied Sciences, Frankfurt am Main, Germany [email protected] 2 Faculty of Computers and Information, Cairo University, Giza, Egypt 3 Scientific Research Group in Egypt (SRGE), Cairo, Egypt http://www.egyptscience.net

Abstract. Support Vector Machine (SVM) parameters such as penalty and kernel parameters have a great influence on the complexity and accuracy of the classification model. In this paper, Dragonfly algorithm (DA) has been proposed to optimize the parameters of SVM; thus, the classification error can be decreased. To evaluate the proposed model (DA-SVM), the experiment adopted six standard datasets which are obtained from UCI machine learning data repository. For verification, the results of the DA-SVM algorithm are compared with two well-known optimization algorithms, namely, Genetic Algorithm (GA) and Particle Swarm Optimization (PSO). The experimental results demonstrated that the proposed model is capable to find the optimal values of the SVM parameters and avoids the local optima problem. Keywords: Support Vector Machine (SVM) · Parameter optimization · Dragonfly Algorithm (DA)

1

Introduction

Support Vector Machine (SVM), is one of the well-known machine learning methods for classification problems. It has been utilized in many applications such as biometrics [1], chemoinformatics [2,3], and agriculture [4,5]. In SVM, the training data are used to train the classification model, and then this model is used to classify an unknown sample. SVM has penalty parameter, and kernel parameters that have a great influence on the performance of SVM [6]. Swarm optimization algorithms were used to solve optimization problems including parameter tuning problem [6]. For example, Wu et al. proposed a novel hybrid Genetic Algorithm (GA) for SVM parameter tuning to forecast the maximum electrical daily load [7]. Particle Swarm Optimization (PSO) is utilized in many studies to search for the optimal SVM parameters. Subasi used PSO for finding the SVM parameters for diagnosis of neuromuscular disorders in EMG signals [8]. Moreover, PSO was also used for parameter optimization of the SVM and c Springer International Publishing AG 2018  A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3 29

310

A. Tharwat et al.

feature selection [9]. Further, Ant Colony Optimization (ACO) was used to find the optimal SVM parameters [10]. Alaa et al. used Bat Algorithm (BA) for finding the optimal SVM parameters using two different kernel functions [6]. Dragonfly Algorithm (DA) is one of the nature inspired optimization algorithms. DA was used in many application such as optimizing network configuration [11], numerical optimization [12], and solving optimal power flow problems [13]. However, due to their stochastic nature of the DA as all swarm optimization algorithms, is never guaranteed to find an optimal solution for any problem, but they will often find a good solution if one exists. In this paper, the objective is to use DA algorithm to present a DA-SVM model for parameters optimization of SVM, which improves the classification rate. This proposed approach tunes the parameters values to make the optimal separating hyperplane obtainable in both linear and nonlinear classification problem. The rest of the paper is organized as follows: Sect. 2 presents the background of SVM classifier and DA. The proposed model DA-SVM is introduced in Sect. 3; Experimental scenarios and discussions are introduced in Sect. 4. Concluding remarks and future work are provided in Sect. 5.

2 2.1

Preliminaries Support Vector Machine (SVM) Classifier

Given N linearly separable training samples, X = {x1 , x2 , . . . , xN }, where xi is the ith training sample and each sample has d attributes and it is in one of two classes yi ∈ {±1}. The line, wT x + b = 0, represents the decision boundary between the two classes, where w indicates a weight vector, b is the bias, and x is the training sample. The hyperplane divides the space into two spaces [14]. The goal of SVM is to find the values of w and b to orientate the hyperplane to be as far as possible from the closest samples, i.e. support vectors, and to construct the two planes, H1 and H2 , as follows, H1 → wT xi + b = +1 for yi = +1 and H2 → wT xi + b = −1 for yi = −1, where wT xi + b ≥ +1 for positive class and wT xi + b ≤ −1 for negative class, and the two equations can be combined as follows, yi (wT xi + b) − 1 ≥ 0 ∀i = 1, 2, . . . , N . The distance from H1 and H2 to the hyperplane or decision boundary is 1 , and the sum of these denoted by d1 and d2 , respectively, where d1 = d2 = w distances represent the margin of SVM. In SVM, the margin width needs to be maximized as follows: 1 2 w 2 s.t. yi (wT xi + b) − 1 ≥ 0 ∀i = 1, 2, . . . , N min

(1)

Parameter Optimization of Support Vector Machine

311

Equation (1), can be formulated as follows:  w − αi (yi (wT xi + b) − 1) 2 i 2

min LP =

N 2   w T − = αi yi (w xi + b) + αi 2 i i=1

(2)

where αi ≥ 0, i = 1, 2, . . . , N is the Lagrange multipliers. The dual form for SVM can be written as follows: max LD =

N 

αi −

i=1

s.t. αi ≥ 0 ,

N 

1 αi αj yi yj xTi xj 2 i,j

(3)

αi yi = 0 ∀i = 1, 2, . . . , N

i=1

where LD is the dual form of LP . A new sample x0 is classified by evaluating y0 = sgn (wT x0 + b) and if y0 is positive; thus, the new sample belongs to the positive class; otherwise, it belongs to the negative class. Many misclassified samples result when the data are non-separable. Hence, the constraints of linear SVM must be relaxed. Also, nonlinear separable data can be addressed using kernel functions as follows: N

 1 2 i min w + C 2 i=1

(4)

T

s.t. yi (w φ(xi ) + b) − 1 + i ≥ 0 ∀i = 1, 2, . . . , N where i is the distance between the ith training sample and the corresponding margin hyperplane and it should be minimized, C is the regularization or penalty parameter and it controls the trade-off between the slack variable penalty and the size of the margin, and φ is a nonlinear function where the data can be linearly separable. There are different kernel functions such as Linear Kernel, K(xi , xj ) = xi , xj , Radial Basis Function (RBF), K(xi , xj ) = exp(−||xi − xj ||2 /2σ 2 ), and polynomial kernel of degree d, K(xi , xj ) = (xi , xj + c)d , are used [15]. In this study, RBF is applied in the SVM to obtain the optimal solution. 2.2

Dragonfly Algorithm (DA)

The idea of DA algorithm inspired from static and dynamic swarming behaviors. Dragonflies create swarms and fly to different positions in a static swarm, which is similar to exploration phase. However, they fly in big swarms along one direction, which is the exploitation phase [16,17].

312

A. Tharwat et al.

The behavior of any swarm follows the following principals: – Separation: which is the static collisions avoidance for the individuals from their neighbors, and it is defined as follows: Si = −

N 

X − Xj

(5)

j=1

where X indicates the position of the current solution, Xj is the position of the j th neighborhood individual, and N represents the number of neighborhood members [16]. – Alignment: which represents the velocity matching between the members of the same group, and it is defined as follows: N

j=1

Ai =

Vj

N

(6)

where Vj is the velocity of Xj . – Cohesion: which represents the tendency of individuals towards the center of the mass of the neighborhood, and it is defined as N Ci =

j=1

N

Xj

−X

(7)

Attraction to the food can be calculated as follows, Fi = X + − X, where X is the position of the food, and the distraction from enemy X − is given by Ei = X − + X [16]. The position of the dragonflies are adjusted using the position, X, and the step, ΔX, as follows, Xt+1 = Xt + ΔXt+1 , and it is calculated as follows, ΔXt+1 = sSi + aAi + cCi + f Fi + eEi + wΔXt , where s is the separation weight, Si is the separation for Xi , a is the alignment weight, Ai is the alignment of Xi , c indicates the cohesion weight, Ci represents the cohesion of Xi , f is the food factor, Fi is the food source of Xi , e is the enemy factor, Ei is the position of Xi , w is the inertia weight, and t is the current iteration. With s, a, c, f, and e, different explorative and exploitative behaviors can be obtained during optimization. In other words, these parameters can make a balance between exploration and exploitation in DA. More details about DA can be found in [16]. +

3

The Proposed Model: DA-SVM

In this section, we describe the proposed DA-SVM model (as shown in Fig. 1) to find the optimal values of SVM parameters. The detailed explanation is as follows:

Parameter Optimization of Support Vector Machine

3.1

313

Data Preprocessing

In this step, the data are preprocessed to (1) avoid features in greater numeric ranges dominating those in smaller numeric ranges, (2) avoid numerical difficulties during the calculation, (3) help to get higher classification accuracy [6]. f −min , Each feature can be normalized to the range [0, 1] as follows, f  = max−min where f is the original value, min and max are the lower and upper bounds of the feature value, respectively, and f  is the scaled value. 3.2

Parameters’ Initialization

The parameters of DA such as the number of solutions, and a maximum number of iterations, s, a, c, e, f , and w were initialized. DA sends the values of C and kernel parameter to train SVM using the training data; hence, the search space is two-dimensional. The positions of DA are initialized randomly, and the searching range of parameter C of SVM was bounded by Cmin = 0.01 and Cmax = 35000, and the searching range of σ was bounded by σmin = 0.01 and σmax = 100 [6]. Increasing these limits enlarges the search space; and hence, more dragonflies are needed to search for the optimal solution, which results in more computation and slow convergence rate. 3.3

Fitness Evaluation

For each solution, the training dataset is used to train the SVM classifier, while the testing dataset is used to calculate misclassification rate. This rate is the ratio between the number of misclassified samples (Ne ) to the total number of testing samples (N ) as denoted in Eq. (8). The optimal solution is located in a position where the values of C and kernel parameter at that location obtain the minimum testing error rate. The positions of DA are then updated, and the DA is terminated when a maximum number of iterations are reached. M inimize : F =

4

Ne N

(8)

Experimental Results and Discussion

The experiments were conducted out to evaluate the performance of the proposed DA-SVM algorithm for the parameter optimization of SVM. The platform adopted to develop the DA-SVM algorithm is a PC with the following features: Intel(R) Core (TM) i5-2400 CPU@ 3.10 GHz, 4G RAM, a Window 7 operating system, and Matlab 7.10.0 (R2010a). To evaluate the proposed algorithm, six standard classification datasets were used. The datasets were obtained from University of California at Irvin (UCI) Machine Learning Repository [18–20]. The descriptions of all datasets are listed in Table 1. Moreover, in all experiments, k-fold cross-validation tests have used. In k-fold crossvalidation, the original samples of the dataset were randomly partitioned into

314

A. Tharwat et al.

Fig. 1. Flowchart of the proposed model (DA-SVM). Table 1. Datasets description. Dataset Iris (D1) Ionosphere (D2) Liver-disorders (D3)

Dimension

# Samples

# Classes

4

150

3

34

351

2

6

345

2

Breast Cancer (D4) 13

683

2

Sonar (D5)

60

208

2

Wine (D6)

13

178

3

k subsets of (approximately) equal size, and the experiment is run k times. For each time, one subset was used as the testing set, and the other k − 1 subsets were used as the training set. The average of the k results from the folds can then be calculated to produce a single estimation. In this study, the value of k was set to 10. 4.1

Parameter Setting for DA

Tuning the parameters for any optimization algorithm is vital as designing the algorithm itself. In this section, the influence of the number of dragonflies and

Parameter Optimization of Support Vector Machine

315

Fig. 2. Effect of the number of dragonflies on the performance of DA-SVM model for Wine dataset: (a) Testing error rate of the DA-SVM model with different numbers of dragonflies; (b) computational time of the DA-SVM using different numbers of dragonflies.

the number of generations on the testing error rate and computational time of the proposed model (DA-SVM) were investigated using Wine dataset and RBF kernel function. Number of Dragonflies: The number of solutions needs to be sufficient for exploring the search space. In this experiment, the influence of the number of solutions on the testing error and computational time of the proposed model was investigated. The results of this experiment are shown in Fig. 2a and b. From the figures, it is observed that increasing the number of solutions reduces the misclassification rate; however, more computational time was needed. Number of Generations: The number of generations has a significant effect on the performance of the DA-SVM model. In this experiment, the effect of the number of generations on the testing error and computational time of the proposed model was tested when the number of generations was ranged from five to 30. The results of three runs are shown in Fig. 3a and b. As shown, when the number generations was increased, the testing error was decreased until it reached an extent at which increasing the number of generations did not affect the misclassification error rate. Besides, the computational time raised when the number of generations was increased. On the basis of the above parameter analysis and research results, our model used 20 iterations and 20 solutions, and the values of the other parameters were reported in [16]. 4.2

Experimental Scenario and Discussions

In this experiment, our proposed DA-SVM algorithm was compared with some other techniques proposed in [9] and [21]. RBF kernel is employed in these references. Hence, in this experiment, the C and σ parameters were optimized by

316

A. Tharwat et al.

Fig. 3. Effect of the number of generations on the performance of DA-SVM model for Wine dataset using three runs. (a) Testing error rate of the DA-SVM model with different numbers of generations; (b) Computational time of the DA-SVM using different numbers of generations.

using our proposed algorithm. 10-fold cross-validation was used to estimate the test error rate of each approach, and the obtained results are illustrated in the form of average ± standard deviation. Table 2 lists the results of this experiment. As illustrated in Table 2, DA-SVM algorithm obtained lower classification error rates than the PSO+SVM algorithm in all datasets. The reason is that the PSO algorithm has fixed parameters need to be tuned first, while the parameters of DA, can be changed iteratively. Thus, DA makes a trade-off automatically between exploration to exploitation. In addition, the DA-SVM algorithm, in most cases, achieved the lowest classification error than the GA+SVM algorithm. To further compare the results of our model with the other results, we used the nonparametric Wilcoxon signed rank test for all of the datasets. As shown in Table 2, the p-value for D6 (Wine dataset) is larger than the predicted statistical significance level of 0.005, but the other p-values are smaller than the significance level of 0.005. These results reflect that our model achieved the best results with a remarkable difference. Figure 4 shows the contour plots of the misclassification error rate using Liver and Wine datasets. Each node or point in the contour plot represents a parameter combination, i.e. C and σ, and the color indicates the misclassification error value with the parameter combination. As displayed in Fig. 4, the misclassification error are approximately like a bowl shape; thus, the global solution(s) can be easily reached. This means that the optimized procedure to search for the optimized parameters for SVM is feasible and achieved high results. To sum up, the developed DA-SVM algorithm revealed more appropriate parameters, giving lower misclassification error rate across different datasets. Even so, we still cannot guarantee that the DA-SVM algorithm must perform well and outperform other methods in different applications. In fact, many factors may have an influence on the quality of the proposed models such as the number of samples, representativeness, diversity of training sets, and the number of features.

Parameter Optimization of Support Vector Machine

317

Table 2. Comparison between the DA-SVM, PSO+SVM approach proposed by [9], and GA+SVM approach proposed by [21] (%). Dataset (1) DA-SVM (2) PSO+SVM (3) GA+SVM p-Value for Wilcoxon testing (1 vs. 2)

p-Value for Wilcoxon testing (1 vs. 3)

D1

0.0 ± 0.0

1.5 ± 0.43

0.0 ± 0.0

-kAn+a PP-PRD —> PREP ADJP PREP —> min ADJP—> DET+ADJ+CASE_DEF_GEN NOUN+CASE_INDEF_ACC DET+ADJ+CASE_DEF_GEN —> Al +mumokin+i NOUN+CASE_INDEF_ACC —> jid* +AF SBAR-SBJ —> SUB_CONJ S SUB_CONJ —> >an S —> VP VP —> IV3MS+IV+IVSUFF_MOOD:S NP-SBJ SBAR-ADV IV3MS+IV+IVSUFF_MOOD:S —> ya +HoSul+a NP-SBJ —> NOUN +CASE_INDEF_NOM NOUN+CASE_INDEF_NOM — > hujuwm+N SBAR-ADV —> SUB_CONJ S SUB_CONJ —> law S —> VP VP —> PRT NO_FUNC NP-SBJ PPCLR PRT —> NEG_PART NEG_PART —> lam NO_FUNC —> nbdA NP-SBJ —> -NONE-NONE- —> * PP-CLR —> PREP NP PREP —> biNP —> NOUN+CASE_DEF_GEN POSS_PRON_3MP NOUN+CASE_DEF_GEN —> -qaSof +iPOSS_PRON_3MP —> -him PUNC —> ″ PUNC —> .

422

K. Ezzeldin et al. Table 2. Evaluation file for the two trees output Tree 1 Tree 2 Percision = 0.685714285714286 Percision = 0.541666666666667 Recall = 0.63157894736842 Recall = 0.56521739130435 F1 = 0.657534246575342 F1 = 0.553191489361702 Tag Accuracy = 0.806 Tag Accuracy = 0.9 Over All Percision = 0.6136904761904762 Over All Recall = 0.5983981693363845 Over All F1 = 0.6053628679685223 Over All Tag Accuracy = 0.8527777777777779

Set One (with Diacritic): Table 3. With Diacritic example Buckwalter Arabic transliteration of testing sample file (with Diacritic) Example: wa- -$ab*a HariyqN fiy Aldab*Abapi vum*a nuqila Aljunuwdu Al*a*iyna kAnuwA *T* fiy dAxili- -hA * based complex type

Fig. 2. OWL classes generation steps

3.4

Refinement and Evaluation Phase

All previous steps may present wrong ideas or connections; along these lines, a refinement stage is required. Ontology is not a static portrayal of the domain, but rather with the advancement of uses, in quality and number, the ontology component may likewise require a few changes. A few ideas, and also properties, connections and different parameters can be included or adjusted. Incremental development ought to be bolstered proficiently and could coordinate another progression of data extraction if new assets are not yet incorporated into ontology design. The evaluation of the ontology improves the results of the output data so the information of the output will be more accurate.

462

D. Fadl et al.

The data-driven evaluation method is used. The mutual information between two terms t1 and t2 is calculated by the ontology-based VSM. Here, we also adopted cosine similarity to measure the term mutual information between their corresponding vectors as shown in Eq. (1): Pn x j1 ex j2 t1 :t2 j¼1 e qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi cosð\ðt1 ; t2 ÞÞ ¼ ¼ qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi P Pn 2 n kt1 k  kt2 k ex 2 ex j¼1

j1

j¼1

ð1Þ

j2

Arabic ontology is going to be refined by going through the cosine similarity measures more than one time to make sure that the output Arabic ontology matches the input XML files. Using this similarity measures the output Arabic ontology will be with more accurate results. First output ontology may contain unnecessary concepts, elements and relationships. After the refinement steps any unnecessary information will be removed and any missing data will be added. The data of the generated ontology will be compared with the input xml extracted terms to make sure that the concepts, elements and relationships generated matches correctly with the output Arabic ontology.

4 A Case Study: Insectivore’s Animal The input to the framework is the XML documents, and the output is our Arabic ontology. The input is selected from three websites Arabic Wikipedia (https://ar. wikipedia.org), Saudi Wildlife http://www.saudiwildlife.com/site/home/) and (http:// www.uobabylon.edu.iq) websites in the domain of animals in Egypt and Saudi Arabia. In this case study, XML documents contain information about insectivore’s animals (mammals) are used. The first phase of the framework is the extraction. In the extraction phase, the tags containing the Arabic words in every XML web page will be selected. Then XML document that connects these tags will be created. Finally, the XML schema for the XML file is generated. Figure 3 shows the XSG for the XML case study that entails the Arabic information the XML file contents are preferred to be shown in the form of XSG to be more clarified and more justified. The second phase in our model is XML schema parsing, in which two steps are described: the XSG generation and the Auxiliary mapping. The first step is the XML schema graph (XSG) that will be generated in English and translated into Arabic, as shown is Fig. 4. The insectivore’s animal case study contains 10 complex type classes and 10 elements. Figure 4 shows the output of the second phase of the framework. In this Phase Two XSG files are created, create the first is the English version of the extracted XML file contents. Then, and the second XSG is the translated version of the XSG. This version is the first step for the generation of the Arabic ontology framework. In the generation phase, OWL classes are generated according to the rules are and introduced in Fig. 3. This step is based on the Arabic XSG and the derived Types Map (Auxiliary mapping). That is, the Arabic XSG is traversed to retrieve complex type vertices, for each one of these vertices, an OWL class is generated. Then, the derived Types Map is used to set up subclass Of relationships between classes. Finally,

Automatic Arabic Ontology Construction Framework

463

Fig. 3. XSG for XML file

the mapping connections are used to help to construct the ontology and make sure that the generated ontology contains generated with the right connections (Table 1). In this case study, we have 10 complex types, 10 classes generated to represent these complex types and indicated the relationship subclass of, the object properties and datatype properties. The final output of our proposed system is an Arabic ontology with its relations and properties like in Fig. 5 below. The generated ontology is evaluated using data-driven evaluation method. In this method, the output of our ontology is compared with the source document using Eq. (1). After applying the similarity measure in this case study, the best-obtained result was 65%. The evaluation was done based on the cosine similarity measure function. This result can be refined more than one time to reach satisfying results. By supporting the evaluation methods with mining technique the results can be improved.

‫‪D. Fadl et al.‬‬

‫‪464‬‬

‫‪Fig. 4. English & Arabic XSG of the running insectivores’ animal case study‬‬

‫‪Table 1. Insectivores’ mapping connections‬‬ ‫‪Object property‬‬ ‫ﺭﺗﺒﻪ ﺍﻛﻠﻪ ﺍﻟﺤﺸﺮﺍﺕ )ﺛﺪﻳﻴﺎﺕ = ‪OPC1‬‬ ‫)ﺗﺤﺘﻮﻯ ﻋﻠﻰ‬ ‫ﺭﺗﺒﻪ ﺍﻛﻠﻪ ﺍﻟﺤﺸﺮﺍﺕ )ﺗﺤﺘﻮﻱ = ‪Opc2‬‬ ‫ﻋﻠﻰ ﻋﺎﺋﻠﻪ( ﺍﻟﻘﻨﺎﻓﺬ‬ ‫ﺭﺗﺒﻪ ﺍﻛﻠﻪ ﺍﻟﺤﺸﺮﺍﺕ )ﺗﺤﺘﻮﻯ = ‪Opc3‬‬ ‫ﻋﻠﻰ ﻋﺎﺋﻠﻪ( ﺍﻟﺰﺑﺎﺑﻴﺎﺕ‬ ‫ﺍﻟﻘﻨﺎﻓﺬ )ﺗﺤﺘﻮﻯ ﻋﻠﻰ ﻧﻮﻉ( ﺍﻟﻘﻨﻔﺬ = ‪Opc4‬‬ ‫ﺍﻻﺳﻮﺩ‬ ‫ﺍﻟﻘﻨﺎﻓﺬ )ﺗﺤﺘﻮﻯ ﻋﻠﻰ ﻧﻮﻉ( ﺍﻟﻘﻨﻔﺬ = ‪Opc5‬‬ ‫ﻃﻮﻳﻞ ﺍﻻﺫﻥ‬ ‫ﺍﻟﻘﻨﻔﺬ ﺍﻻﺛﻴﻮﺑﻰ ﺍﻟﻘﻨﺎﻓﺬ )ﺗﺤﺘﻮﻯ = ‪Opc6‬‬ ‫)ﻋﻠﻰ ﻧﻮﻉ‬ ‫ﺍﻟﺰﺑﺎﺑﻴﺎﺕ )ﺗﺤﺘﻮﻯ ﻋﻠﻰ ﻧﻮﻉ( = ‪Opc7‬‬ ‫ﺯﺑﺎﺑﻪ ﺍﻟﺤﻘﻞ‬ ‫ﺍﻟﺰﺑﺎﺑﻴﺎﺕ )ﺗﺤﺘﻮﻯ ﻋﻠﻰ ﻧﻮﻉ( = ‪Opc8‬‬ ‫ﺍﻟﺰﺑﺎﺑﻪ ﺍﻟﻤﻨﺰﻟﻴﻪ‬

‫‪Data type properties‬‬ ‫‪connections‬‬ ‫ﺻﻔﻪ‪Dtc1 = cc1/1‬‬ ‫ﺻﻔﻪ‪Dtc2 = cc1/2‬‬ ‫ﺻﻔﻪ‪Dtc3 = cc1/3‬‬ ‫ﺻﻔﻪ ‪Dtc4 = cc1/4‬‬ ‫ﺻﻔﻪ ‪Dtc5 = cc1/5‬‬ ‫ﺻﻔﻪ ‪Dtc6 = cc1/6‬‬ ‫ﺻﻔﻪ ‪Dtc7 = cc3/1‬‬ ‫ﺻﻔﻪ‪Dtc8 = cc4/1‬‬ ‫ﺻﻔﻪ‪Dtc9 = cc5/1‬‬ ‫ﺻﻔﻪ‪Dtc10 = cc7/1‬‬ ‫ﺻﻔﻪ ‪Dtc 11 = cc8/1‬‬

‫‪Class connections‬‬ ‫ﺛﺪﻳﻴﺎﺕ\ﺭﺗﺒﻪ ﺍﻛﻠﻪ ﺍﻟﺤﺸﺮﺍﺕ = ‪Cc1‬‬ ‫ﺛﺪﻳﻴﺎﺕ\ﺭﺗﺒﻪ ﺍﻛﻠﻪ ﺍﻟﺤﺸﺮﺍﺕ\ﺍﻟﻘﻨﺎﻓﺬ = ‪Cc2‬‬ ‫ﺛﺪﻳﻴﺎﺕ\ﺭﺗﺒﻪ ﺍﻛﻠﻪ ﺍﻟﺤﺸﺮﺍﺕ\ﺍﻟﻘﻨﺎﻓﺬ = ‪Cc3‬‬ ‫\ﺍﻟﻘﻨﻔﺬ ﺍﻻﺳﻮﺩ‬ ‫ﺛﺪﻳﻴﺎﺕ\ﺭﺗﺒﻪ ﺍﻛﻠﻪ ﺍﻟﺤﺸﺮﺍﺕ\ﺍﻟﻘﻨﺎﻓﺬ = ‪Cc4‬‬ ‫\ﺍﻟﻘﻨﻔﺬ ﺍﻻﺛﻴﻮﺑﻲ‬ ‫ﺛﺪﻳﻴﺎﺕ\ﺭﺗﺒﻪ ﺍﻛﻠﻪ ﺍﻟﺤﺸﺮﺍﺕ\ﺍﻟﻘﻨﺎﻓﺬ = ‪Cc5‬‬ ‫\ﺍﻟﻘﻨﻔﺬ ﻃﻮﻳﻞ ﺍﻻﺫﻥ‬ ‫ﺛﺪﻳﻴﺎﺕ\ﺭﺗﺒﻪ ﺍﻛﻠﻪ ﺍﻟﺤﺸﺮﺍﺕ = ‪Cc6‬‬ ‫\ﺍﻟﺰﺑﺎﺑﻴﺎﺕ‬ ‫ﺛﺪﻳﻴﺎﺕ\ﺭﺗﺒﻪ ﺍﻛﻠﻪ ﺍﻟﺤﺸﺮﺍﺕ = ‪Cc7‬‬ ‫\ﺍﻟﺰﺑﺎﺑﻴﺎﺕ\ﺯﺑﺎﺑﻪ ﺍﻟﺤﻘﻞ‬ ‫ﺛﺪﻳﻴﺎﺕ\ﺭﺗﺒﻪ ﺍﻛﻠﻪ ﺍﻟﺤﺸﺮﺍﺕ = ‪Cc8‬‬ ‫\ﺍﻟﺰﺑﺎﺑﻴﺎﺕ\ﺍﻟﺰﺑﺎﺑﻪ ﺍﻟﻤﻨﺰﻟﻴﻪ‬

Automatic Arabic Ontology Construction Framework

Data type property

Object property

Class

465

Sub Class of

Fig. 5. Insectivores’ ontology

5 Conclusions There are various studies conducted in the Arabic language in Semantic Web. The purpose of these studies is to improve the Arabic information retrieval on the web. In this paper, we introduced our Arabic ontology framework from semi-structured data (XML document). The framework created an automatic ontology to accelerate the process of Arabic ontology creation. The framework presents automatically generate Arabic ontology generation from semi-structured data (XML file). It can be used to produce ontology to for any language since it uses the translation of the generated XML schema graph. It also provides an automatic evaluation to the generated Arabic ontology using cosine similarity measurements. By using this similarity measures, the output Arabic ontology will be more accurate and with correct data provide more

466

D. Fadl et al.

accurate data and verify correctness. We have designed an innovative framework that automates the ontology generation process. The novelty resides in generating the Arabic ontology, in the form of XML graph schema (XSG), from semi-structured data (XML documents associated with graph schema). The framework can be used to produce ontology to any language. It also provides an automatic evaluation to the generated Arabic ontology using cosine similarity measures. The paper presents a case study for insectivore’s animals to provide a real example of the proposed framework.

References 1. Saariluoma, P., Nevala, K.: From concepts to design ontologies. Cognitive Science, University of Jyväskylä, Finland (2009) 2. Roche, C.E.: Ontology: a survey. University of SavoieEquipeCondillac - Campus Scientifique, 73 376 Le Bourget du Lac Cedex – France (2002) 3. Brewster, C., Ciravegna, F., Wilks, Y.: User-centred ontology learning for knowledge management. In: Proceedings of the 6th International Conference on Applications of Natural Language to Information Systems-Revised Papers (2002) 4. Sojka, P., Choi, K.-S., Fellbaum, C., Vossen, P. (eds.): Introducing the Arabic WordNet Project. In: Proceedings of the Third International WordNet Conference (2006) 5. Al-Safadi, L., Al-Badran, M., Al-Junidey, M.: Developing ontology for arabic blogs retrieval. Int. J. Comput. Appl. 19(4), 40–45 (2011). (0975–8887) 6. Hazman, M., El-Beltagy, S.R., Rafea, A.: Ontology learning from textual web documents. INFOS2008, Cairo-Egypt, 27–29 March 2008 7. Al-Zoghbyaa, A.M., Ahmed, A.S.E., Hamzac, T.T.: Arabic semantic web applications – a survey. J. Emerg. Technol. Web Intell. 5(1), 52–69 (2013) 8. Hegazy, A., Sakre, M., Khater, E.: Arabic ontology model for financial. Proc. Comput. Sci. 62, 513–520 (2015) 9. Benaissa, B.-e., Bouchiha, D., Zouaoui, A., Doumi, N.: Building ontology from texts. Proc. Comput. Sci. 73, 7–15 (2015) 10. Ghneim, N., Safi, W., Al, M., Ali, S.: Building a Framework for Arabic Ontology Learning. Damascus University, Damascus (2008) 11. Ghawi, R., Cullot, N.: Building ontologies from XML data sources. In: 1st International Workshop on Modelling and Visualization of XML and Semantic Web Data (MoViX 2009), held in conjunction with DEXA 2009, Linz, Austria, September 2009 12. Maedche, A., Staab, S.: Measuring similarity between ontologies. In: Knowledge Engineering and Knowledge Management: Ontologies and the Semantic Web, Proceedings of the 13th International Conference on Knowledge Engineering and Knowledge Management, EKAW02. LNAI, vol. 2473. Springer, Berlin (2002) 13. Hazman, M., El-Beltagy, S.R., Rafea, A.: A survey of ontology learning approaches. Int. J. Comput. Appl. 22(9), 36–43 (2011). (0975–8887)

Twitter Sentiment Analysis for Arabic Tweets Sherihan Abuelenin, Samir Elmougy, and Eman Naguib(&) Faculty of Computers and Information, Mansoura University, Mansoura 35516, Egypt {sherihan,mougy}@mans.edu.eg, [email protected]

Abstract. Recently, increasing attention has been attracted to social networking sentiment analysis. Twitter is an online real-time social network and microblogging service that allows certified participants to distribute short posts called tweets. Twitter plays a major role in showing how consumers discover, research, and share information about brands and products. Sentiment analysis can be considered as a basic classification problem between three classes (Positive, Negative, and Neutral). Much work had been done on sentiment analysis in English while less work had been done on other languages like Arabic. Social media and blogs used by individuals are typically in Dialect Arabic. This work is focused on exploring efficient ways to increase the accuracy of sentiment analysis in Egyptian Arabic. The proposed system is based on semantic orientation (Cosine similarity and ISRI Arabic stemmer) and machine learning techniques. Experimental results showed that it achieves an overall accuracy of 92.98% using Linear Support Vector Machine. Keywords: Twitter sentiment analysis  Arabic NLP  Cosine algorithm TFIDF  Naive bayes classifier  Support vector machine



1 Introduction People can use several social media platforms to interact and share comments. Twitter allows users to distribute short posts referred to as tweets. Tweets are restricted to 140 characters because of the constraint of Short Message Service (SMS) of twitter delivery system. The service is quickly acquired worldwide publicity, with more than 100 million customers who in 2012 published 340 million tweets per day [1]. The service is also controlled 1.6 billion search queries per day. In 2013, Twitter was one of the ten most-visited websites and had been defined as “the SMS of the Internet” [2]. In May 2015, Twitter has more than 500 million users in which 302 million of them are active [2]. Texts generated by users on Twitter could be facts or opinions. Facts are feelings about entities and events produced by books, newspapers, magazines, and official documents, which are known as Modern Standard Arabic. For example: ““‫ﻻ ﻳﻨﻀﺞ ﺍﻻﻧﺴﺎﻥ‬ ‫”ﺍﻟﺤﺮ…ﺍﻻ ﺑﺎﻻﻟﻢ ﺍﻟﻌﻈﻴﻢ –ﻧﺠﻴﺐ ﺍﻟﻜﻴﻼﻧﻰ‬. On the other hand, opinions are representations of polarities, feelings, attitudes and emotions via entities and events. For example: “‫ﺍﻛﺜﺮ‬ ‫ ﺿﺤﻜﺘﻚ ﻭﺭﺿﺎﻛﻰ ﻳﺎﺍﻣﻰ‬,‫”☺ ﺍﻻﺷﻴﺎﺀ ﺗﺴﻌﺪﻧﻰ‬. Twitter is powerful tools that advertise a new product with links to the details then test the feedback for this product, seek advice on a product, service, and ad campaign. In the past, when a person wanted to buy anything, he/she was restricted to ask friends © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_44

468

S. Abuelenin et al.

and family opinions. With the rapid growth of social media on the Web, peoples are increasingly using opinions on the internet before making a purchase [3]. Sentiment analysis relates to the use of text analysis, natural language processing, and linguistics computation to recognize and obtain subjective information in source materials [4]. Arabic is the mother tongue of greater than 350 million speakers. Choosing to work with it is due to several reasons such as: (1) Arabic is complexity language because of differently in both its morphology, and structure [5], (2) Its sentiment analysis is of rapidly growing importance because of its already large scale crowd, and (3) Arabic is both challenging and interesting because of its deep history [5]. Arabic language is characterized by a complicated Diglossia situation [6]. Because of the importance of Arabic language, this study focuses on analyzing the sentiment of Arabic tweets that pushed rapidly from a huge number of users on Twitter. In this paper, a hybrid framework is used based on the combining of semantic orientation (Cosine similarity and ISRI Arabic stemmer) and different Machine Learning (ML) techniques are used to enhance the accuracy of the framework by improving preprocessing step and using ML techniques.

2 Background and Related Works Sentiment analysis can be considered as a fundamental classification problem between three classes: Positive, Negative, and Neutral. There are two main ways for sentiment classification: ML and Semantic Orientation (SO). ML is typically a supervised approach in which algorithms analyze the training data, and build function model that allow new data to be inferred for its class [5]. Some examples of ML classifiers include Support Vector Machine (SVM), and Naïve Bayes Classifier [5]. SO is an unsupervised approach in which sentiment lexicon is used. Sentiment lexicon is created of two columns: words and its semantic scores as a number indicating its class [5]. Then, this lexicon is used to extract all sentiment words from the sentence using cosine similarity to find the similar word of the phrase with the word in the lexicon and sum up their polarities to decide if the phrase has an overall positive or

Fig. 1. Example of sentiment classification levels

Twitter Sentiment Analysis for Arabic Tweets

469

negative sentiment [5]. Sentiment classification can be divided into three levels: document level, sentence level, and aspect level as shown in Fig. 1 [7]. 2.1

Related Works

El-Beltagy et al. [8] presented the main challenges and problems of using sentiment analysis of Arabic. One of the outcomes of the presented study is an Egyptian dialect sentiment lexicon. They used small tagged dataset of approximately 500 Arabic tweets labeled by the tags {Positive, Negative, Neutral} collected. Their experiments showed that their modified approach gave better results with in the context of twitter even with the poor used resources. Mourad and Darwish [9] classified tweets written in Arabic using 2300 tweets. Their approach is a supervised one that uses MB for sentiment detection. However, a sentiment lexicon was used to enhance the set of features that the classifier would use during training. The results showed that they achieved 72.5% accuracy. Tapia and Velásquez [3] presented a semi-automated approach to produce a corpus for Twitter sentiment classification. This approach added a new class including tweets that are unnecessary for classification and do not include much information. Experimental recorded that the usage of the fourth class enhances the system efficiency. NB method used with filter plus four class achieved efficiency by 80%. Turney [10] defined the class of the phrase using the usual semantic orientation (SO) of different phrases. The similarity measure Pointwise-Mutual Information (PMI) was used to identify the SO of each phrase by comparing the similarity of the words with a set of positive words with its similarity to a set of negative words. This approach recorded accuracy of 74.39%. Shoukry and Rafea [5] provided an approach for sentence-level sentiment analysis. They used 1000 tweets (500 positives, and 500 negatives) as a date set. Their work lacks the managing of neutral class. The used approach changed into corpus-based entirely (supervised technique), where SVM and NB are used for polarity classification. The outcomes showed that SVM outperformed NB in sentiment evaluation with accuracy reached 72.6%. Duwairiet et al. [11] offered a structure for sentiment analysis in Arabic tweets using opinion lexicon. This lexicon was built by translating the terms from English to Arabic. This lexicon includes 2376 entries: 1777 terrible entries and 600 wonderful entries. Their results showed that lexicons are useful for sentiment finding.

3 The Proposed Framework In this work, we present a hybrid schema that combines semantic orientation and machine learning techniques to improve the effectiveness of the framework by reducing the limitation of each technique. It is composed of a set of five consequence component: preprocessing, feature extraction, lexical classifier, machine learning classifier, and evaluation as shown in Fig. 2.

470

S. Abuelenin et al.

Fig. 2. The general architecture of the proposed approach

The training architecture component described in Fig. 3 where the tweets are extracted from twitter by any twitter API with selecting only Arabic tweets by applying special query. The preprocessing, lexical classifier with cosine similarity, Information Science Research Institute stemmer (ISRI) and feature extraction. The preprocessing step is done on tweets to tokenize, clean, normalize tweets then remove the repeated letters and stopwords, and finally find stem of word. Feature extraction is then applied to get feature vector. In lexical similarity step, the similarity between words in tweet and words located in lexicon is determining sentiment for each tweet. Different ML classifiers are used to build a model to classify a new tweet to check whether it is positive, negative, or natural.

Fig. 3. The proposed framework architecture

Twitter Sentiment Analysis for Arabic Tweets

3.1

471

Tweets Collection

The tweets collection consists of: (a) Tweets that are collected (tweets per day) using Twitter API. (b) The query “Lang: ar” is used to extract only Arabic tweets. (c) This query returns all Arabic tweets included one or more symbols of @ mention, # Hashtag, URL, emotion. Arabic tweets are collected, for example assume that the following tweet: ‫ ﻓﻬﺬﺍ ﻳﻌﻨﻰ ﺃﻧﻚ ﻗﺪ ﻗﺮﺭﺕ ﺃﻥ ﺗﻌﻴﺶ ﺣﻴــﺎﺗﻚ ﻋﻠﻰ ﺍﻟﺮﻏﻢ ﻣﻦ ﻛﻞ‬,‫ﺍﻥ ﺗﻜﻮﻥ ﺳﻌﻴـﺪﺍً ﻻ ﻳﻌﻨﻰ ﺍﻥ ﻛﻞ ﺷﺊ ﻋﻠﻰ ﻣﺎ ﻳﺮﺍﻡ‬ ‫ﻋﻴﻮﻭﻭﺑﻬﺎ‬ (d) Tokenization: Tokenization process splits tweets by spaces and punctuation marks. The previous tweet is tokenized as: ‫ ﻓﻬﺬﺍ ﻳﻌﻨﻰ ﺃﻧﻚ ﻕ ﺩ ﻗﺮﺭﺕ ﺃﻥ ﺗﻌﻴﺶ ﺣﻴــﺎﺗﻚ ﻋﻠﻰ ﺍﻟﺮﻏﻢ ﻣﻦ‬,‫ﺃﻥ ﺗﻜﻮﻥ ﺳﻌﻴـﺪﺍً ﻻ ﻳﻌﻨﻰ ﺍﻥ ﻛﻞ ﺷﺊ ﻋﻠﻰ ﻣﺎ ﻳﺮﺍﻡ‬ ‫ﻛﻞ ﻋﻴﻮﻭﻭﺑﻬﺎ‬ 3.2

Tweets Preprocessing

The steps of tweets preprocessing are: 1. Tweet cleaning: In this stage, irrelevant information is removing such as: a. URLs That are eliminated via regular expression matching or replaced with generic word URL. b. Special twitter characters, such as #, @ and FF. c. Retweets. 2. Stop-word removal: Remove words that don’t have meaning such as conjunctions, articles, and preposition. There is no predefined file of all stopwords in Arabic like English language. File is prepared of all Arabic stopwords and removed the tokens matching any of those terms. It will eliminate words such as ‫ ﺍﻟﺘﻰ‬,‫ ﻣﻦ‬,‫ﻓﻲ‬. For example, using stop-word removal on the above Arabic tweet remove (,‫ ﻋﻠﻰ‬,‫ ﻛﻞ‬,‫ ﻻ‬,‫ﺃﻥ‬ ‫ ﻗﺪ‬,‫ﻫﺎ‬,‫ ﻣﻦ‬,‫ )ﻣﺎ‬and the tweet becomes: ‫ ﻓﻬﺬﺍ ﻳﻌﻨﻰ ﺃﻧﻚ ﻗﺮﺭﺕ ﺗﻌﻴﺶ ﺣﻴــﺎﺗﻚ ﺍﻟﺮﻏﻢ ﻋﻴﻮﻭﻭﺏ‬,‫ﺗﻜﻮﻥ ﺳﻌﻴـﺪﺍً ﻳﻌﻨﻰ ﺷﺊ ﻳﺮﺍﻡ‬ 3. Normalization: In this stage, eliminate the diacritical markings for example ً‫ﺳﻌﻴﺪﺍ‬ becomes ‫ﺳﻌﻴﺪﺍ‬, eliminate the letter Hamza ((‫ﺀ‬, unify the letter alif, so ‫ ﺃ‬and ‫ ﺇ‬are replaced by ‫ﺍ‬. for example: ‫ ﺃﻧﻚ‬becomes‫ﺍﻧﻚ‬, replace ‫ ﺓ‬with ‫ﻩ‬, replace ‫ ﻯ‬with ‫ﻱ‬, and remove the kashida letter (elongation of the words); for example,‫ ﺣﻴــﺎﺗﻚ‬becomes ‫ﺣﻴﺎﺗﻚ‬. After normalizing the above example, it becomes: ‫ﺗﻜﻮﻥ ﺳﻌﻴﺪﺍ ﻳﻌﻨﻰ ﺷﺊ ﻳﺮﺍﻡ ﻓﻬﺬﺍ ﻳﻌﻨﻰ ﺍﻧﻚ ﻗﺮﺭﺕ ﺗﻌﻴﺶ ﺣﻴﺎﺗﻚ ﺭﻏﻢ ﻋﻴﻮﻭﻭﺏ‬ 4. Elimination of speech effect: In this stage, eliminate the repeated letters. For example, the word ‫ ﻋﻴﻮﻭﻭﺏ‬has a repeated letter (‫)ﻭ‬, so eliminate this repeated letter to become ‫ﻋﻴﻮﺏ‬. So, the pervious tweet becomes: ‫ﺗﻜﻮﻥ ﺳﻌﻴﺪﺍ ﻳﻌﻨﻰ ﺷﺊ ﻳﺮﺍﻡ ﻓﻬﺬﺍ ﻳﻌﻨﻰ ﺍﻧﻚ ﻗﺮﺭﺕ ﺗﻌﻴﺶ ﺣﻴﺎﺗﻚ ﺭﻏﻢ ﻋﻴﻮﺏ‬ 5. Stemming: Stem or root word is extracted from the tokenized words. To select the best stemmer technique, apply both of Porter and ISIR stemmer.

472

S. Abuelenin et al.

3.3

Feature Extraction

Transforming the preprocessing tweet into a feature vector is the primary stage in classifier implementing. In term of extracting, selecting a good feature vector defines how strong classifier can be. This feature vector is used to construct a model by using training data to learn classifier. Then, if a new unseen data entered to this model, it can be classified [12]. The Term Frequency-Inverse Document Frequency (TF-IDF) will be used to weight scheme on the n-grams and the features that have frequencies greater than a certain threshold is selected. Later, Cosine similarity is applied on the feature vector to get the score of each word following by summing the score of all words of the tweet. 3.4

Lexical Classifier

3.4.1 Cosine Similarity The difference between morphological forms of words in Arabic is usually a change of one or two letters in a suffix or a prefix of the word. Cosine similarity is an algorithm used to degree the similarity among vectors of words. By calculating an inner product space, it measures the cosine of the angle among the two vectors. The cosine of zero° is 1, and it’s far much less than one for every other attitude. The accuracy drop is attributed to the false matches cosine similarity created. By using Euclidean dot product formula, the cosine of two vectors can be derived as given in Eq. (1) [13]. a:b ¼ kakkbk cos H

ð1Þ

Given A and B as vectors of attributes, the cosine similarity represented the usage of a dot product and magnitude as given in Eq. (2) [13]. Similartity ¼ cos h ¼

Pn A:B i¼1 Ai  Bi ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi ffi ¼ pP Pn n 2Þ  2 ðk Ak:kBkÞ ð Ai i¼1 i¼1 ðBi Þ

ð2Þ

Result: If the cosine result is minus it means the tweet is negative, else if it is one it means the tweet is positive, else with 0 the tweet is neutral. The cosine algorithm finds the similarity of tweet word with words on lexicon. If similarity is greater than 0.7, the two words have the same sentiment. Repeat this for all the words of the tweets.

4 Experimentation and Results 4.1

Datasets

Arabic Slang Lexicon with 400 terms is used for getting sentiment of tweets. The sentiment lexicon contains a list of words and their sentiment as either negative, positive, and neutral terms [8]. For test Data, Tweets was collected by using Twitter Streaming API.

Twitter Sentiment Analysis for Arabic Tweets

4.2

473

Environment and Parameters Setting

In this experimentation, we used Ubuntu Linux operating system on laptop with processor Intel(R) core(TM) I5 with 4GBRAM and CPU 2.30 GHZ, NLTK package, sklearn package, Scikit-learn and Tweepy API. Which is a reference library for twitter in python, it used for crawling the data from twitter. 4.3

Result and Discussion

The system is evaluated by measuring precision, recall, F-measure, accuracy, and error rate. Precision means how many of the instances that identified correct, while recall means how many of the correct instances that identified. F-measure combines the precision and recall. The accuracy measures the percentage of the overall number of correct predictions. The error rate measures the percentage of the overall number of wrong predictions. The experimental results shown in Table 1 shows that ISRI stemmer gives better results than porter stemmer. Table 1. The Miss classified and accuracy of Cosine method with stemmer and without stemmer (sample of 1000 test tweets)

Without stemmer Stemmer (Porter) Stemmer (ISRI)

Miss classified 316 273 184

Accuracy 68.40% 72.70% 81.60%

In Table 2, ISRI stemmer gives better precision, recall and f-score. The best result gets when Threshold Y equal 0.7. We test many Thresholds with many times of run. The results of precision, recall for positive, negative, and natural sentiment as shows in Table 3. This is with different threshold Y (Table 4). There are three types of feature extraction techniques countVectorizer, TFIDFVectorizer and hashingVectorizer. As shown in Table 5, the best feature extraction is countVectorizer. The accuracy result of different ML algorithm shows in Table 6 where the C character at the first of method is the countVectorizer, while T is the TF-IDF. Perceptron, Passive Aggressive (PA), SGD with (hing, perceptron, log), Ridge and Random Forest(RF) algorithm by using CountVectorizer shows in Table 6. The accuracy results of different Logistic Regression (LR), Perceptron, Passive Aggressive (PA), SGD with (hing, perceptron, log), Ridge and Random Forest (RF) algorithm by using TF-IDF shows in Table 7.

474

S. Abuelenin et al.

Table 2. The performance metrics of Cosine method with stemmer and without it while Y = 0.7 Positive Precision Recall Without stemmer Stemmer (porter) Stemmer (ISRI)

Negative F-Score Precision Recall

Natural F-Score Precision Recall

F-Score

77.40%

88.90% 41.00% 64.30%

37.70% 47.50% 29.40%

29.60% 29.50%

81.40%

90.65% 85.78% 74.20%

42.06% 53.69% 30.70%

37.60% 33.80%

90.00%

91.70% 90.80% 80.30%

53.2

66.60% 52.20%

63.97

43.00%

Table 3. The result of Cosine Method with different threshold Y Threshold (Y) Accuracy Positive Precision 0.6 63.30% 77.90% 0.7 81.60% 90.00% 0.8 72.80% 84.60%

Recall 80.00% 91.70% 84.70%

Negative Precision 40.90% 80.30% 67.40%

Recall 25.40% 53.20% 48.60%

Natural Precision 14.40% 43.00% 22.2%0

Recall 24.20% 66.60% 33.00%

Table 4. The accuracy result of NB for (N = 400 test data) Training CountVectorizer Bernoulli Multinomial NB NB 1000 58.70% 57.90% 1520 81.50% 78.94% 1560 78.70% 77.44%

TfidfVectorizer BernoulliNB Multinomial NB 56.14% 54.14% 62.41% 62.16% 63.67% 62.41%

HashingVectorizer Bernoulli Multinomial NB NB 55.90% 50.38% 70.42% 59.65% 71.43% 58.90%

Table 5. The accuracy results of SVM algorithm with CountVectorizer and TF-IDF Training 1000 tweets 1520 tweets 1560 tweets

C-RBF 67% 67.17% 67.16%

C-SVClinear 71.43% 86.97% 86.47%

C-linearSVC 72.43% 92.98% 90.2%

T-RBF 67.16% 67.17% 67.16%

T-SVClinear 70.18% 73.43% 71.93%

T-linearSVC 68.42% 74.69% 73.43%

Table 6. The accuracy results with CountVectorizer Training LR 1000 tweets 1520 tweets 1560 tweets

Perceptron PA

72.18% 71.43%

SGD (hing) 71.93% 71.68%

SGD (Perceptron) 69.92%

SGD Ridge RF (log) 71.68% 72.18% 70.93%

90.98% 78.20%

90.48% 81.70%

76.44%

85.71% 89.47% 75.69%

89.22% 76.19%

88.47% 83.71%

76.44%

84.96% 87.97% 75.69%

Twitter Sentiment Analysis for Arabic Tweets

475

Table 7. The accuracy results with TF-IDF Training

LR

1000 tweets 1520 tweets 1560 tweets

Perceptron PA

SGD (Perceptron) 62.41%

SGD (log) 68.67%

RF

55.89% 60.65%

SGD (hing) 57.16% 62.16%

67.92% 59.40%

68.92% 68.92%

67.67%

74.44%

67.92%

66.17% 61.40%

70.43% 70.43%

64.41%

74.94%

69.67%

69.42%

5 Conclusion and Future Work A combination of social media analysis and sentiment mining helps to identify the sentiments or polarity associated with the user opinion in social media. This paper addressed the issue of twitter site by proposing a hybrid framework to enhance and increase the performance based on semantic orientation and machine learning techniques. Framework architecture has been implemented with the help of Twitter API to show how the mechanism works. In the future, we will apply this framework to various data, big data analysis and apply to various resources in the internet.

References 1. http://techcrunch.com/2012/07/30/analyst-twitter-passed-500m-users-in-june-2012-140mof-them-in-us-jakarta-biggest-tweeting-city/. Accessed 21 Apr 2016 2. http://www.alexa.com/topsiteslast. Accessed 21 Apr 2016 3. Tapia, P.A., Velásquez, J.D.: Twitter sentiment polarity analysis: a novel approach for improving the automated labeling in a text corpus. In: International Conference on Active Media Technology, pp. 274–285. Springer (2014) 4. Tejwani, R.: Sentiment Analysis: A Survey. arXiv preprint arXiv:1405.2584 (2014) 5. Shoukry, A., Rafea, A.: Sentence-level arabic sentiment analysis. In: 2012 International Conference on IEEE Collaboration Technologies and Systems (CTS), Denver, CO, USA, pp. 546–550 (2012) 6. Farghaly, A., Shaalan, K.: Arabic natural language processing: challenges and solutions. ACM Trans. Asian Lang. Inf. Process. (TALIP) 8(4), 1–22 (2009) 7. Al-Twairesh, N., et al.: Subjectivity and sentiment analysis of arabic: trends and challenges. In: 2014 IEEE/ACS 11th International Conference on Computer Systems and Applications (AICCSA), pp. 148–155. IEEE, Doha (2014) 8. El-Beltagy, S.R., Ali, A.: Open issues in the sentiment analysis of arabic social media: a case study. In: The 9th International Conference on Innovations and Information Technology (IIT 2013), pp. 215–220. IEEE, Abu Dhabi (2013) 9. Mourad, A., Darwish, K.: Subjectivity and sentiment analysis of modern standard arabic and arabic microblogs. In: Proceedings of the 4th Workshop on Computational Approaches to Subjectivity, Sentiment and Social Media Analysis, Atlanta, Georgia, pp. 55–64 (2013)

476

S. Abuelenin et al.

10. Turney, P.D.: Thumbs up or thumbs down? semantic orientation applied to unsupervised classification of reviews. In: Proceedings of the 40th Annual Meeting on Association for Computational Linguistics, Association for Computational Linguistics, Philadelphia, Pennsylvania, pp. 417–424 (2002) 11. Duwairi, R., et al.: Detecting sentiment embedded in Arabic social media–a lexicon-based approach. J. Intell. Fuzzy Syst. 29(1), 107–117 (2015) 12. Banados, J.A., Espinosa, K.J.: Optimizing support vector machine in classifying sentiments on product brands from Twitter. In: IISA 2014, The 5th International Conference on Information, Intelligence, Systems and Applications, Chania, Greece, pp. 75–80 (2014) 13. https://en.wikipedia.org/wiki/Cosine_similarity. Accessed 24 April 2016

Use of Arabic Sentiment Analysis for Mobile Applications’ Requirements Evolution: Trends and Challenges Rabab E. Saudy1 ✉ , Eman S. Nasr2, Alaa El Din M. El-Ghazaly3, and Mervat H. Gheith4 (

)

1

4

Department of Information Systems Technology, Institute of Statistical Studies and Research (ISSR), Cairo University, Cairo, Egypt [email protected] 2 Independent Researcher, Cairo, Egypt [email protected] 3 Department of Computer and Information Sciences, Sadat Academy for Management Sciences, Cairo, Egypt [email protected] Department of Computer Science, Institute of Statistical Studies and Research (ISSR), Cairo University, Cairo, Egypt [email protected]

Abstract. The rapidly increasing volume of reviews for the different mobile applications (apps) makes it almost impossible to analyze user feedback reviews manually. Reviews can contain star ratings, emotions, and text reviews for a proposed feature, a bug report, and/or a confidentiality protest. Stakeholders can benefit from reviews after analyzing them using Sentiment Analysis (SA) as user requirements, ideas for improvements, user sentiments about specific features, and descriptions of experiences with these features. This paper investigates the field of research of using Arabic SA for mobile apps’ requirements evolution. We assembled answers from the literature for four Research Questions (RQs) we formulated. The results revealed three main points. First, the use of SA trends in general for mobile apps’ requirements evolution research can be grouped to auto‐ mating extraction of future requirements, applying ranking frameworks to clas‐ sify reviews to informative and non-informative, and proposing visualization techniques for users’ feedback. Second, there turned to be many current chal‐ lenges that face the field of using Arabic SA for user comments of mobile apps’ requirements evolution because of the inherent challenges of three intersecting fields. Finally, there is little proof that there is any study conducted till now that applies the use of Arabic SA on user comments of mobile apps for the purpose of requirements evolution. Keywords: Arabic sentiment analysis · Requirements evolution · Sentiment analysis of mobile apps · User comments · User feedback · User reviews

© Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_45

478

1

R.E. Saudy et al.

Introduction

Nowadays the rapidly increasing volume of reviews for different mobile applications (apps) makes it almost impossible to analyze user feedback reviews manually. User reviews of mobile apps are short in length and specific to a particular app version [1]. Reviews usually contain user sentiments for specific features, ideas for improvements, user requirements, and specifications of practice for these features which is essential for software evolution [2]. Software evolution is the activity of continually updating soft‐ ware systems because of changes in their operating conditions, specifications, or prop‐ erties [3]. Requirements evolution in particular holds information about how software systems change because of changes in requirements [4]. It seeks to understand why, when, and how requirements change over the lifetime (life-cycle) of a software system, especially between different versions, or releases, of a system [4]. Tan et al. [4] identify various forms of change that can occur throughout a software system; remove, add, or modify a system’s features, redesign a system for migration to a new platform, or merging a system with other applications to be fit for a new platform or to improve its performance. Felici et al. [5] classify software changes based on the following changing factors: conflicts, requirements errors and inconsistencies, evolving customer knowl‐ edge of a system, technical, schedule, or changing user priorities, or environmental and organizational changes. Sentiment Analysis (SA)/Opinion Mining (OM) plays a big role in mining reviews. It can be determined as the task of setting the semantic orientation of an opinion holder H on an object or a feature of an Object O [6]. Hence Arabic SA approaches and tools become essential for companies working in the mobile apps industry. Colloquial Arabic like (Egyptian, Moroccan, Levantine, Iraqi, Gulf, and Yemeni) is used in daily communication and it changes between countries, every country has own dialect [7, 8]. Our concern in this research is discovering the trends and current challenges in Arabic SA and mobile applications requirements evolution. This new field not researched well till now. It focusses on using SA in mobile applications to extract requirements that would help developers enhance software evolution of mobile apps. The rest of this paper is structured as follows. Section 2 gives the paper’s Research Questions (RQs). Section 3 investigates SA trends, in general, on user comments of mobile apps for the purpose of requirements evolution. Section 4 reviews Arabic SA trends. Section 5 presents the current challenges of Arabic SA, analyzing user comments of mobile apps, and requirements evolution. Section six discusses is there any previous publication for applying Arabic SA on user comments of mobile apps to meet require‐ ments evolution or not. Finally, section seven gives the conclusion and future work.

2

Research Questions

This section gives the RQs we formulated as we embarked to investigate our field of study. The following sections of this paper will provide answers we assembled from surveying the relevant literature. We have four RQs as follows: • RQ1: What are the trends of using SA in general for mobile apps’ requirements evolution?

Use of Arabic Sentiment Analysis

479

• RQ2: What are the trends of Arabic SA in particular? • RQ3: What are the current challenges of the use Arabic SA for the requirements evolution of mobile apps? • RQ4: Is there any published research that uses Arabic SA for mobile apps’ require‐ ments evolution? RQ1 addresses finding the trends of using SA in general for mobile apps’ require‐ ments evolution. We will not be confined to a particular language while investigating this RQ. RQ2 is concerned with investigating the Arabic SA trends in particular no matter what field of application it is being used in. RQ3 focuses on investigating the current challenges that face the use of Arabic SA of user comments for mobile apps’ requirements evolution because of the inherent challenges of three intersecting fields. RQ4 aims to discuss the role of applying SA on mobile apps’ requirements evolution, if there is any publication till now at all about applying Arabic SA on user comments of mobile apps for the purpose of requirements evolution.

3

RQ1: What Are the Trends of Using SA for Mobile Apps Requirements Evolution?

Analyzing user comments becomes a critical challenge for developers to meet future user requirements evolution especially in mobile apps’. In this RQ, we focus on reviewing the SA trends for analyzing user comments of mobile apps to meet require‐ ments evolution. 3.1 Propose Automated Approaches to Extract Future Requirements to Meet Mobile Apps Requirements Evolution Guzman et al. [2] propose an automatically SA approach using topic modeling for extracting highly fine grained features for mobile apps and evaluate results using truth set creation to prove the correlation and relevant of extracted grouped features. Results show that the feature extraction approach had a good performance for apps. It generates more coherent topics when dealing with big reviews. This approach can detect reviews with no features in short reviews so it is useful for filtering non-informative reviews. Finally, this approach faces some limitations like: limited handling of negation and conditionals, and taking context into account when assigning sentiment scores to features. Mcllory et al. [9] concern about how to automatically labeling reviews to help developers improve new mobile apps releases. It proposes an approach that can auto‐ matically assign multiple labels to reviews based on the raised issues. This approach applies to address three proof-of-concept analytics use case scenarios: (i) compare competing apps to assist developers and users, (ii) provide an overview of 601,221 reviews from 12,000 apps in the Google Play Store to assist app store owners and devel‐ opers and (iii) detect anomalous apps in the Google Play Store to assist app store owners and users. Carreno et al. [10] use unsupervised approach using topic modeling to auto‐ matically extract requirements from user reviews and cluster them into similar require‐ ments. This approach proposes an Aspect and Sentiment Unification Model (ASUM)

480

R.E. Saudy et al.

which allow automatic topic extraction. Results show the number of new/changed requirements for each group of data (control group/test group). In addition, the highquality topic generated has low levels of misclassifications. Goul et al. [11] propose an automated crowd sourcing approach which collect and analyze feedback and comments can to reduce the IT/end user gap, and offer those major capabilities for an enterprise app store: (1) A software distribution model with deployment, installation, updating, deletion or blocking functionalities, (2) Support for policy management, (3) Facilities for inventory management, (4) Security management capabilities (e.g., authentication, encryption, etc.) and (5) Service management functionality. Results show very little correlation between authors ranking and version number, no correlations between senti‐ ments and date/time. Also, SA tools do not cluster sentence-level, feature-based comments in a good way. Fu et al. [12] use an automatically topic modeling approach to study apps review evolution, identify reviews that did not match the given rating and compared different category of mobile apps. It proposes WisCom a multi-level system that analyzes user reviews at various granularities. WisCom can detect inconsistent comments/ratings; identity root causes of users’ negative reviews; track the evolving pattern of user reviews; discover market trends. Iacob et al. [13] built a rule-based auto‐ mated approach to extract mobile apps features and check them if they contain feature request or not. It designs MARA (Mobile App Review Analyzer), a prototype for auto‐ matic retrieval of mobile app feature requests from online reviews. The results of the evaluation analyzed using Latent Dirichlet Allocation for identifying common topics across feature requests. Jiang et al. [14] propose a novel automated systematic approach for eliciting evolutionary requirements through analysis of online review data by inte‐ grating various techniques of SRPA+, S-GN and user satisfaction analysis including economic factors. First adapt OM techniques to automatically extract opinion expres‐ sions about common software features. Then, present an optimized method of clustering opinion expressions in terms of a macro network topology. Finally combine user satis‐ faction analysis with the inherent economic attributes associated with the software’s revenue to determine evolutionary requirements. Li et al. [15] present a new user satis‐ faction evaluation automatically approach by analyzing user comments. This approach depends on applying a survey which evaluates each statement of the product or service being measured. This kind of survey is time consuming and closely depended on the design of the statement. An evaluation framework and calculation methods for user satisfaction analysis are used to measure (relative change of user satisfaction, degree of user concern, degree of developer concern). 3.2 Propose Automated Review Ranking Frameworks for Facilitating the Filtering Informative and Non-Informative Reviews to Meet Mobile Apps Requirements Evolution Chen et al. [16] perform a novel computational automated framework called AR-Miner for mobile app review mining which extract informative reviews and grouping them then prioritize them using review ranking schema and finally visualize them. It extracts informative reviews by filtering “non-informative” ones. This framework applies topic modeling to group the informative reviews automatically. There are some limitations

Use of Arabic Sentiment Analysis

481

that faces in this framework: evaluate it only on google play apps, applies on three features [text, rating, timestamp] only but there are many features that can be included like [device name]. Finally, future work will address some of those limitations. GAO et al. [1] propose a new review ranking automated framework called AR-Tracker which track the dynamic information from top ranked reviews of different time periods. This framework dependent on preprocess user-generated contents like (reviews, user ratings, postdate, app version), then extract topics using different methods like (LDA, LSI, NMF, RP). Previous steps facilitate ranking topics and reviews according to changes of user reviews over time to help developers fix problems to improve new versions. 3.3 Propose Automated Visualization Approaches/Techniques for Extracting User Requirements to Facilitate Mobile Apps/SW Requirements Evolution Guzman et al. [17] visualize user feedback of reviews from Dropbox app using FeedbAck Visualization, FAVe, approach on four different abstraction levels: general, review based, feature based and feature-topic based. Mining user feedback executes in four steps. First, preprocess comments and titles for each. Second, Feature Extraction uses NLTK toolkit using the likelihood-ratio test. Third, SA uses lexical tool SentiStrength that divide review text into sentences with positive and negative scores. Finally, apply Topic Modeling using Latent Dirichlet Allocation (LDA). The purpose for using this approach is to analyze the most and least popular app features and prioritize work between them. Sivagami et al. [18] propose a Formal Concept Analysis (FCA) domain ontology method that extract related attributes to classify the movie type (comedy, action, family….). The contribution of this paper is the use of FCA then clusters the sentiment words using fuzzy C-Means (FCM) function by calculating fuzzy score. Guizzardi et al. [19] propose a user feedback ontology to identify the different types of feedback, its format, what can be used. It supports a goal-oriented analysis methodology based on Tropos tool. Tropos used in early requirements by analyzing the goals of domain actor. It suggested some competence questions in late requirements to know: the format of user feedback representation, the analysis techniques used for analyzing feedback, and finally the category of feedback classification. Concluded Remarks. In this RQ, we illustrate that some researchers applied SA as an approach for analyzing user comments for mobile apps to meet requirements evolution. we explore the following SA trends: automating approaches to extract new/future requirements to meet software requirements evolution, or visualizing approaches or techniques for user feedback to facilitate new requirements evolution, or proposing review ranking frameworks to facilitate filtering informative and non-informative reviews. We observe that there are many automatically extraction approaches that can be used to meet the evolving of mobile apps requirements like: topic modeling, crowd sourcing approaches, rule based approaches, survey approaches which uses different methods, techniques, models or mathematical calculations. In addition, there are many review ranking frameworks to filter informative or non-informative user comments of mobile apps to meet requirements evolution like: AR-Miner, AR-Tracker. As well auto‐ mated visualization approach FAVe can be used to meet mobile apps requirements

482

R.E. Saudy et al.

evolution. Figure 1. Summarize SA trends on user comments of mobile apps to meet requirements evolution.

Fig. 1. Mobile apps user comments requirements evolution trends.

4

RQ2: What Are the Arabic SA Trends?

In this RQ, we represent some Arabic SA trends from different researchers’ perspectives. Badaro et al. [20] propose a computationally light method ArSenL that uses a lexiconbased approach for mining Arabic opinion tweets. This lexicon has three scores: positive, negative, and objective. The sum of the three scores is 1. A mobile application is designed and implemented to automatically analyze Arabic tweets, extract sentiments related to the tweets, and provide a visualization summary of the results. In future, enhance the classification model to retrieve negations, and develop the application for other mobile platforms. Al-Twairesh et al. [21] demonstrate three different SA techni‐ ques (Supervised, Unsupervised, and Hybrid). In supervised SA techniques: Oraby et al. [22] propose a rule based classifier that use a root extraction method which divided words into four sets {positive strong, positive weak, negative strong, negative weak}. It extracts opinion phrases through a document parsing rule set. Then opinion score algorithm calculates the document rating and compared with actual rating. SVM clas‐ sifier used with only independent unigrams and unigrams with roots as features to experiment. The usage of the roots as features improve the classification accuracy on datasets. In unsupervised SA: Elsahar et al. [23] propose a fully automated approach to build dialect/slang subjectivity lexicon. First, it identifies general extraction patterns to increase recall and reveal high accuracy. Then it manually constructs a list of 11 patterns after that reduces them to 8 patterns by removing those noisy patterns and gained a precision of 88.6%. After that the corpus of tweets is automatically labeled and then cooccurrence is calculated. Finally, the precision is 84.5%. In hybrid SA: Al-Kabi et al. [24] propose a Modern Standard Arabic (MSA) and Dialectal Arabic (DA) OM tool, which represents domain adaptation. User reviews preprocess by tokenization, normal‐ ization, removing punctuation and non-Arabic letters. The classification Features is manually extracted from the reviews and the polarities are manually weighted. NaïveBayes (NB) classifier is used for subjectivity classification and intensity classification, and K-NN for polarity classification. Results show that accuracy of classifying reviews into their proper domains is 93.9%, accuracy of polarity classifying is 90%, and accuracy of identifying the strength/intensity of reviews is 96.9%. Abd Al-Aziz et al. [25] demon‐ strate SA approaches as Lexicon-based (Keyword-based), linguistic rules-based, machine learning based, and hybrid approach used lexicon-based approach and learning

Use of Arabic Sentiment Analysis

483

approach. It applies a combined approach of lexicon approach and Multi-Criteria Deci‐ sion Making. Results show that this approach able to classify Arabic text with mixed emotions. Ibrahim et al. [26] present MIKA a multi-genre tagged corpus of MSA and colloquial applied on sentence level with semantic orientation (positive or negative or neutral). Concluded Remarks. In this RQ, there are many Arabic SA trends that can be: SA techniques, SA approaches, SA classifiers. In SA techniques, researchers use different aspects: supervised, unsupervised, and hybrid techniques. In addition, SA approaches that apply on SA techniques can be different: Lexicon-based (Keyword-based), linguistic rules-based, machine learning based, and hybrid approach. As well researchers apply many SA classifiers or mathematical methods according to available datasets: LDA, NB, SVM, K-NN.

5

RQ3: What Are the Current Challenges (Arabic SA, Requirements Evolution, Mobile Apps) Based on Literature Reviews?

In this RQ, we review some current challenges that can be faced for the following: (Arabic SA, user comments/reviews of mobile apps, and requirements evolution). First Arabic SA challenges can be classified to: Al-Twairesh et al. [21] demonstrate Arabic SA challenges according to tasks of Subjectivity and Sentiment Analysis (SSA), and Arabic Language Complexity into: use of DA, lack of Sentiment Lexicons, lack of corpora and datasets, handling compound phrases and idioms, sarcasm detection, Coreference resolution, the need for named entity recognition, use of Arabizi, comparative opinions, opinion spam detection. El-Beltagy et al. [6] face colloquial Arabic SA chal‐ lenges: unavailability of colloquial Arabic parses, unavailability of sentiment lexicons, the need for person name recognition, handing compound phrases and idioms. Mourad et al. [8] face many challenges according to Arabic linguistic features and poorness of language resources: lexicon, emoticons, use of dialects, specific phenomena, contradic‐ tory language. Second requirements evolution challenges can be classified to: the effect each change has on the requirement, the state of the requirements itself, and finally the requirements relationship with the environment like (Extensions, Derivations, and Replacement) [4]. Finally, mobile apps challenges that can be: problem in determine which mobile play store (Google/Apple) that will be selected, user comments mobile apps size and application type, and finally Scraper tool for extracting user comments from play store [1, 2, 9–17]. Concluded Remarks. From this RQ, we can summarize all current challenges for the three fields: Arabic SA Challenges, Requirements evolution challenges, and mobile apps challenges as shown in Fig. 2.

484

R.E. Saudy et al.

Fig. 2. Current challenges of Arabic SA, user comments of mobile apps, and requirements evolution.

6

RQ4: Is There Any Published Research that Uses Arabic SA for Mobile Apps Requirements Evolution?

This RQ is dependents on analyzing previous guidelines RQs RQ1, RQ2, and RQ3 on this research. We try to address some RQs to investigating the following: observe the applying of SA trends to analyze user comments for mobile apps to meet requirements evolution, mention some Arabic SA trends, and finally investigate the current challenges that can be faced Arabic SA, user comments of mobile apps, and requirements evolution. We looked for publications from 2004 till 2016 using the following search terms: SA and user comments, SA and user comments requirements evolution, SA and user comments mobile apps, and finally SA and user comments mobile apps requirements evolution. First, according to RQ1: our concern on this question is focus on publications [1, 2, 9–17, 20] that contains trends for applying SA on user comments mobile apps and relationship that results from it to meet future requirements evolution. After analysis, we observe the following trends: First: publications [2, 9–12] propose an automatically SA approaches instead of manually approaches to extract new or future requirements from user comments mobile apps. Second publications [1, 16] propose novel or math‐ ematical review-ranking frameworks to facilitate filtering informative and non-infor‐ mative reviews. Finally, publication [17] propose approaches to visualize user feedback to facilitate new requirements for mobile apps, while publication [18, 19] concerns generally on visualizing approach for another applications or software requirements evolution. Second, according to RQ2: publications [20–26] review some of Arabic SA trends: SA techniques, methods, approaches, classifiers that applied on different corpus/ dataset for different applications. Finally, according to RQ3: developers may face many current challenges according to the following: publications [6, 8, 21, 26] faces Arabic SA challenges: SSA tasks and language complexity, colloquial Arabic SA, Arabic

Use of Arabic Sentiment Analysis

485

linguistic features and poorness of language resources. While publications [3–5, 10, 11, 14, 15, 17] faces requirements evolution challenges: the effect each change has on the requirement, the state of the requirements itself. Finally, publications [1, 2, 9, 11–13, 16, 20] faces Mobile apps challenges: mobile play store (Google/Apple) that will be selected, user comments mobile apps size and application type, and finally Scraper tool for extracting user comments from play store. Concluded Remarks. In this RQ, stakeholders (developers, users and app store owners) can benefit from those reviews after analyzing using SA as user requirements, ideas for improvements, user sentiments about specific features, and descriptions of experiences with these features. Developers can understand users’ orientation to guide app store owners how to repair, change anomalous apps or redesign new releases. Users can compare similar apps to decide the better one for downloading or purchasing. From previous analysis for RQ1, RQ2, and RQ3, we observe that till now there is no studies in SA on user comments of Arabic Mobile apps However, publication [20] propose a light-based lexicon mobile apps for SA of Arabic tweets but not evaluated this appli‐ cation till now to help developers satisfy user requirements.

7

Conclusion and Future Work

This paper highlighted the SA trends for mobile apps requirements evolution, Arabic SA trends, and current challenges in those fields (Arabic SA, requirements evolution, and user comments mobile apps) based on literature reviews. From our analysis, there is no publication till now focus on this field. SA trends for user comments of mobile apps requirements evolution can be representative in many points like: extracting future user requirements that help developers modify or build new versions by proposing auto‐ matically SA approaches, or visualizing user feedback approaches, or build SA lexicon, and finally facilitating informative and non-informative reviews by proposing review ranking frameworks. In addition, Arabic SA trends can be representative in different perspectives like: build MSA/DA lexicon, propose hybrid SA approaches. As well, there are many current challenges for those research fields: Arabic SA challenges, require‐ ments evolution challenges and user comments of mobile apps challenges. Finally, till now there is no study for applying Arabic SA on mobile apps requirements evolution. For the future work, first, review a systematic literature review (SLR) about Arabic SA and clearly describe its challenges. Then propose an automatically Arabic SA approach to extract new/future requirements from user comments of mobile apps to meet requirements evolution. In addition, this approach reviews guideline flowchart that faces the three types of the current challenges.

References 1. Gao, C., Xu, H., Hu, J., Zhou, Y.: AR-tracker: track the dynamics of mobile apps via user review mining. In: Proceedings of International Workshop on Internet based Virtual Computing Environment (IVCE), San Francisco, USA, pp. 284–290 (2015)

486

R.E. Saudy et al.

2. Guzman, E., Maalej, W.: How do users like this feature? A fine grained sentiment analysis of app reviews. In: Proceedings of the 22nd International Conference on Requirements Engineering (RE) 2014, Karlskrona, pp. 153–162 (2014) 3. Tran, L.M.S., Massacci, F., Mylopoulos, J.: Requirement evolution: towards a methodology and framework. In: Proceedings of CaiSE 2011 Doctoral Consortium (2011) 4. Tan, S.C.: Supporting Visualization and Analysis of Requirements Evolution. Master, University of Edinburgh (2009) 5. Felici, M.: Observational Models of Requirements Evolution. Ph.D. University of Edinburgh (2004) 6. El-Beltagy, S.R., Ali, A.: Open issues in the sentiment analysis of arabic social media: a case study. In: Proceedings of the 9th International Conference on Innovations in Information Technology (IIT), pp. 215–220 (2013) 7. Soliman, T.H., Ali, M.M.: Mining social networks’ arabic slang comments. In: Proceedings of the IADIS European Conference on Data Mining (ECDM 2013), Prague, Czech Republic (2013) 8. Mourad, A., Darwish, K.: Subjectivity and sentiment analysis of modern standard arabic and arabic microblogs. In: Proceedings of 4th Workshop on Computational Approaches to Subjectivity, Sentiment and Social Media Analysis, Atlanta, Georgia, pp. 55–64 (2013) 9. McIlroy, S., Ali, N., Khalid, H., Hassan, A.E.: Analyzing and automatically labelling the types of user issues that are raised in mobile app reviews. In: Empirical Software Engineering, pp. 1067–1106. Springer (2016) 10. Carreno, L.V.G., Winbladh, K.: Analysis of user comments: an approach for software requirements evolution. In: Proceedings of the International Conference on Software Engineering (ICSE), San Francisco, CA, USA, pp. 582–591 (2013) 11. Goul, M., Marjanovic, O., Baxley, S., Vizecky, K.: Managing the enterprise business intelligence app store: sentiment analysis supported requirements engineering. In: Proceedings of the 45th Hawaii International Conference on System Sciences (2012) 12. Fu, B., Lin, J., Li, L., Faloutsos, C., Hong, J., Sadeh, N.: Why people hate your app: making sense of user feedback in a mobile app store. In: Proceedings of the 19th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, Chicago, Illinois, USA (2013) 13. Iacob, C., Harrison, R.: Retrieving and analyzing mobile apps feature requests from online reviews. In: Proceedings of the International Working Conference on Mining Software Repositories (MSR), San Francisco, CA, USA (2013) 14. Jiang, W., Ruan, H., Zhang, L., Lew, P., Jiang, J.: For user-driven software evolution: requirements elicitation derived from mining online reviews. In: Proceedings of the 18th Pacific-Asia Conference, PAKDD 2014, Tainan, Taiwan (2014) 15. Li, H., Zhang, L., Zhang, L., Shen, J.: A user satisfaction analysis approach for software evolution. In: Proceedings of the International Conference on Informatics and Computing (PIC) (2010) 16. Chen, N., Lin, J., Hoi, S., Xiao, X., Zhang, B.: AR-miner: mining informative reviews for developers from mobile app marketplace. In: Proceedings of the 36th International Conference on Software Engineering (ICSE), Hyderabad, India (2014) 17. Guzman, E., Bhuvanagiri, P., Bruegge, B.: FAVe: visualizing user feedback for software evolution. In: Proceedings of the Second IEEE Working Conference on Software Visualization (2014) 18. Sivagami, C., Punitha, S.C.: Ontology based sentiment clustering of movie review. Int. J. Emerg. Trends Technol. Comput. Sci. (IJETTCS) 2, 375–378 (2013)

Use of Arabic Sentiment Analysis

487

19. Guizzardi, R., Morales-Ramirez, I., Perini, A.: A goal-oriented analysis to guide the development of a user feedback ontology. In: Proceedings of iStar. CEUR Workshop Proceedings (2014) 20. Badaro, G., Baly, R., Akel, R., Fayad, L., Khairallah, J., Hajj, H., et al.: A light lexicon-based mobile application for sentiment mining of arabic tweets. In: Proceedings of the Second Workshop on Arabic Natural Language Processing, Beijing, China (2015) 21. Al-Twairesh, N., Al-Khalifa, H., Al-Salman, A.: Subjectivity and sentiment analysis of arabic: trends and challenges. In: Proceedings of the 11th International Conference on Computer Systems and Applications (AICCSA) (2014) 22. Oraby, S., El-Sonbaty, Y., El-Nasr, M.A.: Finding opinion strength using rule-based parsing for arabic sentiment analysis. In: Advances in Soft Computing and Its Applications, pp. 509– 520. Springer (2013) 23. ElSahar, H., El-Beltagy, S.R.: A fully automated approach for arabic slang lexicon extraction from microblogs. In: Computational Linguistics and Intelligent Text Processing, pp. 79–91. Springer (2014) 24. Al-Kabi, M.N., Gigieh, A.H., Alsmadi, I.M., Wahsheh, H.A., Haidar, M.M.: Opinion mining and analysis for Arabic language. Int. J. Adv. Comput. Sci. Appl. 5(5), 181–195 (2014) 25. Al-Aziz, A., Gheith, M., Ahmed, E.: Lexicon based and multi-criteria decision making (MCDM) approach for detecting emotions from Arabic microblog text. In: Proceedings of the 1st Arabic Computational Linguistics Conference in 16th International Conference, CICLing, Cairo, Egypt (2015) 26. Ibrahim, H., Abdou, S., Gheith, M.: MIKA: a tagged corpus for modem standard arabic and colloquial sentiment analysis. In: Proceedings of the 2nd International Conference on Recent Trends in Information Systems (ReTIS) (2015)

A New Model for Detecting Similarity in Arabic Documents Mahmoud Zaher1, Abdulaziz Shehab1, Mohamed Elhoseny1(&), and Lobna Osman2 1

Department of Information Systems, Faculty of Computers and Information, Mansoura University, Mansoura, Egypt [email protected], {abdulaziz_shehab,mohamed_elhoseny}@mans.edu.eg 2 Department of Electronics and Communications Engineering, Delta Higher Institute for Engineering and Technology, Talkha, Egypt [email protected]

Abstract. With the hug of the information on WWW and digital libraries, Plagiarism became one of the most important issues for universities, schools and researcher’s fields. While there are many systems for detecting plagiarism in Arabic language documents, the complexity of writing Arabic documents make such scheme a big challenge. On the other hand, although search engines such as Google can be utilized, there would be boring efforts to copy some sentences and paste them into the search engine to find similar resources. For that reason, developing Arabic plagiarism detection tool accelerate the process since plagiarism can be detected and highlighted automatically, and one only needs to submit the document to the system. This paper presents an effective web-enabled system for Arabic plagiarism detection called APDS, which can be integrated with e-learning systems to judge students’ assignments, papers and dissertations. The experimental results are provided to evaluate APDS regarding the precision and recall ratios. The result shows that the average percentage of the precision is 82% and the average percentage of the recall is 92.5%. Keywords: Plagiarism detection copyright



Similarity index



Arabic documents

1 Introduction In according with www.plagiarism.org, electronic thefts are any of the following activities: transforming someone else’s work to you as your own or copying words or ideas from someone else without giving permission or license or giving incorrect information about the source of the quote. There are various forms of electronic thefts; electronic thefts in schools can be a factor of discourage for teachers as well as students. If electronic thefts are not addressed enough, the thief could gain undue advantage, for example, signs of more duties with less effort [1]. Discovering a stolen document plays a very important function in many applications, such as management of files, and copyright saving, © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_46

A New Model for Detecting Similarity in Arabic Documents

489

and to prevent electronic theft [2]. The electronic thefts can take one of the popular types, such as copies of all or some parts of the document or reformulate of the same content in different words, using the ideas of others or refer to work on the sources of incorrect or non-existent [3]. There is other ways to include translation thefts and robberies where electronic content is reformatted and reused without reference to the original content and the electronic thefts of that uses various media such as photos and videos to make the work of another without proper way of citation [4]. Electronic learning systems have gained saleability and educational value of the environment in the past few years, and have contributed to recent advances in networking and multimedia and information technology to attract e-learning systems. Recently in the Kingdom of Saudi Arabia has aroused as the use of e-learning systems in universities and schools. As conclude from the study conducted by Madar Research Foundation [5], e-learning [21, 22] industry in the Kingdom of Saudi Arabia is expected to grow dramatically in the next few years. It is expected that Saudi Arabia’s universities turn from traditional ways of learning to electronic learning systems during the few years [6, 23]. While, the ease of education using e-learning systems combines the hardness of guarantee the mental property of the student work submitted. With the ease of Internet access the huge amount of information can be seen and accessed, the problem of electronic thefts (using ideas in scientific research or others without proper way of citation) may increase in sleepless. There are some studies about academic dishonesty agree that there as at least 10% of the students’ work in the United States, Australia and United Kingdom universities can be stolen [7]. Thus, the discovery and deter thefts of electronic learning in the education process is critical, especially in the process of assessing student work submitted. It was discovered that the electronic thefts have effects on the academic results [8]. All of this trial of electronic thefts has a negative effect on the process of education. Thus, how can we make sure that dealing with thefts of electronic systems in e-learning and how to detect electronic thefts and handling? It’s a critical matter need to be resolved by computer researchers. In this paper, we made a discovery tool dealing with thefts of electronic documents in Arabic on the Internet. Our instrument proposed can be integrated with e-learning systems in Saudi Arabia specifically, and all the Arab countries in general.

2 Background Information and Related Works Plagiarism detection systems are classified into two major categories; Plagiarism in documents and Plagiarism in source code. Figure 1 shows the classification of plagiarism detection systems. Most of the work on the discovery of documents in electronic thefts has been for academic purposes. Discovering the electronic thefts is very important to assess the students’ work, especially graduate students who are prevented strictly and prohibited from fraud or rework sentences without reference to the source. In this case, it has produced many of the electronic thefts detection systems. Most of these systems have been used for detecting theft techniques known as electronic discovery techniques for similarity, which produces fingerprint private files, including standards such as the

490

M. Zaher et al.

Plagiarism Detection Systems

Source Code

Document

TurnItIn

EVE

APD

Yap

JPag

SID

MOSS

Fig. 1. The classification of plagiarism detection systems

Table 1. Some features for documents PDS Turnitin

EVE

APD

Similarity technique English

Similarity technique Arabic

Web-based Teachers/Students

Web-based Admin/Teachers/Students

File submission File format

Similarity technique English, Arabic, Spanish, French, German, Chinese Web-based Student/instructor/Teaching assistant Web form Microsoft word (.doc)

Web form Microsoft word (.doc),

Results

Web site and instructor report

Web form Microsoft word, plain text, Corel word Teacher report

Algorithm used Document language support Client platforms Main users

Classroom report

average length of the line, and file total size, and the average number of commas in each line. Files that have fingerprints closer to each other are considered as similar. Obviously, the records can be compared with a small footprint quickly, but is this method cannot be relied upon as it is now rarely used at the present time. There are some works done for plagiarism detection such as Turnitin [9] and APD [10]. The Features of existing documents plagiarism detection systems will be summarizes in Table 1 While various plagiarism approaches have been proposed for detecting source code written with C, C++ or JAVA [11]. Each of these approaches focuses on certain characteristics of code plagiarism. There are also approaches which are designed to handle complicated code modification but require longer detection time compared to common approaches. [12, 13] Therefore, renaming variables will not help the plagiarizer [14]. Some of the existing plagiarism detectors that employ such structure-based methods such as YAP [15], JPlag [16], SID [17],and MOSS [18] are summarized in Table 2

A New Model for Detecting Similarity in Arabic Documents

491

Table 2. Features of existing source code plagiarism detection systems Algorithms used Language supported Platforms for client File submission File format Language specification Results

MOSS Fingerprinting C, C++, Java. Unix Com. line Perl executable Required URL

JPlag Greedy string C, C++, Java Java Java specifying Required HTML page

SID Compute shared C, C++, Java Web-based Web Zip file Required SID site

YAP Karp_Rabin Pascal, C, Unix Com. line specifying folder Use tokenize Written file

3 The Proposed System Arabic language has many problems, big dictionary and so many synonyms. The word has different meanings with different position in the sentence and different tense according to the diacritic. There are many systems for plagiarism detection in English language, but there is strongly need to a plagiarism detection system in Arabic language. If there is any plagiarism detection in Arabic language, It uses a blind search and match the hall sentence as it is, where as the sentence in English is deferent than Arabic language. There for, there is a strongly need to study the search types in Arabic document files to detect plagiarism. The proposed system consists of three different phases namely; (1) Preparation phase, (2) Processing phase, and (3) Similarity detection phase. Figure 2 describes the phases of the proposed system. Text Editor Preparation Phase Check Language Tokenization

System Phases

Processing Phase

SWR & Rooting Synonym Replacement Fingerprinting

Similarity Detection Phase

Document Representation Similarity Detection

Fig. 2. Proposed system phases

Preparation Phases: this phase is responsible for collecting and prepares the documents for the next phase. It consists of two modules: text editor module and check language module. Text editor module allows the user to input a text or upload a text file in document format, these files can be processed in the next phase.

492

M. Zaher et al.

The check language module is responsible for checking the input file written language, If it is an Arabic language then use Arabic process, or English language then use English process. The processing phase consists of three modules explained as follows: i. Tokenization: break up the input text as some token. The Tokenization function is illustrated at Algorithm 1 ii. SWR and Rooting: remove the common words that appear in the text but carry little meaning, and the process of removing: (prefixes, infixes, or/and suffixes) from words to get the roots or stems of this word. The Word Stemming Algorithm is illustrated at Algorithm 2. iii. Replacement of Synonym: words are converted to their synonyms. Algorithm 1 :Tokenization Algorithm 1 Initialize: the input text 2 Set white_Space to \n\t space and delimiter_Set to ',.;:!?()+"\n\t space 3 Set current_Position to 0 and intermnal_Quote_Flag to false 4 function get_Next_Token: T1: cursor := current_Position; 5 chr :=char_At(cursor) 6 if (chr = end_Of_Stream) then return is null; end if 7 T2: while chr is not end_Of_Stream nor instance_Of_(delimiter_Set) do 8 Increase cursor by 1 ; chr:=char_At(cursor); end while 9 if (chr = end_Of_Stream and cursor = current_Posion) then 10 return is null 11 End if 12 if (chr is white_space && current_Posion = cursor) then 13 Increase current_Posion by 1 and goto T1; 14 else Tok := substring(Stream, current_Posion,cursor-1); 15 Current_Posion:= cursor+1; return Tok; 16 End if 17 if (chr =') then 18 if char_At(cursor-1)= insthentance_Of(delimiter_Set) then 19 Intermnal_Quote_Flag := true; Increase current_Posion by 1 20 and goto T1; 21 End if 22 if (char_At(cursor+1) != insthentance_Of(delimiter_Set) ) then 23 Increase cursor by 1 ; chr:=char_At(cursor); goto T2; 24 Else if intermnal_Quote_Flag := true then 25 Tok := substring(Stream, current_Posion,cursor-1); 26 Intermnal_Quote_Flag := false; else 27 Tok := substring(Stream, current_Posion,cursor); end if 28 29 30 31 32 33 34 35

Current_Posion:= cursor+1; return Tok; End if if (cursor = current_Posion) then Tok:= chr ; current_Posion:= cursor + 1;else Tok := substring(Stream, current_Posion,cursor-1); Current_Posion:= cursor; end if return Tok; End function

A New Model for Detecting Similarity in Arabic Documents

493

Algorithm 1 shows that, the newline, tab and character space that we suppose are always not count as token. They are frequently together called white space. The characters () < > ! ? “ are always be tokens. A colon, comma, or period between numbers would not usually be measured as a part of the number. Any other colons or commas may be tokens. The Stop words Removal [19] and Rooting [20] applied on the raw text to remove conditions out of text. Whereas SW in Arabic language include:

…etc. These words do not give an important sense to the text. As a result, they should be detached in order to decrease the ‘noise’ and the time calculation. moreover by stemming of word, it will be altered to the word’s essential form.

Similarity detection Phases: It is consists of three modules Fingerprinting, documents representation and similarity detection. Initially, to calculate fingerprints of any document, first cut up the text into small pieces called chunks, the chunking method that responsible for cutting up the text will be determined. A unit of chunk could be a sentence or a word. In case of chunking using sentences called sentence-based, the

494

M. Zaher et al.

document can be cut into small chunks based on ‘C’ parameter. For example, a document containing sentences dos1 dos2 dos3 dos4 dos5, if C = 3 then the calculated chunks will be dos1 dos2 dos3, dos2 dos3 dos4, dos3 dos4 dos5. For example, a document containing words dow1 dow2 dow3 dow4 dow5, if C = 3 then the calculated chunks will be dow1 dow2 dow3, dow2 dow3 dow4, dow3 dow4 dow5. The chunking using Word gives higher precision in similarity detection than the chunking sentence. The Preparation Phase: It consists of text editor module and check language module. In the Text editor Module, the users of the text editor module are faculty members and students, where the users need a text area to upload their files, so the brows helps for file path to make it easy for the users. In order to extract terms from text, classic Natural Language Processing (NLP) techniques are applied from the system database, whereas all the files are stored, the check language module bring the file and read it, then check for language either Arabic, English, or mixed of both languages. Thereafter, the system mark the document with its written language and save the file again in database. While the Similarity detection Phases, In the Tokenization module: after bringing the document from the system database, whereas all the files are stored, the Tokenization module read the file, and brake down the file into paragraphs, after that brake down the paragraphs into sentences, then brake down the sentence into words and save the file again in the system database. Finally, in the Stop Words Removal and Rooting Module, the raw text of the document is treated separately as well. With the aid of Synonym Replacement Module, words are changed to their most common synonyms, which can assist to identify difficult forms of hidden plagiarism. Besides, in the Fingerprinting Module, a sentence or a word can be used as a unit of chunk. In case of sentence-based chunking, the document is divided into chunks based on chunk parameter ‘n’, which group every sequence of ‘n’ sentences into a chunk. For example, given a document containing the sentences st1 st2 st3 st4 st5, if n = 3 then the chunks are st1 st2 st3, st2 st3 st4, st3 st4 st5. In a word-based chunking, the document is divided into chunks based on chunk parameter ‘n’, which group every sequence of n words into a chunk. For example, given a document containing the words wo1 wo2 wo3 wo4 wo5, if n = 3 then the chunks are wo1 wo2 wo3, wo2 wo3 wo4, wo3 wo4 wo5. Word-based chunking gives higher precision in detecting similarity than sentence-based chunking. APDS is based on a word-based chunking method: in every sentence of a document, words are first chunked and then hashed using a hash function. As shown in Fig. 3, the proposed system architecture can be explained as follows: First, the faculty member (admin) has to choose a subject to make a request, then he sends the request for the paper or the thesis to the students. After that each student sends back his/her answer from his own home page of the site in a document file. After the faculty member receives all students’ answers, he/she will send it to plagiarism detection tool (PDT). That tool, first, check the documents language and forward it either Arabic or English process. The tool checks the documents written language, then chooses the correct process, makes the plagiarism report, and finally sends the report to the faculty member as well as a copy of the report to the student.

A New Model for Detecting Similarity in Arabic Documents

495

Request Student

Faculty Member Answer Request

Student Work Paper

Staff Work

Thesis

Paper

Book

Plagiarism Detection Tool Check Language English Process

Arabic Process

Report

Fig. 3. Proposed system architecture

4 Experimental Results A Dataset has been made from a ten Arabic documents collected from student work in “introduction to Islamic culture” course that studied in the first semester at prince Sattam bin Abdul-Aziz university collage of sciences and humanity studies. The performance of the proposed system is evaluated using the dataset determined using Precision and Recall Eqs. (1) and (2) respectively. The run of the experiment was on an Intel core i5 processor with 2.4 GHz CPU speed and 6 GB RAM with 64 bit windows 7 Ultimate operating system. Precision ¼ Recall ¼

jfrelevant documents g \ fretrieved documentsgj jfretrieved documentsgj

jfrelevant documents g \ fretrieved documentsgj jfrelevant documentsgj

ð1Þ ð2Þ

Figure 4 shows the overall precision and recall of our proposed System. The reader could notice that the precision ranges between 78 to 85 while the recall ranges between 89 to 97. In order to evaluate the feasibility of information systems that guide IS management actions and IS investments. The IS success taxonomy consists of six main categories (1) systems quality, (2) information quality, (3) service quality, (4) Intend to use, (5) user satisfaction, and (6) net benefit, So we have made a for faculty members, who use the system with Arabic documents, and the second is for faculty members. Category 1: systems quality, the first question to faculty member Q1 is used to measure the adaptability, the second measure for the system quality is Q2 the availability, where the third measure for the system quality is Q3 the Reliability. The fourth

496

M. Zaher et al.

Precision APDS

Recall APDS

120

Percentage%

100 80 60 40 20 0 St-1 St-2 St-3 St-4 St-5 St-6 St-7 St-8 St-9 St-10

Document Fig. 4. The precision and recall for the dataset

measure for the system quality is Q4 the Response time. The final measure for the system quality is Q5 the Usability, all the answers are shown in Table 3 shows that all the calculation have been made, the Chi-Square test, the degree of freedom, the mean, variance and standard deviation. P P ðObservedExpectedÞ2 x Where: Chi-square v2 ¼ , Mean l ¼ Variance N , Expected n n P P 1 S2 ¼ n1 ðxi  xÞ2 , Standard deviation r2 ¼ N1 ðxi  lÞ2 . i¼1

i¼1

Category 2: information quality, the first question to faculty member Q1 is used to measure the information completeness, The second measure for the information quality is Q2 the ease of understanding. The third measure for the information quality is Q3 the personalization. The fourth measure for the information quality is Q4 the relationship. The final measure for the information quality is Q5 the security, all the answers Table 3. Systems quality frequency Agree Strongly Agree v2 10 19 2 32.57 8 20 3 33.43 13 15 2 23.71 10 18 2 28 8 20 3 33.43 9.8 18.4 2.4 3.36 3.44 0.24 1.83 1.85 0.49

Criteria

Strongly disagree Disagree Fair

Adaptability availability Reliability Response time Usability Mean(µ) Variance(S2) Standard deviation(r)

2 2 2 3 2 2.2 0.16 0.4

2 2 3 2 2 2.2 0.16 0.4

A New Model for Detecting Similarity in Arabic Documents

497

Table 4. Information quality frequency Strongly disagree Disagree Fair Agree Strongly Agree v2 Completeness 2 3 2 20 8 33.71 Ease of understanding 3 2 2 19 9 30.57 Personalization 3 2 3 19 8 28.86 relationship 2 2 5 18 8 25.14 security 3 3 1 25 3 58.29 Mean(µ) 2.6 2.4 2.6 20.2 7.2 Variance(S2) 0.24 0.24 1.84 6.16 4.56 Standard deviation(r) 0.7 0.7 1.36 2.48 2.14

Criteria

are shown in Table 4 shows that All the calculation have been made, the Chi-Square test, the degree of freedom, the mean, variance and standared deviation. Category 5: user satisfaction, the first question to faculty member Q1 is used to measure the Nature of use, The second measure for the user satisfaction is Q2 the Navigation patterns, The third measure for the user satisfaction is Q3 the Number of site visits, The final measure for the user satisfaction is Q4 the Number of transactions executed, Table 5 shows that All the calculation have been made, the Chi-Square test, the degree of freedom, the mean, variance and standared deviation. Table 5. User satisfaction frequency for Arabic documents Criteria Nature of use Navigation patterns Number of site visits Number of transactions executed Mean(µ) Variance(S2) Standard deviation(r)

Strongly disagree 2 3 2 3

Disagree

Fair

Agree

3 3 2 3

2 2 3 2

20 23 23 22

Strongly Agree 8 4 5 3

2.50 0.25 0.5

2.75 0.19 0.44

2.25 0.19 0.44

22.00 1.50 1.22

5.00 3.50 1.87

v2 33.71 46.00 46.57 42.57

5 Conclusions A plagiarism detector for Arabic text is proposed with the ability to detect some unseen forms, such as synonym replacement, and sentence structure change. As a conclusion, to achieve the ethical principles, there is a big need to insure the intellectual property for the effort done by the students especially in Arabic language because (1) the industry of e-learning has become very important issue in Arab countries especially in kingdom of Saudi Arabia (2) up till know, there is no effective system for detecting plagiarism in Arabic. This paper Highlights this matter and proposed an available system for document written in Arabic language. The results show that APDS system has excellent deal with Arabic documents. Furthermore, a series of experiments on a set

498

M. Zaher et al.

of Arabic documents have been presented and discussed to demonstrate its effectiveness of the proposed methodology. The results show that average percentage of the Precision is 82% and the average percentage of the Recall is 92.5%.

References 1. Lam, S., Lee, K., Choi, S.: iChecker: an efficient plagiarism detection tool for learning management systems. Int. J. Syst. Serv.-Orient. Eng. 3(6), 16–31 (2016) 2. Abdi, A., Idris, N., Alguliyev, R.: PDLK: plagiarism detection using linguistic knowledge. Sci. Direct, Expert Syst. Appl. 42, 8936–8946 (2015) 3. Kahloula, B., Berri, J.: Plagiarism detection in arabic documents: approaches, architecture and systems. J. Digital Inf. Manage. 14(2), 124–135 (2016) 4. Abdelrahman, Y., Khalid, A., Osman, I.: A survey of plagiarism detection for arabic documents. Int. J. Adv. Comput. Technol. (IJACT) 4(6), 34–38 (2014) 5. Hussein, A.: Visualizing document similarity using n-grams and latent semantic analysis. SAI Comput. Conf., London 5, 269–279 (2016) 6. Borner, K., Chen, C., Boyack, K.: Knowledge domain visualization. In: Information Visualization, vol. 7, pp. 143–171. Springer, London (2006) 7. Subba, L.: An anti-plagiarism add-on for web-CAT. In: International Conference on Engaging Pedagogy (ICEP), Athlone Institute of Technology, Co. Westmeath, Ireland, vol. 3, pp. 102–1113 (2014) 8. Tao, G., Guowei, D., Baojiang, C.: Improved plagiarism detection algorithm based on abstract syntax tree. In: Fourth International Conference on Emerging Intelligent Data and Web Technologies, vol. 2, pp. 714–719 (2013) 9. El Bachir, M., Bagais, M.: APlag: a plagiarism checker for Arabic texts. Int. J. Inf. Technol. Comput. Sci. 10, 80–89 (2014) 10. Ahtiainen, A., Surakka, S., Rahikainen, M.: Plaggie: gnulicensed source code plagiarism detection engine for java exercises. In: Proceedings of the 6th Baltic Sea Conference on Computing Education Research: Koli Baltic, vol. 6, pp. 141–142 (2011) 11. Choi, Y., Park, Y., Choi, J.: RAMC: runtime abstract memory context based plagiarism detection in binary code. In: Proceedings of the 7th International Conference on Ubiquitous Information Management and Communication (ICUIMC 2013), vol. 67. ACM Press, January 2013. doi:10.1145/2448556.2448623 12. Osman, A., Salim, N., Binwahlan, M., Alteeb, R., Abuobieda, A.: An improved plagiarism detection scheme based on semantic role labeling. Appl. Soft Comput. J. 12, 1493–1502 (2012) 13. Grozea, C., Popescu, M.: ENCOPLOT: pairwise sequence matching in linear time applied to plagiarism detection. In: 25th Annual Conference of the Spanish Society for Natural Language Processing, SEPLN, vol. 09, pp. 10–18 (2011) 14. Mozgovoy, M., Frederiksson, K., White, D.R., Joy, M.S., Sutinen, E.: Fast plagiarism detection system. In: String Processing and Information Retrieval, 12th International Conference (SPIRE 2014). Lecture Notes in Computer Science, vol. 3772, pp. 267–270 (2014) 15. Wise, M.: Yap 3: improved detection of similarities in computer program and other texts. ACM Spec. Interest Group Comput. Sci. Educ. 28(1), 130–134 (2012) 16. Prechelt, L., Malpohl, G., Phlippsen, M.: Jplag: finding plagiarisms among a set of programs. In: 7th International Conference on Ubiquitous Information Management and Communication, vol. 67. ACM Press, January 2013. doi:10.1145/2448556.2448623

A New Model for Detecting Similarity in Arabic Documents

499

17. Sharma, K., Jindal, L.: An improved online plagiarism detection approach for semantic analysis using custom search engine. In: 3rd International Conference on Computing for Sustainable Global Development (INDIACom), vol. 3, pp. 124–129 (2016) 18. Aiken, A.: Moss: a system for detecting software plagiarism. University of California– Berkeley (2015). www.cs.berkeley.edu/aiken/moss.html 19. Clough, P.: Plagiarism in natural and programming languages: an overview of current tools and technologies. Research Memoranda, Department of Computer Science, University of Sheffield, 2(2), 3140–3144 (2014) 20. Butakov, S., Murzintsev, S., Tskhai, A.: Detecting text similarity on a scalable no-SQL database platform. In: International Conference on Platform Technology and Service (PlatCon) (2016). doi:10.3115/991250.991316 21. Hassan, A., Ibrahim, M.: Designing quality e-learning environments for higher education. Educ. Res. 1(6), 186–197 (2010) 22. Shehab, A., Elhoseny, M., Hassanien, A.: A hybrid scheme for automated essay grading based on LVQ and NLP techniques. In: 2016 12th International Computer Engineering Conference (ICENCO). IEEE (2016). doi:10.1109/ICENCO.2016.7856447 23. Elhoseny, H., Elhoseny, M., Abdelrazek, S., Bakry, H., Riad, A.: Utilizing service oriented architecture (SOA) in smart cities. Int. J. Adv. Comput. Technol. (IJACT) 8(3), 77–84 (2016)

Enhancing Semantic Arabic Information Retrieval via Arabic Wikipedia Assisted Search Expansion Layer Eslam Amer1(&), Heba M. Khalil1, and Tarek. El-Shistawy2 1

2

Computer Science Department, Faculty of Computer and Informatics, Benha University, Benha, Egypt {eslam.amer,heba.khalil}@fci.bu.edu.eg Information System Department, Faculty of Computer and Informatics, Benha University, Benha, Egypt [email protected]

Abstract. Deducing user intent of query texts is one of the challenging areas in semantic search engines to improve generalization and relevancy of query results. Most of the existing works rely on semantic ontologies to provide such knowledge. Nevertheless, semantic ontologies are not complete in many languages such as Arabic. This research proposes Arabic Wikipedia Assisted Search Expansion Layer (AWASEL), a system that enhances semantic text retrieval relying on Arabic Wikipedia. AWASEL intend to improve search results by adding relevant cross concepts to the original user’s query. The system is evaluated against Arabic news titles and headlines. In most cases, AWASEL was able to extract distinct documents which cover related background information needed to understand the news topic. Experimental evaluation of AWASEL showed that in terms of relevancy, it achieves precision 83.5% and recall 85.3%, and in terms of generalization, retrieved results are higher than initial user’s query represent for extracted results. Keywords: Natural language processing expansion  Arabic wikipedia



Semantic search



Query

1 Introduction Due to the increasing rate in the volume of Arabic users and documents indexed and uploaded over the World Wide Web (WWW), it becomes necessary to enhance the efficiency of Arabic retrieval systems in order to cope with such increasing amount of information. It is also necessary to retrieve results that are considered relevant to initial user queries [1]. Most of the previous works were aligned to ad hoc and/or cross-language retrieval. Some of the works focused on other Arabic retrieval aspects including image retrieval, speech search, social media and Web search. However, due to the complexity of Arabic language, efforts on Arabic retrieval systems continued to be insufficient compared to other efforts in other languages [2, 3]. Although current information retrieval systems like search engines return a huge amount of results, user’s main focus is still limited to © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_47

Enhancing Semantic Arabic Information Retrieval

501

results retrieved on the first page of returned search results. This causes a dilemma, as many of quality and highly relevant results may not exist on the first page of result or (top-10) results returned by the search engine and become invisible to users [4, 5]. User queries are always circulated under many different terms such as names events, titles. Traditional search techniques rely on ranking documents based on the occurrence of these terms within documents. Conventional search engines like Google1 or BING2 utilizes some sort of syntactic and semantic information such as word normalization, term synonyms and user location in order to retrieve more accurate and diverse relevant search results. Determining the intent behind user query is another challenge in Information Retrieval (IR) system [4]. Retrieving relevant documents with respect to initial search query often contradicts with the fact that most users are inexperienced in the art of web search. They usually propose queries that are short and mostly ambiguous which result in a deficient description of user’s need. This result in retrieving documents that are poor in terms of relevancy. Therefore, assistant systems are in need to semantically understand user queries. Query understanding can help search engine to route into particular relevant contents that will improve user contentment [6, 7]. However, query understanding problem involves the following challenges: Intent representation challenge: Defining a semantic representation that can correctly characterize the intent of user query is one of the most critical challenges. Traditional approaches discriminate the intent of the input query by adapting a number of initial seed queries as well as query log store present input query. Nevertheless, enhancements of these methodologies require a large number of labeled queries as well as huge amount of human effort in order to achieve better performance [8, 9]. Domain coverage challenge: Queries are often ambiguous; they can belong to many domains. Thus, clarifying the intent domain that highly correctly matches the input query is a great importance issue. Previous classification methods rely on corpus samples in order to determine the query domain. However, the performance of the classifier depends solely on the training corpus. The classifier cannot make a satisfactory prediction if the query is not covered in the training corpus [8–10]. Generalizations challenge: Retrieval systems should allow the search to provide the user with results that contain material that is relevant to sub- or related concepts to user’s query [11]. Semantically equivalent terms challenge: Retrieval systems should also be aware of concepts or named entities that may be addressed with a different synonym [11]. In this work, the aforementioned challenges were resolved by AWASEL by imposing a layer over web search engines to understand the user intent and hence provide the search engine with the implied cultural and common knowledge that was not explicitly provided by users’ queries.

1 2

www.google.com. www.bing.com.

502

E. Amer et al.

Users usually use query terms to figure out particular object or events they need information about [12]. Rather than using query terms or their synonym, AWASEL extracts query terms’ contextual cross-meaning. AWASEL relies on Arabic Wikipedia3 as a source of knowledge to enrich user original query. Wikipedia offers semantically equivalent terms (semantic sets), also, Wikipedia has the property of providing the user with similar terms related to the original term. Through adding interrelated concepts searching in Wikipedia will be directed towards customized user intended domain(s) and provides sub-concepts needed for query generalization. This paper is organized as follows: Sect. 2 covers the related work. Section 3 describes the proposed method. Experimental results are shown in Sect. 4. Finally, Sect. 5 presents the conclusion and future work.

2 Related Works Due to the increasing rate in the volume of Arabic data, Arabic Query Expansion (AQE) has received more attention in recent information retrieval literature. Query expansion (QE) intends to increase recall by retrieving new documents that are considered relevant. This is done by adding new semantically related vocabularies to the original query. Reformulating query solve the vocabulary mismatch problem and results in broaden the explored and retrieved documents. Recently, several approaches and several data sources have been used and utilized to expand user’s query linkage to proper terms, and has shown its effects on Arabic text retrieval. Enriching query with related terms would result in improving the efficiency of the textual information retrieval through changing the original search results and their order. Manning in [13] states that query expansion methods generally categorized into two types: global techniques, such ones don’t consider results obtained from an original query into account, and local techniques also known as relevance feedback, which use the analysis of returned documents to expand the query. Global query expansion methods depend on manual lexical semantic resources such as WordNet4. It is stated in [14] that, although expansion methods based on external resources are considered more efficient than methods relying on relevance feedback, it has to deal with problems of semantic ambiguity, that gave strong clarification of why local analysis methods shown to be more effective than global analysis. The problem of semantic ambiguity addressed in [15], Fang showed that global expansion methods based on lexical semantic resources like WordNet can be improved by considering co-occurrence based resources which lead to improving performance in an intuitive information retrieval model. Hybrid method for query expansion was proposed in [16]. The expansion method used combines both ontology-based and neural network methods. The ontology-based method aims to find users with similar interests to explore semantic relationships,

3 4

https://ar.wikipedia.org/. https://wordnet.princeton.edu/.

Enhancing Semantic Arabic Information Retrieval

503

while, the neural network method aims to collect terms from highly relevant web documents returned for user’s query. The experimental evaluation confirmed that the hybrid method could improve precision, and it needs few training items of query information to be provided. The work in [17] compares two semantic relatedness measures between terms, the Wikipedia-based Explicit Semantic Analysis (ESA) measure and EWC semantic relatedness measure. Terrier5 search engine was used; EWC and ESA were used as a source of selection for the query expansion technique. The technique was applied to NTCIR as a test collection which is 187,000 scientific articles. Authors indicated that EWC outperformed ESA. An approach presented in [11] for semantic query expansion by matching the query to its equivalent Wikipedia page. The approach made use of the matched Wikipedia article through extracting its first paragraph and entities exist in categories part. If Wikipedia doesn’t cover or contain query terms, they relied on “Al Raed dictionary” “ ” as a source for new query terms. The approach experimented using two methodologies for query expansion, that are single-based and multiple-based query expansion in order to reduce query and multiple expanded queries in order to reduce disturbance effect of single query expansion. The evaluation used in [11] was done by using data set constructed from “Zad Al Ma،ad” “‫ ”ﺯﺍﺩ ﺍﻟﻤﻴﻌﺎﺩ‬book written by the Islamic scholar “Ibn Al-Qyyim”. Experimental evaluation showed that multiple query expansion returned better results comparing to single query expansion. Structural Query Expansion (SQE) is another query expansion approach introduced in [18] to improve returned search results. The approach intended to identify entities from user query and link them with matched Wikipedia entities. The approach extracts the expansion features from corresponding Wikipedia article such as terms found in categories. The approach collect all terms found in category part of Wikipedia article for every entity, it considers only intersected terms found between categories as expansion terms to the original query. The approach system, three different datasets, Image CLEF, CHiC 2012 and CHiC 2013 were used. Experimental showed that the approach can be useful to increase the recall for top retrieved results. In this paper, a proposed system AWASEL is presented. AWASEL addressed the challenges that are described in the introduction section. In comparison with Google, AWASEL showed an enhancement in terms of query formulation that are reflected to retrieve results with high precision and recall values.

3 The Proposed AWASEL System In this section, the proposed system AWASEL is presented. Figure 1 summarize the proposed system. AWASEL relies on Wikipedia as a source of knowledge as it considered the greatest online encyclopedia in terms of size. Due to its openness, and continual editing, Wikipedia showed great coverage of terms compared to other lexicon or thesaurus-based methods.

5

http://terrier.org/.

504

E. Amer et al.

Wikipedia Returned Articles for matched entities N-gram Tokenization

Extracted keyphrases per article Find common Keyphrases

Keyphrases Extraction

Input query

Google Returned Results

Submit original query plus expansion terms

Expansion Terms

Fig. 1. The Proposed model (AWASEL) workflow

AWASEL has primarily two functions, the first is to generate the expansion terms, and the second is to submit the newly formulated query to Google to evaluate the results. Initially, the user query is submitted to Wikipedia to check if the whole query exists as one indexed entity or article in Wikipedia, if the whole query match, the system extract the first paragraph in Wikipedia article that representing the meaning of entity. The proposed system can be summarized in the following steps: 1. Tokenize original input query into query words or tokens. 2. Recognize named entities that may exist within the query. Named entities can be something like places, important events, and famous persons. Named entity identification algorithm based on N-Gram has been developed to identify and extract named entities from input query [19]. The matched algorithm described matches input query words against Arabic Wikipedia titles. The output of the algorithm is a list of Wiki-named entities. All Wikipedia articles that correspond to named entities are retrieved and parsed to extract the first paragraph of each Wiki-article; which is the definition part of an entity. 3. Important keyphrase concepts are extracted from definition paragraph(s). The employed keyphrase extraction algorithm is based on a previous work [20] which is used for Arabic keyphrase extraction. 4. Find common keyphrase concepts between each two successive concepts. 5. Construct the newly formulated query by using new common terms of the previous step with the original query terms to construct the newly expanded query. AWASEL system is characterized by the following features: 1. Exploiting on-line Wikipedia to identify all known entities. By known entities, we mean Idioms, named entities, known events …etc. This eliminates named entity dictionary. Also, it extracts up to date named entities and events.

Enhancing Semantic Arabic Information Retrieval

505

2. Enriching the query with all implicit concepts that relates identified entities. This makes the search results to be more general as it includes sub-concepts from Wikipedia 3. Formulating a new query by adding relevant terms which focus and customized Web search to the correct domain(s) intended by the user. The expansion model has two main phases: named entity extraction phase, and query expansion phase. Named entity extraction phase starts with query preprocessing to reduce noise elements in a query such as numbers, markers and special characters. Stop words were kept as they are of great impact especially in the meaning of Arabic text. For example, the sentence “‫ ”ﺃﺣﻤﺪ ﻣﻊ ﻣﺤﻤﺪ‬which means “Ahmed with Mohammed”, the word “‫ ”ﻣﻊ‬meaning “with” is of great importance to the sentence which means that a person with another person which imply that the Ahmed and Mohammed are different persons. However, if the word “‫ ”ﻣﻊ‬removed from the sentence the remaining part is “‫”ﺃﺣﻤﺪ ﻣﺤﻤﺪ‬, which may indicate one person with first name “‫ ”ﺃﺣﻤﺪ‬and surname “‫”ﻣﺤﻤﺪ‬. The processed text is tokenized using N-Gram tokenization algorithm [19], all resultants tokens were matched against indexed Arabic Wikipedia titles. Matched titles were retrieved and the matched tokens are identified as a Wikipedia concept. Results shown in [19] showed great recall ratio for Arabic tokens, which indicates that Wikipedia is a reliable source of knowledge. The algorithm is shown that full query is matched with Wikipedia to check if an article exists that match the query. In the case of matching, all query tokens are marked as entities. Otherwise, the query length N is decremented by one, and all permutation of tokens are checked for matching as a second iteration. The algorithm is continued until N = 0, or all tokens have been recognized. The expansion phase starts by collecting all Wikipedia articles for matched tokens. Articles are parsed using JSOUP6 parser. The first paragraph in all collected Wikipedia articles is targeted for extraction since it contains worthy keywords that are related to the article topic. The work proposed in [20] was used to extract candidate keyphrases for each paragraph. The resultant common intersected keywords between contiguous entities are considered the candidate expansion keywords that will be used to reformulate user query. Using of candidate expansion keywords depending solely on the nature of the initial query. Two scenarios should be taken into consideration: The first scenario, when the query length (N) equal one, or in another word, if there is only one named entity extracted from the user query. The reformulated query, in this case, will be constructed using the following equation. New Query ¼ ½n1  þ ½k1 þ k1 þ . . .: þ kn  Where n1 is the extracted entity, and (k1: kn) are the extracted keyphrases from Wikipedia article for entity n.

6

https://jsoup.org/.

506

E. Amer et al.

The second scenario, when the query length (N) is greater than one, meaning that, there are multiple entities in the user query. The reformulated query, in this case, will be constructed using the following equation. New Query ¼ ½n1: n2 . . .nm  þ ½w1 þ w1 þ . . .: þ wn  Where [n1: nm] are the extracted entities, and (w1: wn) are the commonly extracted keyphrases from Wikipedia article for entities [n1: nm].

4 Experimental Results 4.1

Dataset

One of the major limitations faced by Arabic research is the lack of adequate resources and gold standards that could help in evaluating the performance of proposed systems. For evaluating the proposed approach (AWASEL), a collection of 75 Arabic news queries has been randomly selected from different domains such as Events, Arts and Sports. The dataset is collected from an online Arabic newspaper “7‫ ”ﺍﻟﻴﻮﻡ ﺍﻟﺴﺎﺑﻊ‬which is equivalent to “7th day”. 4.2

Evaluation Procedure and Results

Initial query and formulated query will be given to Google search engine. Returned results from Google for both initial query and AWASEL will be evaluated using a set of ten Arabic native speakers’ annotators will be provided with results before and after query formulation. Given the impatient and temper nature of humans, it is believed that evaluating only top-10 results returned from Google for the initial and formulated query are enough to evaluate the performance of the proposed approach. To avoid prepositional judgment, results were blindly provided to annotators without any signs or information about the source of results. The following criteria were given to annotators regarding each item of results; the answer will be used as a judgment about it: 1 - Relevancy or irrelevancy of results. 2 - Generality of results. 3 - Repetition of results. According to annotators’ judgments, the following metrics Precision, Recall, F-measure were used to evaluate the relevancy of returned results. Precision is the ratio of the number of retrieved relevant results to the total number of both irrelevant and relevant results. Precision is calculated as: precision ¼

7

www.youm7.com/.

Number of relevant documents retrieved Total number of documents retrieved

Enhancing Semantic Arabic Information Retrieval

507

The recall is the ratio of the number of correct or relevant results retrieved to the total number of relevant results. The recall is calculated as: recall ¼

Number of relevant documents retrieved Total number of relevant documents

F-Measure is the weighted harmonic mean of precision and recall. F-measure calculated as: F  measure ¼

2:precision:recall precision þ recall

Experimental evaluation of the proposed approach showed that it yields a comparative performance based on the number of entities extracted from the original query. For example, Table 1 showed that AWASEL returned poor precision and slightly good recall compared to initial queries submitted to Google when a number of entities equal to one, however, the situation changed positively when the number of entities that are extracted from initial query increased. The reason behind the poor precision value when a number of entities equal to one were regarded to the problem of term ambiguity or broad nature of the term. As one entity become related to many domains, the possibility of retrieving different Wikipedia topics increased and correspondingly, poor expansion terms will be extracted, which may negatively affect the returned results. Table 1. Performance evaluation according to number of extracted entities from original query #Entities

#Queries Average precision AWASEL Initial query results

1- Entity 15 2- Entities 40 3- Entities 20

0.320 0.832 0.845

0.751 0.734 0.762

Average recall AWASEL Initial query results

Average F-measure AWASEL Initial query results

0.615 0.866 0.891

0.421 0.848 0.867

0.804 0.776 0.811

0.776 0.754 0.772

Performance evaluation showed that AWASEL outperforms basic search submitted to Google when the number of extracted entities increased in the original query. The reason behind that is the customization or focused the search on matching entities with specific Wikipedia articles, which in turn results in extracting valuable related terms that were used to expand original query in order to enhance the precision and recall of the retrieval results. The main objective of query expansion is to enrich initial user query with related terms. Such terms will focus and guide the search process and correspondingly results in retrieval of customized and highly relevant results. The proposed system AWASEL were evaluated using queries that are related to a different domain such as sports, news events, and arts. The evaluation discards fifteen queries that contain only one entity, that is according to a study concerned with the query length proposed to search engines, it was observed that the average length of the

508

E. Amer et al.

query in Google is 4.29 keywords8 which mean that users focus on more narrow search rather than broad terms. Experimental evaluation results presented in Table 2 showed that, in terms of relevancy, results retrieved through AWASEL outperforms basic query search by Google results in terms of precision and recall. On average, AWASEL showed an average precision (0.835) and an average recall of (0.853) compared to (0.792) and (0.772) that represents average precision and recall results returned by Google respectively. Table 2. AWASEL Performance evaluation results compared to Initial query results returned by Google for domain queries Domain #of Average precision queries AWASEL Initial query results Sports 20 0.846 0766 News 20 0.793 0780 Events Arts 20 0.86.6 0.711 Total Average 0.835 0.752

Average recall AWASEL Initial query results 0.866 0.792 0.813 0.811

Average F-measure AWASEL Initial query results 0.855 0.778 0.801 0.795

0.880 0.853

0.872 0.842

0.782 0.795

0.744 0.772

Evaluation of AWASEL results for queries that are related to news events showed slightly decreased performance in terms of precision and recall compared to other results returned for queries related to other domains. The reason behind that was due to Arabic Wikipedia don’t cover all new entities that appear daily especially for news domain. Most of the existing search engines rely only on morphological similarity as an indicator for relevancy in syntactic search. In the proposed work, the morphological similarity was also taken into consideration; however, it is also augmented with the semantic coverage of results. In other words, the output results shouldn’t depend only on the morphological similarity between the user query and returned results, however, results may contain entries that may not morphologically, yet, it is semantically related to the input query. Top-10 results returned by Google for both initial query and AWASEL were used to evaluate the semantic performance of both results in terms of generalization, morphological similarity, and repetition which refers to the number of results that appears more than once and comes from the same domain. Evaluating the Semantic performance between results returned for initial input query and results returned by AWASEL were judged by interrogators, even in cases when there is no explicit morphological similarity. Evaluation results are shown in Table 3.

8

http://www.keyworddiscovery.com/keyword-stats.html.

Enhancing Semantic Arabic Information Retrieval

509

Table 3. Semantic evaluation of AWASEL results compared to Initial query results returned by Google to domain queries. Methodology Repetition Generalization Morphological similarity AWASEL 0.180 0.436 0.303 Initial query 0.250 0.307 0.416

Table 3 showed that, on average, AWASEL semantically performs well compared to results returned for the initial query. Based on interrogators judgment, the percentage of generalization results that are returned from different domains and marked as relevant are increased (43.6%) compared to (30.7%) for initial query results. About repetition and morphological similarity of results, AWASEL showed a decreasing percentage in terms of repeated results compared to initial query results.

5 Conclusion The understanding of user query is considered one of the challenging areas in semantic search. Most works use semantic ontologies to refine and understand user query. However, semantic ontologies are not complete in many languages such as Arabic. In this paper, a proposed approach named AWASEL was presented for enhancing Arabic text retrieval using semantic techniques. AWASEL relied on Arabic Wikipedia as an information source. A named entity extraction algorithm was developed to extract named entities and matched it against Arabic Wikipedia articles. Top extracted keyphrases from Wiki-articles were used to formulate an initial query by enriching it with expanded terms that are related to the initial query. Experimental results showed that the relevancy in terms of precision and recall for resulted returned by AWASEL is much better than results retrieved for initial query.

References 1. Elabd, E., Alshari, E., Abdulkader, H.: Semantic boolean arabic information retrieval. arXiv preprint arXiv:1512.03167 (2015) 2. Oard, D.W., Gey, F.C.: The TREC 2002 Arabic/English CLIR Track. In: TREC (2002) 3. Gey, F.C., Oard, D.W.: The TREC-2001 cross-language information retrieval track: searching Arabic using English, French or Arabic queries. In: TREC (2001) 4. Hu, J., Wang, G., Lochovsky, F., Sun, J.T., Chen, Z.: Understanding user’s query intent with Wikipedia. In: Proceedings of the 18th International Conference on World Wide Web, pp. 471–480. ACM (2009) 5. Amer, E.: Enhancing efficiency of web search engines through ontology learning from unstructured information sources. In: International Conference on Information Reuse and Integration (IRI), pp. 542–549 (2015) 6. Farzaneh, M., Vanani, I.R., Sohrabi, B.: An inclusive ontology based on the categories of intelligent software agents: an exploratory research. Int. J. Intell. Eng. Inform. 1(2) (2011) 7. Reddy, A.B., Govardhan, A.: A novel approach for similarity and indexing-based ontology for semantic web educational system. Int. J. Intell. Eng. Inform. 4(2), 117–134 (2016)

510

E. Amer et al.

8. Beitzel, S.M., Jensen, E.C., Frieder, O., Lewis, D.D., Chowdhury, A., Kolcz, A.: Improving automatic query classification via semi-supervised learning. In: Fifth IEEE International Conference on Data Mining (ICDM 2005), p. 8 (2005) 9. Li, X., Wang, Y.Y., Acero, A.: Learning query intent from regularized click graphs. In: Proceedings of the 31st annual International Conference on Research and Development in Information Retrieval (ACM SIGIR), pp. 339–346 (2008) 10. Polatidis, N., Georgiadis, C.K.: A ubiquitous recommender system based on collaborative filtering and social networking data. Int. J. Intell. Eng. Inform. 3(2–3), 186–204 (2015) 11. Mahgoub, A.Y., Rashwan, M.A., Raafat, H., Zahran, M.A., Fayek, M.B.: Semantic query expansion for Arabic information retrieval. ANLP 2014, 87 (2014) 12. Al-Rajebah, N.I., Al-Khalifa, H.S., Al-Salman, A.S.: Exploiting Arabic Wikipedia for automatic ontology generation: a proposed approach. In: 2011 IEEE International Conference on Semantic Technology and Information Retrieval, pp. 70–76 (2011) 13. Manning, C.D., Raghavan, P., Schütze, H.: Introduction to information retrieval. Cambridge University Press, New York (2008) 14. Xu, J., Bruce Croft, W.: Query expansion using local and global document analysis. In: SIGIR 1996: Proceedings of the 19th Annual International ACM SIGIR Conference on Research and Development in Information Retrieval, pp. 4–11 (1996) 15. Fang, H.: A re-examination of query expansion using lexical resources. In: Proceedings of the 46th Annual Meeting of the Association for Computational Linguistics, Columbus, Ohio, USA, 15–20 June 2008, pp. 139–147. ACL (2008) 16. Han, Lixin, Chen, Guihai: HQE: a hybrid method for query expansion. Expert Syst. Appl. 36(4), 7985–7991 (2009) 17. Vitaly, K., Yannis, H.: A query expansion technique using the EWC semantic relatedness measure. Inform. Int. J. Comput. Inform. 35(4), 401–406 (2011) 18. Guisado-Gámez, J., Prat-Pérez, A., Larriba-Pey, J.L.: Query expansion via structural motifs in wikipedia graph. arXiv preprint arXiv:1602.07217 (2016) 19. Amer, E., Khalil, H.M., El-shistawy, T.: Hierarchical N-gram algorithm for extracting Arabic entities. In: Proceedings of the 10th International Conference on Informatics and Systems, pp. 56–60. ACM (2016) 20. El-Shishtawy, T., El-Ghannam, F.: An accurate Arabic root-based lemmatizer for information retrieval purposes. arXiv preprint arXiv:1203.3584 (2012)

Development of an Arabic Questions Answering App for Android Smartphones Mazen Juma1(&), Azza Abdel Monem2, and Khaled Shaalan1 1

British University in Dubai, Block 11, 1st and 2nd Floor, Dubai International Academic City, Dubai, UAE [email protected], [email protected] 2 Faculty of Computer and Information Sciences, Ain Shams University, Abbassia, Cairo 11566, Egypt [email protected]

Abstract. In the context of the smartphones booming in the Arab world over the last decade with more than one hundred million Android users, depend on these devices on a daily basis to search and retrieve available information in Arabic language from the various online sources. This research demonstrates the developing of the first, novel and unique tool for Arabic Question Answering App (AQA App). The proposed solution enables the Arabic users to find the accurate, direct and quick answers for a large variety of questions in Arabic language at anywhere and anytime through their Android smartphones. The architecture framework of AQA App is implemented, deployed and tested based on Android Studio Platform. The results of performance evaluation for AQA App reveals precise to be 76% on average of almost correct answers for different types of questions with recall being 88%. The response time of retrieved answers for AQA App was ranging as per the type of question between 93 and 114 ns. Moreover, the performance of proposed AQA App when compared with other Question and Answering Apps in English language such as “Quora” and “Answers” Apps showed that the performance of Answers App and AQA App were approximately equal, but the performance for both of them was lower than performance of “Quora” App. With the very lack in availability of any Q&A app in Arabic, the results where compared with English Apps. Keywords: NLP

 Question answering  Arabic  Android smartphone apps

1 Introduction The research in Question Answering Systems (QAS) within the Natural Language Processing (NLP) discipline begins early 1960s. The older systems attached a natural language interface to a database operated under specific domains. Since 1999, the question answering sessions of Text Retrieval Conference (TREC) achieved a great progress in standalone desktop and web-based question answering systems with a wide range of research groups participating, both from industry and academia [4]. Nowadays, smartphones provide the users with a unique flexibility and exceptional elasticity to access available information in a variety of formats. Many users are interested not © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_48

512

M. Juma et al.

only for information but also in knowing the exact answer to a query and many documents they usually have to browse to satisfy their needs [28] easily frustrate them. According to Alchalabi [5], the smartphones’ users are being able to extract online data via different sources and formats at any time and from any location, wherein Bouziane et al. [11], highlighted the importance of retrieving precise answers to the users questions. This paper presents the development of Arabic Questions Answering App. The contribution to the research community is a unique development model of Arabic Questions Answering App (AQA App) for Android smartphones. Because the commercial question answering apps which available over regular apps store in English language has been developed and installed as a black box without any sharing for the knowledge about its architecture design or technical details of these apps that consider as own confidential manner. Secondly, in the applied field, the contribution of this research is introducing a unique app to benefit from the question answering in Arabic language for Android smartphones that provide an ideal solution for Arabic users. This study structured as follows. Section 2 discusses related work. Problem Definition and Algorithm in covered in Sect. 3. In Addition, Experimental Evaluation in Sect. 4 will demonstrate the Methodology, Results and Discussion. The conclusion and future work on critical observations covered in Sect. 5.

2 Related Works Few related works focused on development and performance evaluation for questions answering systems through smartphones and cope to their challenges. One of the vital studies in this area is the Chinese Question Answering System that process the queries of mobile users in natural language and retrieve precise information textually from online databases over smartphones through improving Chinese linguistic features [16]. In addition, “Smart Web” is a multimodal question answering system that use mobile devices to access available web data and address the techniques of information extraction [15]. In addition, the interaction techniques with world wild web by using smartphones via proxy servers that handle computing tasks for retrieval system enhance automatic capabilities for user queries and provide deeply access to web sites such as efficient local indexing [34]. Furthermore, “Power Browser” is an information retrieval system that navigates webpages with knowledge base and compatible with small screen of mobile devices [3]. The “FQAS” provides a fuzzy combination system of question answering services and logic-based techniques that tailored for smartphones and focused on retrieved relevant documents, which contain direct answers to the user questions [22]. Moreover, “QALL-ME” project aims to develop shared question answering infrastructure with empirical evaluation for any smartphone to access promptly online information via different sources and services in multimodal and multilingual [24].

Development of an Arabic Questions Answering App

513

3 Problem Definition and Algorithm The main task of this research problem is defined as the problem to answer the questions in Arabic language via Android smartphone app by using Wikipedia as target data collections. Wikipedia has well-organized information based on topics. Each set of data is concerned about one single topic [25]. In addition, at the first paragraph of each data set there is a brief description of that topic. This simply help to retrieve the information that relevant to the target term of query and return the initial paragraph as an answer. The general input and output (I/Q) process of AQA App as shown below in Fig. 1 [7]. I/Q process comprises of three main parts to search Wikipedia to extract answer.

Fig. 1. Input/Output (I/Q) process in AQA App

The target term extraction recognizes the regular wh-question expressions such as when, what and how. Then establish which form of verb to be the target term and what the purpose of it, used for is and to do [2]. The second part of I/Q process will be the information retrieval that extract the target term by indexing and searching Wikipedia, comparing similarity to all data sets and delivering the outputs to the third part of I/Q process [14]. The answer extraction part will aggregate the target information and eliminate the less important comments between parenthesis; finally, obtain constructed answer with specified size [20]. For example, the answer of query extracted directly from the data set titled :

Algorithm Definition The description of the circular process for the algorithm that is used to create, utilize and test the proposed solution of AQA App through four phases are as follows: (1) Algorithm designing: identifying the inputs, understanding the requirements, breaking out the research problem into steps; and calculating the outputs for each step by using the pseudo code [8]. (2) Algorithm analyzing: examining the user expectations, reaching to maximum efficiency, working with different size of data; and looking for producing the acceptable results [18]. (3) Algorithm implementation: writing the input and output process with UML modeling, coding the steps of the algorithm by using Java beans; and handling the input data for AQA App executing [5].

514

M. Juma et al.

(4) Algorithm experimentation: testing with different variables, debugging the code; and keeping work towards the results [29]. The algorithm of the proposed solution of AQA App divided into three main parts with twelve major steps. The algorithm part1 is the question analysis, part2 of the algorithm is the answer retrieval and the final part of the algorithm is the answer extraction. The answer extraction is with different inputs and outputs for each part of the high level algorithm as per the pseudo code of AQA App in Fig. 2. The algorithm tested to illustrate the key steps that carried out and assured the precision of gained outputs. For example, the user types the Arabic factoid question like: When was Toyota founded?” the question will be tokenized with interrogative noun “When” and the expected type of answer will be time. The keywords will be extracted “Toyota – Found” and if necessary, stemmed by removing the affixes for easy computing with the similarity, also the extra keywords will be “year, month, day” … etc.

Fig. 2. High level algorithm of AQA App

The algorithm will find all the potential answers that encompass any keyword or any extra keyword from the Wikipedia

For each retrieved answer, the similarity is calculated by counting the stemmed keywords contained per every answer. The ranking of the retrieved answers will be in descending order based on the calculated value of the answers similarity. Proposed Solution The latest technologies like 4th Generation (4G) of Wireless Application Protocol (WAP) layer are used for enabling the users of Android smartphones to access the online information [12]. The model of AQA App programming

Development of an Arabic Questions Answering App

515

Fig. 3. AQA App interoperability platform

has characteristics that accommodated the constraints of Wikipedia HTML-based contents that located on web. AQA App implemented as web service via smartphone, which takes the user query in Arabic language, and send it through the gateway then returns with exact answer from Wikipedia data sets [29] (Fig. 3). The programming model of the proposed solution provided the interface of Arabic Question Answering App that enable the users to generate their questions and communicate the gateway. The encoders will handle all requests and establish the connection with web server to send the questions to the engine by using protocol adapters [28]. Searching the collection of information contents within Arabic Wikipedia and find the potential answers. The validated answer is return to the gateway through the web server and decoder again before sending to the smartphone user by previously connection that established via AQA App [30]. Figure 4 depicts the demonstration for model AQA App.

Fig. 4. Model of AQA App programming

AQA App is constituted of three main parts with different role carried by each of them: (1) the interface, with three components; is designed as simple input output form that be able to accept the factoid question in Arabic language, validate and pass it by the handler component. Later on, the viewer component will format and present the list of relevance answers in ranks when retrieved from Arabic Wikipedia. The notifier will display the notification balloon at the top of smartphone screen to tell the user that his request is finished Athira et al. [6]. The engine, with components of analyzer and extractor; is developed to handle with all bidirectional processes behind the interface of AQA App. The analyzer component aims to identify the question type. It consists of five sub-components: (a) tokenizer will break the user question into distinct words. (b) The answer type detector will identify the answer category such as person, time, and location. (c) The question keywords extractor will exclude the interrogative nouns and stop-words. (d) The extra keywords generator will produce keywords synonyms to enlarge the span of relevant answers. (e) And finally, the question words stemmer [17].

516

M. Juma et al.

The extractor component is accountable for choosing the furthermost related answers from list of the potential answers. It consists of three sub-components: (a) The stemmer of the answer keywords will find the keywords’ roots for the retrieved answer. (b) The similarity checker will carry out the task of counting the number of keywords that matching between each potential answer and user question. (c) The ranker will sort the relevance answers in descending order [1]. The repository, with components of locator and data sets of Wikipedia; implemented to manipulate the retrieved answers from the web. The locator component will search online the available data sets of Arabic Wikipedia to detect the potential answers and retrieve it. Then it will locate all the patterns in the sentences that match any keywords of the question or extra keywords as shown in Fig. 5 Alkhawaldeh [4].

Fig. 5. AQA App architecture framework

4 Experimental Evaluation The objective of the experimental evaluation that performed in this research as an essential part of any research of computer science discipline is to judge the quality of the architecture framework, the effectiveness of model design and the efficiency of the algorithm performance for the proposed solution of Arabic Questions Answering App (AQA App) [10]. Methodology In this research, the approach used to evaluate the performance of top available apps of questions answering that selected like Quora App and Answers App for English language and proposed solution of AQA App for Arabic language. The feeding of each question that listed in the set of questions and analyzing the retrieved answers performed through two stages. Firstly, the evaluation stage identifies the capabilities of questions answering apps to retrieve the answers of the asked queries, then judges the quality of answers retrieval. Secondly, the modification forms of same set of questions in both English and Arabic languages that asked through questions answering apps. This generally aims to test the ability of these apps to answer the re-phrased queries in varied format that asked by different users about the same thing [27]. The methodology in this study carried out with two vital parts: (1) question

Development of an Arabic Questions Answering App

517

Table 1. Sample of experimental questions

collection: the selection of total 120 factoid questions from different domains, divided into 60 questions in English language used for performance evaluation of Quora and Answers questions answering apps. The same 60 questions but in Arabic language used for performance evaluation of AQA App with avoidance of bias. The set of collected questions covers the different types of wh-questions, in which 10 questions for each type; with definite information in the top retrieved answers by the apps as shown below in Table (1) Sing et al. [28]. (2) Evaluation criteria: there are 11 criteria that carefully chosen to complete the performance analysis. These criterial measurements have different importance, so the weighted scheme has been introduced by assigned from (0.00) to (1.00). The weight of (0.00) presents no answer retrieval while the weight of (1.00) presents the highly relevant of retrieved answers [9]. The correct answers that showed on one link with small interpretation required will weight of (0.90), but the weight of expected format for correct answer founded in first paragraph by one of top 5 web links will be (0.80). As well, in the same case but the answers pointed in next top 5 web links that will be weight with (0.70), and if it is in top 10 web links and need more interpretation the weight will be (0.60). The weight of (0.50) for the correct answer with exact format that ranking 11 web links and more as well as the weight of (0.40) is for the correct answer founded in web links within the second depth or more [23]. The weightage of interpreted answers with interpreted format will be (0.30), if is found in the first paragraph on top 10 web links while (0.20) if it is founded but some manual interpretation required for the sentences. The weight of (0.10) for the correct answer with expected format in first paragraph but founded by web links that ranking 11 and more with need for manual interpretation as shown below in Table 2 Ray et al. [26]. Results: The end goal of AQA App is to develop accurate and fast question answering app that answers factoid questions in Arabic language. To evaluate like the apps for Android smartphones, we used the following evaluation metrics: Recall: “the ratio of the number of relevant sentences retrieved to the total number of relevant sentences in the repository”. The calculated percentage for recall is typically expressed as “Recall = X/X + Y * 100%”; where X is the number of related answers retrieval; and Y is the number of related answers not retrieval [5]. Precision: “the ratio of the number of relevant sentences retrieved to the total number of sentences retrieved”. The calculated percentage for precision is typically expressed as “Precision = X/X + Z * 100%”; Where X is the number of related answers retrieval; and Z is the number of not related answers retrieval.

518

M. Juma et al. Table 2. Evaluation criteria of performance analysis Evaluation criteria # Answer Format 01 Exact Expected 02 Correct Interpreted 03 Correct Expected 04 Correct Expected 05 Correct Expected 06 Correct Expected 07 Correct Interpreted 08 Interpreted Interpreted 09 Interpreted Interpreted 10 Correct Expected 11 No answer —

Link One One 1st Top 5 2nd Top 5 Top 10 Top > 11 Depth >= 2 Top 10 Top 10 Top > 11 —

Paragraph — — 1st 1st Interpreted 1st — 1st Interpreted 1st —

Page — — — — One — — — — Interpreted —

Weight 1.00 0.90 0.80 0.70 0.60 0.50 0.40 0.30 0.20 0.10 0.00

Response Time: “the time from when a user hits the search button until a response is displayed on the browser”. Tens of empirical tests with different types of factoid wh-questions were been ran. The result of AQA App based on the performance metrics of recall, precision and response time placed in Table 3. Table 3. Results of evaluation metrics Evaluation metrics Question types When Where Recall (%) 89 85 Precision (%) 76 74 Response time (ns) 109 114

Who What How much How many 87 83 93 91 72 74 82 78 102 106 95 93

As demonstrated below in Fig. 6, the recall outputs of different types of wh-questions for AQA App were various. The “How much-question” has the highest recall by 93% while “What-question” has the lowest recall by 83% with the overall average recall by 88%.

Fig. 6. Recall of different types of questions

Development of an Arabic Questions Answering App

519

The average precision for AQA App is 76%. The retrieved answers with scoring between (1.00–0.80) will classify as “good-accurate”, from (0.70–0.50) scoring will classify as “average-accurate”, and finally the “poor-accurate” will be scoring for less than (0.50). The highest value of precision was again for “How much-question” by 82%, but the least value of precision across overall the different types of wh-questions had percentage of 72%, which is no lower than 70%. “How much-question” and “how many-question” have the most precise answers because its questions are related to the numbers. The results of precision metric are greatly dependent on quantity of available information in Wikipedia data sets that relevant or irrelevant for each user query as shown below in Fig. 7.

Fig. 7. Precision of different types of questions

The calculated response time for AQA App that measured in nanoseconds is illustrated for different types of wh-questions. The shortest response time was 93 ns for “How many-question” while the “Where-question” consumes the longest one by 114 ns. The “Who-question” and “What-question” have medium results for response time with 102 and 106 ns respectively (Fig. 8).

Fig. 8. Response time of different types of questions

520

M. Juma et al.

The probably reasons for these results are the less processing that required for searching the names of people and seeking the facts about something which it is mostly straightforward question. On the other hand, the benchmarking is perform in order to have obvious insight into the performance results of AQA App by comparing with the performance results of Quora App and Answers App as well-established questions answering apps that support English language because recently there is no Arabic question-answering app that available for benchmarking. The results of comparison for recall evaluation showed that Quora App was continuously higher than the results of recall for Answers App and AQA App and maintained on average at 95.5%, as the prior has positively retrieved all related answers from Wikipedia data sets shown in Table 4 and Fig. 9. Table 4. Comparison of recall evaluation Recall evaluation Question types When Where Quora App 97 93 Answers App 91 88 AQA App 89 85

Who 96 90 87

What 92 86 83

How Much How Many 98 97 95 92 93 91

Fig. 9. Comparison of the recall evaluation

The AQA App precision on average is definitely less than Quora App by 85% and Answers App by 78.5%, but it is scoring 76% although the big variance in capacity and size of Wikipedia data sets in both languages Arabic and English for different wh-questions types. This is strong evidence that AQA App has great potential as question answering app for Arabic-speaking users around the world shown in Table 5 and Fig. 10. Table 5. Comparison of precision evaluation Precision evaluation Question types When Where Quora App 83 81 Answers App 78 77 AQA App 76 74

Who 84 75 72

What 85 78 74

How Much How Many 91 86 85 81 82 78

Development of an Arabic Questions Answering App

521

Fig. 10. Comparison of precision evaluation

Indeed, Quora Question Answering App is faster than Answers Question Answering App and Arabic Question Answering App, the using of higher powerful machine for Quora App processing, as opposite only 3.00 GHz CPU machine for AQA App. The shortest response time for Quora App was for “How many-question” with 82 ns and longest response time was for “Where-question” with 101 ns. In contrast, these types of wh-questions in Answers App and AQA App were having the shortest response time with 90 and 93 ns respectively; and longest response time with 110 and 114 ns respectively as shown in Table 6 and Fig. 11. Table 6. Comparison of response time evaluation Response time evaluation Question types When Where Quora App 96 101 Answers App 106 110 AQA App 109 114

Who What How Much How Many 91 93 84 82 98 101 92 90 102 106 95 93

Fig. 11. Comparison of response time evaluation

522

M. Juma et al.

The highest results of evaluation in performance metrics of recall, precision and response time where achieved by Quora App, which depend on statistical approach for answers retrieval. These results present that the measurement of recall was more significant than the measurement of precision in terms of using a very huge repository like the internet. Still Quora performances are most better than the performance of AQA App primarily caused by two major factors: Firstly, the using of the internet as a massive resource of knowledge base and information repository while AQA App retrieves the correct answers by searching the entire data sets that available online for Arabic Wikipedia [21]. Secondly, the sophisticated internal processing of the retrieved information that produced superior results of the precision whereas AQA App is the first version of the proposed solution for Arabic question answering app [30]. The proposed solution of AQA App has 76% correctly answers retrieval; this is mean that about 6% of the average improvement in comparison with answers retrieval for Quora App and Answers App.

5 Conclusion This research demonstrated the importance of the natural language processing in the contribution to knowledge for the development of the unique Arabic Question Answering App for Android smartphones and the needs to bridge the current research gaps and cope the development challenges in this area that described in the state-of-the-art of the literature review and the related works. Furthermore, the evaluation methodologies for the standard performance measurements of AQA App that handled in the open domain and based on different forms of factoid questions are explain carefully. Arabic Questions Answering App (AQA App) that described in this study as a proposed solution for this research problem has been developed, implemented, tested and evaluated. AQA App depends on Arabic Wikipedia data sets that available online to extract the accurate answers for the questions of native Arabic users who are using Android smartphones. The architecture framework designing of the proposed solution has been consisted of three main parts: the interface with components of handler, notifier and viewer; the engine with components of analyzer and extractor; and the repository with components of locator and data sets of Wikipedia. The empirical testing for performance evaluation of AQA App observed acceptable results of standard metrics such as the recall was 88%, the precision on average was 76% and response time was ranged between 93 and 114 ns. Furthermore, the comparison established among the performance of proposed AQA App in Arabic language, Quora App and Answers App in English language, because currently there are no Arabic Questions Answering Apps. The performance results presented that AQA App and Answers App were nearly equivalent, but the performance efficient of both Apps was lower when compared with the performance of Quora App.

Development of an Arabic Questions Answering App

523

References 1. Abdul-Mageed, M., Diab, M., Kubler, S.: SAMAR: Subjectivity and sentiment analysis for Arabic social media. Comput. Speech Lang. 28(1), 20–37 (2014). http://dx.doi.org/10.1016/ j.csl.2013.03.001 2. AbuShawar, B., Atwell, E.: Arabic question-answering via instance based learning from an FAQ corpus. In: Proceedings of the International Conference on Corpus Linguistics, CL 2009 (2009). http://eprints.whiterose.ac.uk/82302/1/ArabicQuestionAnswering.pdf 3. AbuTaha, A.W.: An Ontology-Based Arabic Question Answering System. Faculty of Information Technology, Islamic University, Gaza (2015) 4. Alkhawaldeh, F.T.: Answer extraction for why Arabic questions answering systems: EWAQ. World Comput. Sci. Inf. Technol. J. (WCSIT) 5(5), 82–86 (2015) 5. Alchalabi, H.: Question processing for Arabic Question Answering system. M. Sc. Thesis. Faculty of Engineering & IT. The British University in Dubai (2015) 6. Athira, P., Sreeja, M., Reghuraj, C.: Architecture of an ontology-based domain-specific natural language question answering system. Int. J. Web Semant. Technol. 4(4), 31–39 (2013). http://www.airccse.org/journal/papers/4ijwest03.pdf 7. Awadallah, R., Rauber, A.: Web-based multiple choice question answering for English and Arabic questions. In: ECIR 2006. LNCS, vol. 3936, pp. 515–518 (2006). Department of Software Technology and Interactive Systems, Vienna University of Technology, Austria 8. Benajiba, Y., Rosso, P., Lyhyaoui, A.: Implementation of the ArabiQA question answering system’s components. In: Workshop on Arabic Natural, vol. 329, pp. 1–5 (2007) 9. Badawy, O., Shaheen, M., Hamadene, A.: ARQA high-performance Arabic Question Answering system. In: Arabic Language Technology International Conference, pp. 129–136 (2011) 10. Bilotti, M.W., Nyberg, E.: Evaluation for Scenario Question Answering Systems. Language Technologies Institute. Carnegie Mellon University (2006). https://www.cs.cmu.edu/ *mbilotti/pubs/Bilotti06.pdf 11. Bouziane, A., Djelloul, B., Noureddine, D., Mimounet, M.: Question answering systems: survey and trends. Procedia Comput. Sci. 73(Awict), 366–375 (2015). http://dx.doi.org/10. 1016/j.procs.2015.12.005 12. Brady, P.: Android anatomy and physiology agenda (2008). https://sites.google.com/site/io/ anatomy–physiology-of-an-android 13. Brähler, S.: Analysis of the Android architecture, p. 52 (2010). http://os.ibds.kit.edu/ downloads/sa_2010_stefan_android-architecture.pdf 14. Brini, W., Ellouze, M., Tirgui, O., Mesfar, S., Hadrich, L., Rosso, P.: Factoid and definitional Arabic Question Answering system. Arab. J. Sci. Eng. 4(51), 769–784 (2014) 15. Buyukkokten, O., Molina, H., Paepcke, A.: Focused web searching with PDAs. In: 9th International (WWW9) Conference, Amsterdam, Netherlands (2000) 16. Chen, B., Chang, C.: Speech retrieval of Mandarin broadcast news via mobile devices. In: Interspeech, Lisbon, Portugal (2005) 17. Dhinakaran, P., Saketh, P.: Android architecture and binder (2012). http://rts.lab.asu.edu/ web_438/project_final/CSE_598_Android_Architecture_Binder.pdf 18. Hammo, B., Lytinen, S.: QARAB: A Question Answering System to support the Arabic language. In: Computational Approaches to Semitic Languages, ACL 2002, p. 11 (2002). http://www.cs.um.edu.mt/papers/hammo:etal.pdf 19. Jochen, L. (2005). The Deployment of a Mobile Question Answering System. Search Engine Meeting. Boston, Massachusetts, 1(1)

524

M. Juma et al.

20. Kang, B., Kim, Y., Lee, S.: Exploiting concept clusters for content based information retrieval. Inf. Sci. 8(170), 443–462 (2005) 21. Kanaan, G., Hammouri, A., Al-Shalabi, R., Swalha, M.: A new question answering system for the Arabic language. Am. J. Appl. Sci. 6(4), 797–805 (2009) 22. Larsen, H.: Fuzzy data mining of term associations for flexible query answering. In: International Conference in Fuzzy Logic and Technology (EUSFLAT 2001), Leicester, England (2001) 23. Lin, J., Fushman, D.: Methods for automatically evaluating answers to complex questions. Inf. Retrieval 9(5), 565–587 (2006) 24. Madhu, G., Govardhan, A., Rajinikanth, T.K.V.: Intelligent semantic web search engines: a brief survey. Int. J. Web Semant. Technol. 2(1), 34–42 (2011) 25. Ortiz-Arroyo, D.: Flexible question answering system for mobile devices. In: 3rd International Conference on Digital Information Management, ICDIM 2008, pp. 266–271 (2008) 26. Ray, S.K., Singh, S., Joshi, B.P.: Question answering systems performance evaluation: to construct an effective conceptual query based on ontologies and WordNet (2008). http:// ceur-ws.org/swap2008_submission_25.pdf 27. Ray, S.K. & Shaalan, K. (2015). A Review and Future Perspectives of Arabic Question Answering Systems. IEEE Transactions on Knowledge and Data Engineering, April 2015, pp. 1–20 28. Sing, G., Ardil, C., Wong, W., Sahib, S.: Response quality evaluation in heterogeneous question answering system: a black box approach. In: World Academy of Science, Engineering and Technology, vol. 2, no. 9 (2005). ISSN 1307-6884 29. Wilner, N.: Android on Power Architecture. pp.1–44 (2009). http://elinux.org/images/07/ Android_On_Power.pdf 30. Yilmaz, S., Aydin, I., Demirbas, M.: Targeted question answering on smartphones utilizing app based user classification. In: International Conference on Collaboration Technologies and Systems, CTS 2014, pp. 371–378 (2014)

Intelligent Systems and Applications

A Generic Optimization Solution for Hybrid Energy Systems Based on Agent Coordination Djamel Saba1,2(&), Brahim Berbaoui1, Houssem Eddine Degha2, and Fatima Zohra Laallam2 1

Unité de Recherche en Energies Renouvelables en Milieu Saharien, URER-MS, Centre de Développement des Energies Renouvelables, CDER, 01000 Adrar, Algeria [email protected], [email protected] 2 Lab. Laboratoire de l’Intelligence Artificielle et les Technologies de l’Information, Fac. Faculté des nouvelles technologies de l’information et de la communication, Université Kasdi Merbah Ouargla, 30 000 Ouargla, Algeria [email protected], [email protected]

Abstract. The main disadvantage of renewable energy sources for autonomous use is the intermittence in its electrical production. To solve this problem momentarily, we will use hybridization between several energy sources. By definition, a hybrid energy system (HES) is an electric power generation system containing at least two distinct energy sources. Generally, HES combine two complementary technologies, one or more non-renewable energy sources with at least one renewable energy source. To improve the reliability of HES, it is necessary to bring new solutions and concentrate on the optimization problem. Various tools (techniques, software, et.) have been reported in the literature to determine the optimal configuration of the HES. Each tool based on one or hybridization of approaches (probability, linear programming, fuzzy logic, neural networks, et..). However, the choice between these tools is considered a real problem for users. Responding to this problem we will present our contribution. This paper presents a generic solution for the optimization of HES, based on coordination between agents and a shared ontology. We present a detailed design of this solution. We conclude this document with an implementation on real sites in Algeria, a results validation, a conclusion, and perspectives. Keywords: Renewable energies  Hybrid energy systems  Optimization Multi agent systems  Coordination between agents  Ontology



1 Introduction The multi-agent systems (MAS) technique is widely used in various aspects of energy exploitation, the objective of which is to optimize and rationalize the use of energy systems [1]. In the field of micro-network management automation, [2] propose an intelligent solution based on agents to optimize the operation of the system. [3] are designed to minimize cost, maximize the use of renewable energies and simplify the integration of other elements into the grid. © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_49

528

D. Saba et al.

A hierarchical architecture of MAS has been proposed by [4], to guarantee a good management of HES. They propose two types of agents to the solution, a lower level of the agent which is responsible for the management of the internal switches. The higher level agent is responsible for the implementation of control and coordination among agents to ensure the system’s power supply. The optimization of the energy was also treated by [5], to improve the reliability of a cement production system. This solution is based on the MAS approach. The result of the evaluation shows that using this approach, offers a significant energy saving. In addition, workers in the planning department of the cement plant saved about 75% of their time and effort. [6, 7] propose an intelligent solution that is based on cognitive agents and reactive for the control and the energy management in a HES (photovoltaic, wind) accompanied by a energy storage. Each agent is responsible for controlling one or more elements of the HES that is in permanent interaction with the site’s climate change. Finally, [8] propose a new solution on the optimization of HES, it is based on intelligent reasoning and a knowledge base for formal and explicit representation of system data. This solution has shown its reliability in the results obtained. The only downside located in the centralization of all data where the solution needs real-time updating, such as climate data. Following an analysis of the work cited above, we conclude that the MAS approach has several advantages, especially with the nature of the energy system which is open, complex and distributed. The agent concept appears as a solution for dynamically systems and offers a generic framework for the development of distributed applications. In this model, a “Mobile Agent” is a process that has an execution context, including code and data that can search for information in a more intelligent way for example by searching, according to concepts. Agents can create their own knowledge bases that are updated after each search. If the information changes site, agents are able to find it and then adapt to this change.

2 The Design of the Solution 2.1

The Solution Flowchart

In the field of optimization of HES, there are several techniques (tools), only these techniques are very specific. Each is suitable for a fixed model calculation, not generalized. This overloads the user who must know the appropriate sources for his or her region and must choose the appropriate technique. However, with regard to the proposed solution, the user only proposes the site name and the requested load, and then the solution is responsible for selecting the appropriate sources and the most reliable optimization technique (see Fig. 1). The main advantages of our solution are: – Enable the updating of data without questioning the system; – Discharge the user all information’s of energy sources for the installation site; – Discharge the user from the choice of the optimization technique (tool). The MAS approach is a part of Distributed Artificial Intelligence (DAI), in which intelligence is distributed over a set of autonomous entities (software or physical) that interact and work together to solve problems and achieve one or more goals.

A Generic Optimization Solution for Hybrid Energy Systems

529

Fig. 1. Solution flowchart

2.2

Mobile Agents

Mobility is a paramount feature for agents that allow an agent to browse a network for information retrieval. Several definitions have been proposed to determine the elements involved in the formulation of the mobile agent. Mobile agents are defined as: “Autonomous software entities that can suspend their executions on a machine and migrate with their codes, variables and states to another machine where they resume their executions” [9]. In [10] another definition is proposed: “A mobile agent can move through a heterogeneous network under its own control, migrating from one site to another, and during its migration, the mobile agent can interact with other agents or other resources, its initial site once its task is completed”. 2.3

The Knowledge Base

Several definitions for ontology are presented by different researchers. In the context of artificial intelligence, Neches and his colleagues [11] were the first to present the following definition: “ontology defines the basic terms and relations comprising the vocabulary of a topic area as well as the rules for combining terms and relations to define extensions to the vocabulary”. Gruber [12], has the following definition: “is an explicit specification of a conceptualization”. In general, ontology includes the following elements:

530

D. Saba et al.

1. The classes: the ontology classes are similar to classes in an object-oriented program. They also form a hierarchy. Table 1, presents some examples of classes: Table 1. Examples of ontology classes Class Source OptimizationTechnique Load ClimateData

Description The energy source The optimization technique The load The climate data

2. The class’s properties (attributes): classes alone will not provide enough information; we must describe the inner structure. Table 2 shows examples for class’s properties. Table 2. Examples of attributes Attribute SiteName HasWindSpeed HasRadiation

Description The site name The wind speed The irradiation

3. The relationships: the last step is to create relationships for the proposed solution. Table 3, shows relations extract. Table 3. Examples of relationships Relationship FeedSourceLoad FeedStorageLoad LoadSourceStorage

2.4

Source class Source Storage Source

Destination class Load Load Storage

Description Feeding the load by energy source Feed the load by the stored energy The energy source charge the batteries

General System Architecture

An agent can take both reactive and proactive behavior; an obvious decomposition involves the creation of separate subsystems to adapt to its different types of behaviors. This idea leads us to an architecture class in which the various subsystems are arranged in a hierarchy of interacting layers. Typically, there will be at least two layers to include reactive and proactive behaviors, but there may be several. A useful typology for these architectures is through the flow of information and control. We identify two types of control flows in layered architectures, horizontal layer decomposition and vertical layer decomposition, as is our system. The overall architecture of the proposed solution is shown in Fig. 2.

A Generic Optimization Solution for Hybrid Energy Systems

531

Fig. 2. Overall system architecture

1. Mobile agent layer and information research: This layer groups mobile agents to search for information in a set of servers that are distributed geographically. At this level and for each request of the agent “Data_Collecting_Agent” The mobile agents begin the search for the requested information. 2. Data Acquisition Layer: This layer includes a single agent that is responsible for acquiring all the information that is necessary for the proper functioning of the other layers. 3. Optimization Calculation Layer: It includes agents “Selecting_Source_Agent”, “Sizing_Technical_Agent”, “Technical1_Agent”, “Technical2_Agent”, …, “Technicaln-1_Agent”, “Technicaln_Agent”. This agent grouping is responsible for selecting the most appropriate optimization technique. The agent “Sizing_Technical_Agent” Also ensures coordination between

532

D. Saba et al.

the following agents: “Technical1_Agent”, “Technical2_Agent”, …, “Technicaln-1_Agent”, “Technicaln_Agent”. 2.5

Agents Specification

The general architecture of the solution (see Fig. 2) includes a set of agents, each responsible for one or more tasks. It is also interacting with other agents to achieve the main goal of the solution. Our solution includes: User_Agent, Server_Mobile_Agent, Data_Collecting_Agent, Selecting_Source_Agent, Sizing_Technical_Agent, Technical_Agent, Visualisation_Agent, we will present some examples. 1. Selecting_Source_Agent: is a cognitive agent, its main role is selecting the appropriate energy sources, it comprises four components (see Fig. 3): – Acquire data: its role is to acquire the data necessary for the selection of energy sources – Selection of energy sources: makes it possible to select the energy sources. – Reading and writing to the knowledge base: for read/write operations in the knowledge base. – Communication: it is a module that facilitates the exchange of information between this agent and the other agents.

Fig. 3. The internal components of “Selecting_Source_Agent”

2. Sizing_Technical_Agent: is a cognitive agent, its main mission is to select the optimization technique, it is based on are operating on information transmitted from the agent for the selection of energy sources, agent of the data collection and coordination between The agents associated with optimization techniques. It consists of four components (see Fig. 4): – Acquire data: allows the acquisition of the data which are necessary for the selection of the optimization techniques. – Selection of optimization technique: makes it possible to select the optimization technique.

A Generic Optimization Solution for Hybrid Energy Systems

533

Fig. 4. The internal components of “Sizing_Technical_Agent”

– Reading and writing to the knowledge base: to retrieve or enter information. – Communication: it is a module that facilitates communication with the external environment.

3 The Solution Implementation 3.1

Development Tools for MAS

To implement the proposed solution agents. At first, we were considering the creation of the agent company. To do this, we chose JADE (Java Agent DEvelopment Framework), this platform was developed in Java by CSELT (Gruppo Telecom Research Group, Italy), which has as objective the construction of multi-agent systems and the realization of applications conforming to the FIPA standard (Foundation for Intelligent Physical Agents) [13]. Figure 5, shows an extract of agents that are created in this platform.

Fig. 5. The agents proposed in JADE

534

3.2

D. Saba et al.

A Simulation Scenario for the Solution

We applied the solution developed on three optimization techniques: the Most Unfavourable Month Technique (MUMT), the Yearly Monthly Overage Sizing Technique (YMOST), and Loss of Power Probability Supply (LPSP). These are considered the most recent techniques. The knowledge base includes sites in Algerian cities. We present a scenario for the solution as follows: – Step 1: in this step, the user selects the site of: {Adrar} – Step 2: the “Data_Collecting_Agent” agent, retrieve information entered by the “User_Agent” agent. On the basis of this information, it sends a request to “Server_Mobile_Agent” mobile agents, to search the climate data that is distributed in the different servers on the web. – Step 3: the mobile agents recover the climatic data that characterize the Adrar site. Amongst this information we quote: {Radiation: 3378 Wh/m2, Wind speed: 6 m/s, Soil temperature: 65 °C} Then, it sends this information to the agents who are responsible for choosing energy sources and optimization techniques. – Step 4: the “Selecting_Source_Agent” agent, proposes the most appropriate sources of energy, are: {Solar photovoltaic source, wind energy source} All information is stored in a system knowledge base. – Step 5: the “sizing_Technical_Agent” agent, propose the best optimization technique: {LPSP (Loss of Power Probability Supply)} – Step 6: the “Visualization_Agent” agent, display a report of the simulation include: site selection, results on sources, optimization technique proposed by the solution (see Fig. 6).

4 The Results Validation To find out the degree of reliability of the proposed solution, we compared the results obtained with this solution with that proposed by [8]. We have noticed that the results of the two works are the same, despite the intelligent part of the other solution based mainly on the ontology of the domain. On the other hand, our solution based on the coordination between the agents and also the search for information based on mobile agent, this characteristic offers more reliability to the results obtained especially if we have changes in the climate data that characterize the site concerned By the study.

A Generic Optimization Solution for Hybrid Energy Systems

535

Fig. 6. The “Visualization_Agent” agent interface

5 Conclusion and Perspectives Due to the intermittent nature of renewable sources, the optimization of the HES is challenging and depends on the meteorological characteristics of the site while integrating the load profile. Around this theme we proposed our solution; it makes it possible to facilitate the operation of optimization of the HES. It offers the possibility of knowing the appropriate of energy sources and the best optimization technique. It is based, on the one hand, on the sharing of tasks by the coordination between agents (cognitive, reactive and mobile). On the contrary on the right representation and structuring of information by a knowledge base that is shared among the members of the MAS. Instead of having all the climatic knowledge of all sites in the local knowledge base, one can take advantage of mobile agents, to go directly to geographically dispersed servers and search for the required information. In addition, due to the complexity of the hybrid energy system, the agent technique allows for a more flexible, open, reliable and robust system. Following all these characteristics, we proposed our contribution to a generic optimization solution for hybrid energy systems based on the coordination between different types of agents (reactive, cognitive and mobile). Numerous works have been developed to introduce mobile agent technology and concepts related to the latter for information retrieval in dynamic environments. The mobile agent concept appears in this context as a solution facilitating the implementation of distributed applications.

References 1. Saba, D., Laallam, F.Z., Hadidi, A.E., Berbaoui, B.: Optimization of a multi-source system with renewable energy based on ontology. In: Energy Procedia, pp. 608–615. Elsevier Ltd. (2015) 2. Coelho, V.N., Weiss Cohen, M., Coelho, I.M., et al.: Multi-agent systems applied for energy systems integration: state-of-the-art applications and trends in microgrids. Appl. Energy 187, 820–832 (2017). doi:10.1016/j.apenergy.2016.10.056

536

D. Saba et al.

3. Amicarelli, E., Tuan, T.Q., Bacha, S.: Multi-agent system for day-ahead energy management of microgrid. HAL Sci l’ingénieur [physics]/Énergie électrique, pp. 1–10 (2016) 4. Che, L., Shahidehpour, M., Alabdulwahab, A., Al-Turki, Y.: Hierarchical coordination of a community microgrid with AC and DC microgrids. IEEE Trans. Smart Grid 6, 3042–3051 (2015). doi:10.1109/TSG.2015.2398853 5. Yildirim, O., Kardas, G.: A multi-agent system for minimizing energy costs in cement production. Comput. Ind. 65, 1076–1084 (2014). doi:10.1016/j.compind.2014.05.002 6. Saba, D., Laallam, F.Z., Hadidi, A.E., Berbaoui, B.: Contribution to the management of energy in the systems multi renewable sources with energy by the application of the multi agents systems “mAS.” In: Energy Procedia, pp. 616–623. Elsevier Ltd. (2015) 7. Saba, D., Laallam, F.Z., Berbaoui, B., Abanda, F.H.: An energy management approach in hybrid energy system based on agent’s coordination. Springer, Cham, pp. 299–309 (2017) 8. Saba, D., Laallam, F.Z., Belmili, H., et al.: Development of an ontology-based generic optimisation tool for the design of hybrid energy systems. Int. J. Comput. Appl. Technol. IJCAT 55–56, 12 (2017) 9. Barika, F.A., Kadhi, N.E., Ghedira, K.: MA_IDS : mobile agents for intrusion detection system. In: 2009 IEEE Advanced Computing Conference, 6–7 March 2009. doi:10.1109/ IADCC.2009.4809135 10. Bermejo, R.A.: Reactive operating system REactive Java Objects. Electron. J. Networks Distrib. Process 11(3), 337–354 (2001) 11. Neches, R., Fikes, R.E., Finin, T., et al.: Enabling technology for knowledge sharing. AI Mag. 12, 36 (1991). doi:10.1609/aimag.v12i3.902 12. Gruber, T.R.: A translation approach to portable ontology specifications. Knowl. Acquis. 5, 199–220 (1993). doi:10.1006/knac.1993.1008 13. Bellifemine, F., Poggi, A., Rimassa, G.: JADE–A FIPA-compliant agent framework. In: Proceeding of PAAM, pp. 97–108 (1999). doi:10.1145/375735.376120

A New Hybrid Approach Using Genetic Algorithm and Q-learning for QoS-aware Web Service Composition Doaa H. Elsayed1(&), Eman S. Nasr2, Alaa El Din M. El Ghazali3, and Mervat H. Gheith4 1 Department of Information Systems Technology, Institute of Statistical Studies and Research, Cairo University, Cairo, Egypt [email protected] 2 Independent Researcher, Cairo, Egypt [email protected] 3 Department of Computer and Information Systems, Sadat Academy for Management Sciences, Cairo, Egypt [email protected] 4 Department of Computer Science, Cairo University, Cairo, Egypt [email protected]

Abstract. Web Service composition (WSC) is a technology for building an application in Service Oriented Architecture (SOA). In WSC the sets of atomic Web services combine together to satisfy users’ requirements. Due to the increase in number of Web services with the same functionality and variety of Quality of Services (QoS), it became difficult to find a suitable Web service that satisfies the functional requirements, as well as optimizing the QoS. This has led to the emergence of QoS-aware WSC. However, to find an optimal solution in QoS-aware WSC is an NP-hard problem. In this paper, we propose a new approach that combines the use of Genetic Algorithm (GA) and Q-learning to find the optimal WSC. The performance of GAs depends on the initial population, so the Q-learning is utilized to generate the initial population to enhance the effectiveness of GA. We implemented our approach over the .NET Framework platform 4.7 using C# programming language. The experiment results show the effectiveness of our proposed approach compared to Q-learning algorithm and GA. Keywords: Quality of Services Genetic algorithm



Web service composition



Q-learning



1 Introduction Service Oriented Architecture (SOA) is an architectural approach to build distributed systems that deliver an application’s functionality as services that are independent of any language and platform [1, 2]. A Web service is a key technology that implements SOA [3]. Many corporations and organizations have developed their core applications through purchasing Web services on the Internet [1]. However, if an atomic Web © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_50

538

D.H. Elsayed et al.

service cannot satisfy a user’s required functionality, there must be existing Web services combined together to fulfill it [2]. The process of integrating atomic Web services together to satisfy users’ requirements is called Web Service Composition (WSC). The main objective of construction of WSC is the satisfaction of users’ requirements. For that reason, the critical phase of WSC could be considered within the scope of Requirements Engineering (RE) [4]. RE is the engineering discipline of establishing the goals and objectives of a system. Requirements could be divided into Functional Requirements (FR) and Non-Functional Requirements [5]. FR identify the functionality of a system or component (i.e., what the system does). NFR specify the quality criteria that can be used to determine a system such as Quality of Services (QoS), cost, scalability, usability, maintainability, etc. FR are represented by functions, while NFR are operationalized by quality constraints. If FR and NFR are not defined correctly in the beginning, the resulting WSC will not fully satisfy a user’s request. In the context of WSC, an abstract service is a set of Web service instance node in the WSC model that describes the functionality of the corresponding service, while a concrete Web service is a real service that implements the functionality specified by an abstract service [3]. Given a composite service request, which includes a set of abstract services and dependency relationships among them, there is a lot of candidate services, which include numerous concrete services with the same functionality but different QoS. Web service selection is an important part of WSC that refers to finding one service candidate to implement each abstract service to satisfy users’ requirements [6]. For each abstract Web service, the service selection process is bound to one of its corresponding concrete services and meeting the QoS constraints [6]. QoS attributes are used to differentiate Web services with the same functionality. WSC has become QoS-aware, which is to find the best service candidate from each abstract Web service and combine such candidates to achieve the functional requirement as well as optimize QoS requirements [7]. The current Web service QoS standards concentrate on different attributes, such as availability, execution time, cost, response time, throughput, reliability, security, etc. Therefore, QoS-aware WSC has to be formulated as a multi-objective optimization problem [7] In order to satisfy the users’ requirements, how to choose and collect multiple services together as a concrete service composition plan is still a challenge because finding an optimal solution is an NP-hard problem. So far, there are several approaches that have been designed to resolve QoS-aware WSC. Genetic algorithms (GAs) are approaches commonly used for finding the optimal solution in QoS-aware WSC. The initial population is the main element of GAs and the genetic operators, like selection, crossover and mutation, are just tools to manipulate the population to reach the optimal solution. Furthermore, the performance of GAs depends on the initial population. Traditionally, initial populations are generated randomly, but in this paper Q-learning is utilized to generate the initial population to enhance the effectiveness of GA. As far as we know, this hybrid approach using GA and Q-learning has never been applied in QoS-aware WSC; it has been applied in other areas such as robots [8], and salesman traveling problem [9] though. The rest of this paper is organized as follows. Section 2 gives a brief review of the related literature. Section 3 presents our new hybrid approach using GA and Q-Learning technique. Section 4 gives an evaluation of our new hybrid approach. Finally, Sect. 5 gives the conclusion and future work.

A New Hybrid Approach Using Genetic Algorithm and Q-learning

539

2 Related Work Various approaches have been designed to resolve QoS-aware WSC. Canfora et al. [10] proposed a GA-based approach for QoS-aware WSC. GA is able to deal with QoS attributes having non–linear aggregation functions. GA is also able to scale up when a large number of concrete services are available for each abstract service. Ma et al. [11] propose a hybrid approach in WSC that combines the use of Genetic Programming (GP) and random greedy search. The greedy search algorithm is used to generate optimal individuals to populate the initial generation for GP, and to perform mutation operations during GP. Liu et al. [12] used Ant Colony Optimization (ACO) and GA to modify GA. ACO is used in the first step of GA to generate an initial population of antibodies instead of generating it randomly. ACO can improve the quality of initial antibodies and speed up the convergence process. The efficiency of this algorithm is improved by using an Orthogonal list. In the Orthogonal list the QoS sparse matrix is sorts and encodes every available service into a binary string to reduce the search space. Ai and Tang [13, 14] tackle the QoS-aware WSC problem with inter-service dependencies and conflicts using a penalty-based GA and minimal conflict hill-climbing repair GA. Pop et al. [15] propose an ant-inspired WSC technique. In this approach a service composition graph model is combined with an ACO to find the optimal composition solution. Service discovery process is involved in the service composition graph. The available services are organized into service clusters to improve the efficiency and accuracy of the services discovery process. The composition and solution selection technique are validated on a set of scenarios from the medical field. Qiqing et al. [16] present Multi-Objective Ant Colony Optimization (MOACO) for the dynamic WSC to optimize global QoS. Firstly, a model of Web service selection with QoS global optimization is proposed, then this problem is converted into a multi-objective optimization problem with user constraints. Furthermore, based on MOACO, the proposed algorithm simultaneously optimizes the different QoS parameters of the workflow. In this way, a set of optimal solutions is calculated. Shanshan et al. [17] improve ACO to solve QoS-aware dynamic WSC optimization problem. This problem is transformed to multi-objective multi-choice QoS-aware WSC optimization. The final purpose of the algorithm is to achieve Pareto Optimality. Wang et al. [18] establish a novel model of dynamic WSC based on variable trust degrees and QoS. They propose an adapted ACO algorithm to solve this multi-objective optimization problem. Li and Yan-xiang [19] present a novel Chaos Particle Swarm Optimization (CPSO) algorithm to solve Web service selection based on global QoS optimizatiom. The Chaos algorithm is used to overcome the low efficiency and partial optimization of Particle Swarm Optimization (PSO). Their results show that the new CPSO algorithm gives more optimal solutions than PSO and GA algorithm. Liu et al. [12] present a hybrid algorithm for WSC, which uses GA to search the problem space, and then PSO to enhance local search ability. Moustafa and Zhang [20] presented a novel approach based on Reinforcement Learning (RL) algorithm to the solve multi-objective QoS-aware WSC problem. This approach is not efficient for large scale WSC though.

540

D.H. Elsayed et al.

3 A Hybrid Approach Using Genetic Algorithm and Q-Learning In this paper we propose an approach that integrates GA and Q-learning for WSC. Figure 1 gives an illustration of our proposed approach. The main focus of this approach is to enhance the performance of GA by enhancing the initial population. Q-learning is used to generate the initial population instead of having it generated randomly. The approach consists of three general steps. The first step is creating the Q-values matrix using Q-learning. The second step is creating the initial population from the Q-values matrix. The third step is applying the genetic operator like selection, crossover and mutation on the population. The explanation that underpins our proposed approach for WSC is described in more details below in the following subsections.

Fig. 1. Our proposed hybrid technique for WSC.

3.1

Creating Q-values Matrix Using Q-learning

In recent years QoS-aware WSC based on RL has gained increased attention [21]. RL is a kind of Machine Learning (ML) concerned with how an agent determines appropriate actions in an environment so as to maximize the cumulative reward [22]. The objective of RL is to find the optimal policy that maximizes the expected reward. Q-learning is one of the most popular algorithms in RL. In this section, the reward function and the Q-learning algorithm are discussed. Reward Function. To apply the RL algorithm on WSC, the reward function must be defined first. The reward means the cumulative reward from all of the executed services [22]. The QoS attribute of a Web service can be used to measure reward after the execution of each service. Every Web service has multiple QoS attributes, which can be expressed as Q1, Q2, Q3, …, Qn). Most of researches about WSC used Multiple Criteria Decision Making (MCDM) [23] in order to allow a standard measurement of QoS level for a single concrete service especially with the multiple criteria. MCDM is used to normalize all QoS attributes to the same scale in a range from 0 to 1 [23]. All of the

A New Hybrid Approach Using Genetic Algorithm and Q-learning

541

QoS attributes for services can be divided into negative and positive attributes. The values of negative attributes need to be minimized, such as response time and cost. When the value of negative attributes is smaller, the performance is better. The values of positive attributes need to be maximized, such as availability and reliability. When the value of positive attributes is bigger, the performance is better. The reward of negative and positive QoS attributes is given by (1) [24].  8 r  P ðQmax > j Qij Þ  >  w > ðQmax Qmin Þ j > > j j j¼1  ifQmax  Qmin ¼ > > 6 0 

j¼1 j max min >  > ifQ  Q ¼0 r > j j P >  > >  1  w j :  j¼1

9 > > > > > > > = > > > > > > > ;

ð1Þ

Equation 1 assumes that each service has r service quality criteria. A matrix Q is built, in which each row Qj corresponds to a Web service i, while each column corresponds to a quality dimension. And Qmax and Qmin are the maximal value and j j minimal value of a quality criterion in the matrix Q respectively. wj  [0; 1] represents the weight criterion j of which the values are provided by the users based on their own preferences. Q-learning Algorithm. Q-learning [22] is an RL technique for finding the optimal policy based on the Q-values. The update formula of the Q-value is expressed by (2). Qðst ; at Þ

h i Qðst ; at Þ þ / rt þ 1 þ c max Qðst þ 1 ; aÞ  Qðst ; at Þ a

ð2Þ

In (2) st stands for the state of the agent at time t, and at means the action is executed by agent at time t. After executing the action at in the state st , the rt þ 1 represent the resulting reward in the new state st þ 1 . Qðst ; at Þ represents Q-value of state s and action a. / is a learning rate and its range is from 0 to 1 ð0\ / \1Þ:c is the discount rate and it takes this range ð0  /  1Þ. This formula is repeated for each action in the policy. The agent selects the action based on of egreedy strategy. With egreedy the agent selects at each time a random action with a fixed probability, 0  e  1. If the random number is less than egreedy, the agent chooses a random action. Otherwise, the agent chooses the action that has maximum reward as shown in (3). stands for random value. ð3Þ In Algorithm 1 the pseudocode for the Q-learning algorithm is illustrated. We should first initialize the Q-value of the current state to 0, then initialize the reward matrix. An episode is a learning process that moves from the initial state to the terminal state. The action is selected based on of egreedy strategy. For each state in the episode the reward value is calculated based on given QoS values and (1), then the

542

D.H. Elsayed et al.

Q-value of the current state is updated based on (2). Finally, we need to check if the terminal state is reached, the move to the next episode until all episodes are covered.

3.2

Initial Population

In this steps, the initial population is created from the Q-values matrix. Each path in the Q-values matrix represents a single WSC workflow. The paths in the Q-values matrix are converted to a population of chromosomes (sometimes called genomes). A chromosome consists of a number of genes. The chromosome represents a single path in the Q-values matrix, and the gene represents concrete Web service in the state of Q-values path. 3.3

Genetic Algorithm Operator

GA is global search techniques that are used to find optimal or near to optimal solution. The process of GA is as follows [11]: 1. Evaluate each chromosome by using a fitness function. The fitness function used in this paper is summation of rewards which are used to update Q-value function based RL algorithms. 2. Select two chromosomes from the population based on the fitness function. 3. Depending on the crossover rate, cross the gene of the selected chromosome in chromosome at a randomly chosen point. 4. Depending on the mutation rate, exchange the gene of one selected chromosome from child. 5. Repeat steps 2, 3 and 4 until a new population has been generated. 6. After the generation is finished, update the Q-values with the best solution and determine the optimal solution. The optimal solution is the chromosome with the highest fitness function.

A New Hybrid Approach Using Genetic Algorithm and Q-learning

543

4 Evaluation The experiment background is designed as follows. Suppose that there is a WSC that consists of nine abstract Web services. Each abstract Web service has m candidate Web services. We consider three QoS attributes of services, namely, service cost, response time, and service reliability. The weight of service cost, response time and service reliability are 0.5, 0.2 and 0.3. The experiment’s environment is a Dell Laptop with an Intel Core i7 at 2.50 GHz, 8 GB RAM, running Microsoft Windows 10. The algorithm is implemented in visual Studio 2015 using C# language. The QoS of the candidate Web services are saved in SQL server 2014. The parameter of cross over probability is set as 0.8; the parameter of mutation is set as 0.2. The parameter of learning rate / is set as 0.5; the parameter of discount rate c is set as 0.8. The parameter of egreedy exploration strategy value is set as 0.85. In this experiment the number of candidate Web services in each abstract Web service are 500. Then, we execute the algorithm and record the better cumulative reward with a different number of episodes. The number of episodes is the same as of the initial population number. The fitness function in GA is the total reward for each abstract Web service in the WSC path. Figure 2 displays the experimental results from our proposed approach, GA and Q-learning.

Fig. 2. The best cumulative reward of our proposed approach compared with Q-learning and GA with a different number of episodes.

As could be seen from Fig. 2, our proposed approach can obtain the best cumulative reward value with the increase in numbers of episodes. Hence, we can say that the proposed approach in this paper has better effectiveness compared to Q-learning and GA. We also used the convergence trace to compare our proposed with GA. This trace shows which algorithm reaches a better cumulative reward. The results of this trace is

544

D.H. Elsayed et al.

plotted in Fig. 3. Execution was done on graphs of an initial population of 1000 chromosomes. Again the results show that our proposed approach reaches a better cumulative reward in a lower number of generation compared to GA algorithm. Our proposed approach reaches the best cumulative reward in generation number 25, while the GA reaches the best cumulative reward in generation number 55. The cumulative reward of our proposed approach in generation one is also better than the cumulative reward of GA in generation 55. This illustrates how Q-learning enhances the initial population and improves the effectiveness of GA.

Fig. 3. Convergence trace for our proposed approach and GA.

5 Conclusion and Future Work This paper presented a new hybrid approach using Q-learning and GA for WSC. The problem of WSC is transformed to the problem of finding the optimal WSC path. The objective of using Q-learning with GA is to enhance the initial population and thus improve the effectiveness of GA. Our approach consists of three general steps. The first step is creating the Q-values matrix using Q-learning. The second step is creating the initial population from the Q-values matrix. The third step is applying the genetic operator like selection, crossover and mutation on the population. Experiment results show that our approach is more effective than GA and Q-learning. In our future work we intend to improve the adaptability of our approach by combining it with multi-agent approaches to obtain an optimal WSC path in case of changes that occur in QoS.

A New Hybrid Approach Using Genetic Algorithm and Q-learning

545

References 1. Hsieh, F.-S., Lin, J.-B.: A Self-adaptation Scheme for Workflow Management in Multi-agent Systems. J. Intell. Manuf. 27(1), 131–148 (2016) 2. Ide, N., Pustejovsky, J.: What does interoperability mean, anyway? Toward an operational definition of interoperability for language technology. In: Proceedings of the 2nd International Conference on Global Interoperability for Language Resources (ICGL), Hong Kong (2010) 3. Rohallah, B., Ramdane, M., Zaid, S.: Agents and owl-s based semantic web service discovery with user preference support. Int. J. Web Semant. Technol. (IJWesT) 4(2), 57–75 (2013) 4. Li, W.: Towards a resilient service oriented computing based on ad-hoc web service compositions in Dynamic Environments (Doctoral Dissertation). Institut d’Optique Graduate School (2014) 5. Eck, P., Wieringa, R.: Requirements engineering for service-oriented computing: a position paper. In: Proceedings of the 1st International Workshop on e-Services at ICEC, USA, pp. 23–28 (2003) 6. Wang, L., Shen, J.: A systematic review of bio-inspired service concretization. IEEE Trans. Serv. Comput. PP(99), 3 (2014) 7. Chen, Y., Huang, J., Lin, C.: Partial selection: an efficient approach for QoS-aware web service composition. In: Proceedings of the 2014 IEEE International Conference on Web Services, USA, p. 1 (2014) 8. Kamio, S., Iba, H.: adaptation technique for integrating genetic programming and reinforcement learning for real robots. IEEE Trans. Evol. Comput. 9(3), 318–333 (2005) 9. dos Santos, J.P.Q., de Lima Jr., F.C., Magalhães, R.M., de Melo, J.D., Neto, A.D.D.: A parallel hybrid implementation using genetic algorithms, GRASP and reinforcement learning for the salesman traveling problem. In: Tenne, Y., Goh, C.K. (eds.) Computational Intelligence in Expensive Optimization Problems, vol. 2, pp. 345–369. Springer, Heidelberg (2010) 10. Canfora, G., Penta, M., Esposito, R., Villan, M.: An Approach for QoS-aware Service Composition based on Genetic Algorithms. In: Proceedings of the 7th Annual Conference on Genetic and Evolutionary Computation, USA, pp. 1069–1075 (2005) 11. Ma, H., Wang, A., Zhang, M.: A hybrid approach using genetic programming and greedy search for QoS-aware web service composition. In: Transactions on Large-Scale Data- and Knowledge-Centered Systems XVIII, pp. 180–205 (2005) 12. Liu, H., Zhong, F., Ouyang, B., Wu, J.: An approach for QoS-aware web service composition based on improved genetic algorithm. In: Proceedings of the 2010 International Conference on Web Information Systems and Mining, IEEE, China, pp. 123–128 (2010) 13. Ai, L., Tang, M.: A penalty-based genetic algorithm for QoS-aware web service composition with inter-service dependencies and conflicts. In: Proceedings of the 4th IEEE International Conference on eScience, USA, p. 494 (2008) 14. Ai, L., Tang, M.: QoS-based web service composition accommodating inter-service dependencies using minimal-conflict hill-climbing repair genetic algorithm. In: Proceedings of the 4th IEEE International Conference on eScience, USA, p. 121 (2008) 15. Pop, C. B., Chifu, V., Salomie, I., Dinsoreanu, M., David, T., Acretoaie, V.: Ant-inspired technique for automatic web service composition and selection. In: Proceedings of the 12th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, Timisoara, Romania, p. 455 (2012)

546

D.H. Elsayed et al.

16. Qiqing, F., Xiaoming, P., Qinghua, L., Yahui, H.: A global QoS optimizing web services selection algorithm based on MOACO for dynamic web service composition. In: Proceedings of the 2009 International Forum on Information Technology and Applications, Chengdu, China, p. 38 (2009) 17. Shanshan, Z., Lei, w., Lin, M., Zepeng, W.: An improved ant colony optimization algorithm for QoS-Aware dynamic web service composition. In: Proceedings of the 2012 International Conference on Industrial Control and Electronics Engineering, China, p. 1998 (2012) 18. Wang, D., Huang, H., Xie, C.: A Novel adaptive web service selection algorithm based on ant colony optimization for dynamic web service composition. In: Proceedings of the 14th International Conference, ICA3PP, Dalian, China, pp. 391–399 (2014) 19. Li, W., Yan-xiang, H.: Web service composition based on QoS with Chaos Particle Swarm Optimization. In: Proceedings of the 6th International Conference on Wireless Communications Networking and Mobile Computing (WiCOM), China, pp. 1–4 (2010) 20. Moustafa, A., Zhang, M.: Towards proactive web service adaptation. In: Proceedings of the 24th International Conference Advanced Information Systems Engineering (CAiSE), Poland, pp. 473–485 (2012) 21. Elsayed, D.H., Nasr, E.S., El Ghazali, A.E.D.M., Gheith, M.H.: Appraisal and analysis of various self-adaptive web service composition approaches. In: Ramachandran, M., Mahmood, Z. (eds.) Requirements Engineering for Service and Cloud Computing, pp. 229–246. Springer, Cham (2017). doi:10.1007/978-3-319-51310-2_10 22. Wang, H., Wang, X., Hu, X., Zhang, X., Gu, M.: A multi-agent reinforcement learning approach to dynamic service composition. J. Inform. Sci. 363, 96–119 (2016) 23. Shehu, U., Epiphaniou, G., Safdar, G.A.: A survey of QoS-aware web service composition techniques. Int. J. Comput. Appl. 89(12), 11 (2014) 24. Jatoth, C., Gangadharan, G.R., Buyya, R.: Computational intelligence based QoS-aware web service composition: a systematic literature review. IEEE Trans. Serv. Comput. PP(99), 1– 88 (2015)

A Study of the Effect of Agile Approaches on Software Metrics Using Self-Organizing Maps Doaa M. Shawky ✉ and Salwa K. Abd-El-Hafiz (

)

Engineering Mathematics Department, Faculty of Engineering, Cairo University, Giza, 12613, Egypt [email protected], [email protected]

Abstract. Agile software development describes those software systems which undergo rapid changes as a result of the testing and requirements fulfillment processes. In this paper, a study on the effect of the development process on the quality of the produced software systems is conducted. The study is initiated by the hypothesis that agile practices have an effect on the quality of the produced systems as represented by software metrics. To test this hypothesis, we used 11 object-oriented systems of various sizes and functionalities. Some of these systems were developed using agile approaches, while the rest were developed using non-agile methodologies. The classes and methods of the used systems were represented by a set of metrics. The proposed approach employs self-organizing maps (SOM) followed by k-means to cluster classes and methods of the used systems based on their metrics representation. The obtained good performance measures show the strong relationship between the used metrics and the type of the followed development process, which confirms the assumption that this work is based on. Keywords: Software metrics · Agile approaches · Self-organizing maps

1

Introduction

Agile software development approaches are a set of practices that is based mainly on iterative and frequent code changes in response to users’ requirements [1]. Software metrics, on the other hand, have been used in several works to give insights about the quality of the produced system. For instance in [2], a study was performed to predict the power of an object-oriented (OO) metrics suite that was proposed by Chidamber and Kemerer [3] as quality measures. The authors concluded that many of Chidamber and Kemerer’s OO metrics are useful to predict class fault-proneness during the early phases of the life-cycle. Moreover, many researchers have used software metrics for fault prediction (e.g., [4]), component classification as fault prone or not (e.g., [5]), effort estimation (e.g., [6]), estimation of software information content (e.g., [7]), clone detec‐ tion [8–11] and re-engineering or maintenance activities [12, 13]. Moreover, software metrics in agile and non-agile systems have been used as quality indicators in several studies. Capiluppi et al., for instance, have studied the evolution of © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_51

548

D.M. Shawky and S.K. Abd-El-Hafiz

a system that was developed using Extreme Programming (XP) [14]. McCabe cyclo‐ matic complexity number was used as a measure of complexity. The authors compared this number between successive releases. The study concluded that agile approaches allow for smooth growth and less complexity. Giblin et al. also studied two similar applications that were developed by the same team [15]. While one of these applications was developed using agile practices, the other was developed using the waterfall method. The differences between the two systems were characterized using software metrics. The authors also concluded that agile practices yielded code with better quality and maintainability characteristics. In addition, in [16], the authors have studied the adoption of agile practices in industry. The study investigated XP almost exclusively. The main findings of the study are that there is a lack of a complete adoption of agile practices and that the number and quality of studies on agile software development needs to be increased. Also in [17], the author has studied the impact of agile practices on software quality in a large distributed organization. The study employed defect data metrics and surveys of involved personnel, and revealed the great effect of the adoption of agile practices on the software quality. However, the study used software systems from the same organization which constitutes an external threat to the obtained results. In [18], the authors used logistic regression to build a model for identifying the development type using a set of metrics as features. They concluded that lack of cohesion, fan in and depth of inheritance are highly affected by following agile approaches. In this paper, we present an approach that studies the effect of the development process on the quality of the produced software systems. The study includes several different-size open object-oriented systems. In addition, a large set of product metrics were employed. We start our analysis by creating two lists that contain the set of classes and methods of the used systems. These two lists are then characterized by the set of used metrics for each list. In the second step, we applied clustering using self-organizing maps as an engine. The clustered nodes resemble the clusters that exist in the data points. Then, we applied k-means clustering algorithm on the grouped nodes which yielded good performance measures. Thus, it can be concluded that, the type of the development process has a high effect on the attributes that are represented by the set of used metrics. The rest of the paper is organized as follows. Section 2 introduces a background about SOM. In Sect. 3, the proposed approach is presented in detail. Section 4 presents the experimental study. Finally, Sect. 5 presents the conclusions and draws some outlines for the future work.

2

The Self-Organizing Maps (SOM)

With analogy to the human brain, where similar information resides close to each other, the idea behind SOMs is that neurons with weights similar to each other should be grouped together since they represent similar outputs [19]. This SOM has a feed-forward structure with a single computational layer arranged in rows and columns. Each neuron is fully connected to all the source nodes in the input layer, as shown in Fig. 1.

A Study of the Effect of Agile Approaches

549

Fig. 1. Architecture of SOM with 2-dimensional lattice.

The competitive learning algorithm in this case can be intuitively divided into the following four stages. Firstly, the nodes’ weights are randomly initialized. Secondly, an input is randomly chosen from the training data. Thirdly, a winning neuron is selected to be the one with the closest weights to the input vector. Fourthly, the neighborhood of the winning neuron is randomly initialized and, then, it is iteratively decreased to include only the neurons that are close enough to the winning neuron. Each weight vector then moves to the average position of all input vectors for which it is a winner or for which it is in the neighborhood of a winner. The distance that defines the size of the neighborhood is altered during training through two phases; namely the ordering and the tuning phases. In the ordering phase, the neighborhood size is gradually reduced until it reaches a certain value, and the neurons order themselves in the input space with the same topology in which they are ordered physically. In the second phase, the neighborhood size is further decreased below that defined value and the weights are expected to spread out relatively evenly over the input space while retaining their topo‐ logical order found during the ordering phase. Thus, the neurons’ weight vectors initially take large steps all together toward the area of input space where input vectors are occurring. The training continues in order to give the neurons time to spread out evenly across the input vectors. If input vectors occur with varying frequency throughout the input space, the computational layer (feature maps) tends to allocate neurons to an area in proportion to the frequency of input vectors there. Thus, feature maps, while learning to categorize their input, also learn both the topology and distribution of their input. It should be mentioned that, SOMs differ from conventional competitive learning in terms of which neurons get their weights updated. Instead of updating only the winner, feature maps update the weights of the winner and its neighbors. The result is that neighboring neurons tend to have similar weight vectors and to be responsive to similar input vectors [20]. More formally, let the input vector be denoted by xi, i = 1, 2,…, D where D is the dimension of the input space. If we use a topology with N neurons, then we can define the weights that connect neurons to the input vectors as wij where j = 1, 2, …, N. We can find the neuron closest to the input by calculating the Euclidean distance, for example, between the input vector x and the weight vector wj for each neuron j as follows: [21].

550

D.M. Shawky and S.K. Abd-El-Hafiz

√ ∑D ( )2 xi − wij dj (x) = i=1

(1)

Finding the winner neuron will result in a set of excited neurons, which belong to the neighborhood of the winning one. If dij is the lateral distance between neuron i and neuron j, the neighborhood Tj,I(x) between a winning neuron i and a neighboring neuron j could be calculated as given by (2).

Tj,I(x) =

⎞ ⎛ d2 j,I(x) ⎟ ⎜ ⎟ ⎜− ⎜ 2𝜎 2 ⎟ ⎠, e⎝

(2)

where I(x) is the index of the winning neuron. It should be noticed that this function is maximum at the winning neuron. In addition, it decreases to zero as the distance goes to infinity. To enable the neighborhood function to decrease with time, σ is usually an exponential function that decays with time, as presented in (3). (

σ(t) = σ0 e

)



t 𝜏 ,

(3)

where τ is the learning rate. During the learning phase, weights are updated using (4). ) ( Δwij = σ(t)Tj,I(x) xi − wij

3

(4)

The Proposed Approach

We started our analysis by creating two lists that contain the sets of classes and methods of the used systems. These two lists are then characterized by the set of used metrics for each list as described before. We employed the static analysis tool Understand (www.scitools.com) for creating the metrics values. Since the numbers of agile and nonagile instances were not equal, we randomly selected 2000 instances from each class to avoid any bias due to the imbalance. In the second step, we applied clustering using artificial neural networks (ANNs) as an engine. We built two SOMs; the first one simulates the clusters that might exist in the data represented by the set of methods’ metrics. Meanwhile, the second one simulates those that might exist in the data represented by the classes’ metrics. In the third step, another clustering algorithm, the k-means [22] with k = 2, is applied to the indices of the resulting nodes in each of the generated SOMs. The main objective of this algorithm is to be able to evaluate the clustering ability of the used SOMs. Thus, the nodes were clustered into two groups based on their positions in the generated lattice. Finally, we evaluated the overall performance by using the standard performance measures in any clustering problem, which are the average accuracy, precision and recall.

A Study of the Effect of Agile Approaches

551

It is worth mentioning that when we applied k-means clustering directly on the input vectors, clustering results were not satisfactory (average accuracies for agile and nonagile were about 77% and 74%, respectively). Thus, SOM managed to find hidden simi‐ larity in the input vectors, which could be considered as a first-step clustering to detect whether there is a hidden similarity between input data. Accuracy for each cluster is calculated as the ratio of the correctly clustered data points to the total number of data points in each cluster. We employ the variables TP, FP, FN and TN, which represent the number of True Positives, False Positives, False Negatives and True Negatives, respectively, in calculating precision and recall. Preci‐ sion is calculated as TP/(TP + FP), whereas recall is calculated as TP/(TP + FN). Another measure for the performance of a clustering algorithm is the silhouette measure [23]. To get an idea of how well-separated the resulting clusters are, a silhouette plot using the cluster indices output from k-means can be used. The silhouette plot displays a measure of how close each point in one cluster is to points in the neighboring clusters. This measure ranges from +1, which indicates points that are very distant from neigh‐ boring clusters, through 0, indicating points that are not distinctly in one cluster or another, to −1, indicating points that are assigned to the wrong cluster. In addition, the vertical width of each cluster represents the number of data points in each cluster. The proposed approach is depicted in Fig. 2. As shown in the figure, it consists of the following main steps, which will be presented in detail in the following sections: • • • • •

Creating metrics values for the used systems. Creating two separate lists: a class-metrics and a method-metrics lists. Building two SOMs for the two lists. Clustering the resulting nodes’ topology using the k-means algorithm. Assessment of the performance of the approach using standard clustering measures.

Fig. 2. The proposed approach.

4

Experimental Study

4.1 Used Data The analyzed systems consist of 11 case studies with varying sizes and functionalities. Among the 11 used systems, five of them were developed using agile methods and the rest were developed using the traditional waterfall method. These systems were obtained by applying an internet search using Google search engine with the keywords “agile

552

D.M. Shawky and S.K. Abd-El-Hafiz

development +source code”. By investigating the documentations related to the resulting systems, we kept only those systems in which there is an explicit reference to the adoption of agile approaches during development. For those systems with no such documentations, we checked the developers’ forums to make sure that agile practices were applied. Thus, we filtered out those systems with no evidence of the adoption of agile approaches. Consequently, we found a limited number of systems, which were developed using agile methods, with their source code available for download. A

Table 1. Used systems System, language

Available at:

# of Classes # of Files

# of Functions

# of Lines (KLOC)

Agile

Eclipse SDK 4.3, Java Ace, C++

http:// qualitascorpus.com/ http:// download.dre.vande rbilt.edu/ http:// www.vtk.org/VTK/ resources/ http:// sourceforge.net/ projects/itk/ files/itk/4.5/ InsightToolkit-4.5.0. zip/download http:// sourceforge.net/ projects/suneido/ files/Releases/ http:// ftp.mozilla.org/pub/ mozilla.org/firefox/ releases/ http:// qualitascorpus.com/ http:// sharpdevelop.codepl ex.com/releases/ view/87331 http:// www.videolan.org/v lc/downloadsources.html http:// sourceforge.net/ adobe/flexsdk/ wiki/Get%20Source %20Code/ https:// code.google.com/p/ hoxchess/

33874

201570

608310

2442

1

7666

13975

66135

2290

1

3322

3340

7444

2939

1

3200

3420

7390

2834

1

290

375

3964

968

1

7823

29642

159711

6242

0

7660

5038

50196

485

0

7012

2371

94530

37000

0

5917

15186

125812

4663

0

2763

3347

8529

245

0

842

2092

9493

402

0

VTK, C++

ITK 4.5.0, C++

Suneido, C++

Firefox, C++

Azureous, Java SharpDevelop 4.2, C#

VLC, C++

Flex 4.0, C++

HOXChess, C++

A Study of the Effect of Agile Approaches

553

description of the used systems is provided in Table 1. In addition, a decision attribute is added to indicate whether the corresponding system has been developed using agile approaches or not. This attribute is considered as the dependent variable. We employed two different sets of metrics; a set that measures some class attributes, in addition to another set for measuring methods’ properties. Table 2 shows the used class’ and method’s metrics [24]. Table 2. Classes’ and methods’ metrics (CM and MM) Metric’s symbol CM1 CM2

Metric’s name CountClassBase CountClassCoupled

CM3

CountClassDerived

CM4 CM5 CM6 CM7

CountDeclClassMethod CountDeclClassVariable MaxComplexity MaxInheritanceTree

CM8

PercentLackOfCohesion

MM1

CountInput

MM2

CountOutput

MM3

CountPath

MM4

Cyclomatic

MM5

MaxNesting

MM6

CountLineCode

Metric’s meaning Number of immediate base classes Number of other classes coupled to this class Number of immediate subclasses this class has Number of local methods this class has Number of instance variables this class has Maximum complexity within class Maximum depth of the class in the inheritance tree 100% minus the average cohesion for class data members Number of called subprograms plus global variables set. Number of calling subprograms plus global variables read Number of possible paths, not counting abnormal exits or gotos The average number of independent paths through the functions in this file Maximum nesting level of control constructs (if, while, for, switch, etc.) in the function. Number of lines in the function that contain any code

4.2 Experimental Analysis The output of an implemented SOM is a map that forms a compressed representation of the inputs space. This representation reflects both the relative density of input vectors in that space, and a two-dimensional compressed representation of the input-space topology. In the performed experiments, the built SOMs consist of one hidden layer, with 10×10 neurons organized in a grid. In the following sections, the obtained results will be presented and discussed in detail.

554

D.M. Shawky and S.K. Abd-El-Hafiz

4.3 The Method-Metrics Results The first built SOM takes as an input, the methods-metrics matrix, which is 4000×6 elements. We used Matlab™ for the experimental study. There are several useful visu‐ alizations that could be used for analyzing the SOM’s result. For instance, Fig. 3 shows the weight plane for each element of the input vector. They are visualizations of the weights that connect each input to each of the neurons. The colors shown represent the distances between weights, where light yellow color indicates close weights and the darker the color is, the more different the weights are. Thus, as shown in the figure, it should be noticed that metrics 1, 2 and 5 map can find similarity between input vectors. Meanwhile, very low degrees of similarities can be found among the input vectors, if metrics 4, 3 and 6 are used. Moreover, similar color patterns indicate correlation between inputs. For example, metrics 2 and 5 are more correlated to each other than they are to metrics 3, 4 or 6.

Fig. 3. The weights of each Input vector for the method-metrics.

In addition, Fig. 4 presents the number of data points associated with each neuron. As shown in the figure, the data are concentrated in the upper-left region, which shows the ability of the used SOM to find similarity between the input vectors.When we applied the k-means clustering with k = 2, the input vectors represented by the clustered neurons

Fig. 4. Number of similar input vectors attached to each neuron for the method-metrics.

A Study of the Effect of Agile Approaches

555

were then clustered into only 2 main clusters. The resulting clusters are evaluated using a silhouette plot as shown in Fig. 5. As shown in the figure, only a small portion of data points has less than zero silhouette values, which indicates that most of the data points were correctly classified to their clusters.

Fig. 5. Silhouette plot for the clustered data using k = 2 using the method-metrics

As given in Table 2, metrics 1, 2, and 5 indicate the number of called, calling methods, and the maximum nesting respectively. Since these metrics represent the degree of complexity in a system, it can be concluded that the complexity of the produced system is highly affected by the development methodology. Moreover, these results agree with previous research, e.g., [18, 24]. In order to further evaluate the performance of the built SOM in clustering the data, the clustered neurons using k-means are evaluated using the standard performance measures; accuracy, recall, and precision. Table 3 presents the values of these measures for the method-metrics input vectors. Table 3. Performance measures for the k-means clustering Accuracy of clustering agile methods Accuracy of clustering non-agile methods Average Accuracy Recall Precision

0.9490 1 0.9745 0.9515 1

4.4 The Class-Metrics Results Similar analysis was performed for the built SOM using the classes-metrics vectors. As shown in Fig. 6, only metrics 1, 6, 7, and 8 could provide some similarities between the input vectors.

556

D.M. Shawky and S.K. Abd-El-Hafiz

Fig. 6. The weights of each Input vector for the class-metrics

Also, Fig. 7 presents the number of data points associated with each neuron. As shown in the figure, no clear grouping of the neurons exists. Instead, the neurons are distributed across the lattice. In comparison to Fig. 4, the class-metrics show less degree of similarity than method-metrics.

Fig. 7. Number of similar input vectors attached to each neuron for the class-metrics

Applying k means clustering with k = 2 improved the final clustering output and the resulting silhouette plot is shown in Fig. 8. As shown in the figure, only a few data points were wrongly-classified. However, in comparison to Fig. 5, the wrongly-classified data points are more than those obtained before as represented by the vertical width of the negative part of the graph.

A Study of the Effect of Agile Approaches

557

Fig. 8. Silhouette plot for the clustered data using k = 2 using the class-metrics

Finally, Table 4 presents the values of clustering measures for the class-metrics input vectors. As shown in the table, accuracy of clustering agile classes is lower than that of clustering non-agile classes. Thus, the average clustering accuracy is less than that of clustering agile and non-agile methods. This degradation in performance when we used the class-metrics input vectors conforms to the results shown in Figs. 6, 7 and 8, in comparison to those presented results in Figs. 3, 4 and 5 respectively. Table 4. Performance measures for the k-means clustering Accuracy of clustering agile classes Accuracy of clustering non-agile classes Average Accuracy Recall Precision

0.8609 1 0.9309 0.8776 1

In addition, as shown in Fig. 6, CM8 followed by CM1 are able to show better similarity in the input vectors than CM6 and CM7. Since the former two metrics are related to cohesion attributes, whereas, the latter two are related to complexity, it can be concluded that the development methodology has a more effect on cohesion than it has on complexity characteristics of the produced system. These results agree with previously obtained results in [18, 24]. As indicated in previous research, e.g., [2, 4], these metrics are related to the quality of the software systems and their values may indicate quality issues. Hence, these metrics need to be tracked to make sure that the system will not be susceptible to errors.

5

Conclusions and Future Work

In this work, the effect of agile approaches on software metrics is investigated. Several systems that were developed using agile and non-agile approaches are represented by some metrics, which show different attributes of the used systems. The systems are clustered using SOM followed by k-means. The good performance measures show that

558

D.M. Shawky and S.K. Abd-El-Hafiz

the used metrics can differentiate between agile and non-agile. Consequently, this indi‐ cates that the used metrics are highly affected by the used development methodology. In addition, method-metrics give better clustering results than those obtained when classmetrics are used. An interpretation can be that the effect of agile approaches is more clear at the fine-granularity level of the used systems’ entities. Future work needs to address the type of agile practices followed in each system, in addition to increasing the number of the analyzed systems to be able to generalize the results.

References 1. Larman, C.: Agile and Iterative Development: A Manager’s Guide. Addison-Wesley Professional, Boston (2003) 2. Basili, V.R., Briand, L.C., Melo, W.L.: A validation of object-oriented design metrics as quality indicators. IEEE Trans. Softw. Eng. 22(10), 751–761 (1996) 3. Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE Trans. Softw. Eng. 20(6), 476–493 (1994) 4. Aggarwal, K., et al.: Empirical analysis for investigating the effect of object-oriented metrics on fault proneness: a replicated case study. Softw. Process Improv. Pract. 14(1), 39–62 (2009) 5. Nagappan, N., Ball, T., Zeller, A.: Mining metrics to predict component failures. In: Proceedings of the 28th International Conference on Software Engineering, pp. 452–461. ACM (2006) 6. Jeffery, R., Ruhe, M., Wieczorek, I.: Using public domain metrics to estimate software development effort. In: Seventh International Software Metrics Symposium, 2001, METRICS 2001, Proceedings, pp. 16–27. IEEE (2001) 7. Abd-El-Hafiz, S.K.: Entropies as measures of software information. In: Proceedings of the IEEE International Conference on Software Maintenance (ICSM 2001), p. 110 (2001) 8. Abd-El-Hafiz, S.K.: Efficient detection of function clones in software systems using the fractal dimension and metrics. In: International Conference on Software Engineering, pp. 88–94 (2011) 9. Abd-El-Hafiz, S.K.: A metrics-based data mining approach for software clone detection. In: 2012 IEEE 36th Annual Computer Software and Applications Conference (COMPSAC), pp. 35–41. IEEE (2012) 10. Shawky, D.M., Ali, A.F.: An approach for assessing similarity metrics used in metric-based clone detection techniques In: 2010 3rd IEEE International Conference on Computer Science and Information Technology (ICCSIT), vol. 1, pp. 580–584. IEEE (2010) 11. Shawky, D.M., Ali, A.F.: Modeling clones evolution in open source systems through chaos theory. In: 2010 2nd International Conference on Software Technology and Engineering (ICSTE), vol. 1, pp. V1-159. IEEE (2010) 12. Kitchenham, B.: What’s up with software metrics? – a preliminary mapping study. J. Syst0 Softw. 83(1), 37–51 (2010) 13. Shawky, D.M.: Towards Locating Features Using Digital Signal Processing Techniques. J. Eng. Appl. Sci. 50(1), 1–20 (2008) 14. Capiluppi, A., et al.: An empirical study of the evolution of an agile-developed software system. In: Proceedings of the 29th International Conference on Software Engineering, pp. 511–518. IEEE Computer Society (2007) 15. Giblin, M., Brennan, P., Exton, C.: Introducing agile methods in a large software development team: the impact on the code. Agile Process. Softw. Eng. Extreme Program. 48, 58–72 (2010)

A Study of the Effect of Agile Approaches

559

16. Dybå, T., Dingsøyr, T.: Empirical studies of agile software development: a systematic review. Inf. Softw. Technol. 50(9–10), 833–859 (2008) 17. Korhonen, K.: Evaluating the impact of an agile transformation: a longitudinal case study in a distributed context. Softw. Qual. J. 21(4), 599–624 (2013) 18. Shawky, D., Abd-El-Hafiz, S.: The impact of agile approaches on software quality attributesan empirical study. In: The 9th International Conference on Software Paradigm Trends, Austria, pp. 49–57 (2014) 19. Amini, M., Jalili, R., Shahriari, H.R.: RT-UNNID: a practical solution to real-time networkbased intrusion detection using unsupervised neural networks. Comput. Secur. 25(6), 459– 468 (2006) 20. Kohonen, T.: Self-organized formation of topologically correct feature maps. Biol. Cybern. 43(1), 59–69 (1982) 21. Bullinaria, J.A.: Self Organizing Maps: Fundamentals. Introduction to Neural (2004) 22. Jain, A.K.: Data clustering: 50 years beyond K-means. Pattern Recogn. Lett. 31(8), 651–666 (2010) 23. Rousseeuw, P.J.: Silhouettes: a graphical aid to the interpretation and validation of cluster analysis. J. Comput. Appl. Math. 20, 53–65 (1987) 24. Shawky, D.M., Abd-El-Hafiz, S.K.: Characterizing software development method using metrics. J. Softw. Evol. Process 28, 82–96 (2015)

A Text Mining Based Literature Analysis for Learning Theories and Computer Science Education Rania Hodhod(&) and Hillary Fleenor Columbus State University, Columbus, GA 31907, USA [email protected]

Abstract. Text mining has been successfully used to discover interesting patterns and extract useful information from analyzing massive text data exists on the internet, books and other text sources. Computer science education has become an initiative for The National Science Foundation (NSF) and the White House Office of Science and Technology Policy (OSTP) in the United States. Finding the right tools and technologies that can support that initiative and help students succeed and do well while studying computer science is a plus. Although the literature is rich with research for computer science education, there is no clear guide on the use of learning theories to design educational games to teach computer science. Text mining can analyze the literature to find trends for designing educational games for computer science education, in addition to identifying existing gaps. The paper presents the results from analyzing 204 papers to discover the current state of research related to computer science education, using Voyant, a text mining tool. Analysis of results should provide an insight on how learning theories have been considered/used in computer science education and guide future research through identifying what learning theories need to be considered in designing educational games to teach computer science topics, such as data structures. Keywords: Text mining  Computer science education structures  Learning theories



Teaching data

1 Introduction Text mining can be used to help find information, identify patterns, discover new trends, and provide categorization that makes easier to find pertinent information. Hotho et al. [1] note that text mining deals with machine supported analysis of text used in knowledge discovery: “it uses techniques from information retrieval, information extraction as well as natural language processing (NLP) and connects them with the algorithms and methods of knowledge discovery in databases (KDD), data mining, machine learning, and statistics.” In any research endeavor, a thorough analysis of the relevant literature is essential to avoid what has already been demonstrated as ineffective, build on the promising work of others, and find gaps in the research that need to be filled. However, with the rapid growth of available research, analyzing the existing literature on a subject has become extensively time consuming. © Springer International Publishing AG 2018 A.E. Hassanien et al. (eds.), Proceedings of the International Conference on Advanced Intelligent Systems and Informatics 2017, Advances in Intelligent Systems and Computing 639, DOI 10.1007/978-3-319-64861-3_52

A Text Mining Based Literature Analysis

561

Computer science education becomes an initiative in the US especially for K-12 education. Providing the right technologies that can serve this initiative is desirable as technology has become an essential part of our youth’s daily lives. It is time to reach our children and youth with educational fun technologies that can help them foster the knowledge and develop the skills necessary to succeed in the computer science field, such as educational games. Educational games have been found to be a successful learning tool in well-defined and ill-defined domains, such as math, history and character education. Although the literature is rich with research for computer science education, there is no clear guide on the use of learning theories to design educational games to teach computer science. We are particularly interested in how learning theories were used in teaching computer science in general and data structures in particular. Data structures is a core topic in programming courses, currently introduced to school students in the AP CS course offered in high schools and has been always part of any computer science track at the college level. Data structures is known for its difficulty because the level of abstract thinking it requires [2]. This paper provides an analysis of the literature on the use of learning theories to teach computer science and data structures. Analysis of the literature has been done using Voyant, a text mining tool. Text mining can help guide the research in this area through finding patterns in the design, development and use of learning theories in teaching computer science and data structures over the years. Results from using Voyant tools are reported towards the end of this paper. We hope the results of this work will guide research decisions in the direction of utilizing learning theories in designing educational games to teach data structures effectively.

2 Text Mining We have more information today than we have had at any point before in human history. The challenge is finding needed information within the vast stores available. People are inundated with data that is useful for new discoveries as well as misleading and false data. The data is in numerous forms. There is more data than any one human or any group of humans or even all humans could possibly read, sort, analyze [3]. Luckily we can utilize the processing power of computers to assist in the undertaking of making sense and discovering new information from our vast collections of data. We call this knowledge discovery in data (KDD) and when used properly it can transform data into useful information that can be used for smart decision making. Discovery process data mining is concerned with structuring the information into databases while text mining is concerned with analyzing unstructured text information. Both processes can involve statistics, and machine learning [4] and also involve some iterative sequence of the following steps [5]: (1) (2) (3) (4)

Data cleaning – remove noise and inconsistent data Data integration – combine multiple sources of data if required Data selection – retrieve data relevant to the analysis from the database Data transformation – transform or consolidate data into forms appropriate for mining

562

R. Hodhod and H. Fleenor

(5) Data mining – apply intelligent methods in order to extract data patterns (6) Pattern evaluation – identify the truly interesting patterns representing knowledge based on some interestingness measure (7) Knowledge presentation – use visualization and knowledge representation techniques to present mined knowledge to the user 2.1

Text Mining for Literature Analysis

Researchers have identified the techniques that have been developed for use in the text mining process as: information extraction, topic tracking, summarization, categorization (classification), clustering, concept linkage, information visualization, and question answering [6, 7], and short informal text [9]. These are summarized in Table 1. Table 1. Technologies for text mining Technology Information extraction Topic tracking Summarization

Categorization (classification) Clustering

Concept linkage Information visualization

Question answering

What it does Identifies key phrases and relationships within text Identifies documents that may be of interest to the user Reduce the length and detail of a document while retaining its main points and overall meaning

Identifies main themes of a document by placing it into a pre-defined set of topics. Groups similar documents on the fly (topics are not pre-defined)

Connect related documents Puts large textual sources in a visual hierarchy or map and provides browsing capabilities

Find the best answer to a given question

How it does it Uses pattern matching (looking for predefined sequences in text) Keeps user profile and/or keywords Shallow approaches restrict themselves to the syntactic level of representation vs. deeper approaches which assume a semantics level of representation Uses word counts to identify the main topics covered in a document. Clustering algorithm creates a vector of topics for each document and measure the weights of how well the document fits into each cluster Identifying commonly-shared concepts between documents Prepare data space, analyze and extract visualization data, employ mapping algorithms to map visualization data space to visualization target Utilizes multiple text mining techniques

A Text Mining Based Literature Analysis

563

3 Materials and Methods 3.1

Voyant Text Analysis Software

There are many free available text analysis software. Voyant is a freely available text analysis software that is popular in the humanities, because of its simplicity and containment of the desired functionality. Voyant is web based and can be found at: http://voyant-tools.org/. It can also be downloaded to run on a local machine. Voyant renders text into a “bag of words” that can be filtered by removing common stop words. It then allows the user to analyze the frequency and relative frequency of words in the text corpus using Google Analytics. Voyant consists of a number of tools that can be utilized in the analysis. It has several visualization tools as well as the ability to show raw data and view relevant words and terms in context. Text or an URL can be pasted into the tool or pdf, txt, html, xml, doc, docx, or rtf files can be uploaded. 3.2

Identifying Terms

In order to search the literature for use of learning theories, a comprehensive list was compiled and arranged into categories: Behaviorist: Classical Conditioning, Operant Conditioning, Social Learning, GOMS, Connectionism, Originality, Contiguity, Drive Reduction, Stimulus Sampling, Sign Learning. Cognitivist: ACT-R, Levels of Processing, Piaget’s Genetic Epistemology, Gestalt, Information Pickup, Lateral Thinking, Structural Learning, Script, Algo-Heuristic, Information Processing, General Problem Solver, SOAR, Cognitive Dissonance, Cognitive Load, Dual Coding – Multimedia, Knowledge Calibration. Constructivist: Socratic Learning, Inquiry-Based, Discovery Learning, Problem-Based Learning, Guided Discovery, Simulation-Based Learning, Case-Based Learning, Incidental Learning, Maslow’s Transformative Learning, Vygotsky’s Zone of Proximal Development (ZPD). Social and Situational: Social Development, Cognitive Apprenticeship, Communities of Practice, Conversation Humanist: Roger’s Experiential Learning, Kolb’s Experiential Learning, Maslow’s Hierarchy of Needs Motivational: ARCS Model of Motivational Design, Self-Determination, Attribution theory, Gagne’s Events of Instruction. Identity: Erikson’s Stage of Psychosocial Development, Identity Status. Intellect: Structure of Intellect, Triarchic Theory, Multiple Intelligence, Emotional Intelligence. Design-Based: ADDIE Model of Instructional Design, Reigeluth’s Elaboration theory, Content Display, Cognitive Flexibility Theory, Anchored Instruction, Conditions of Learning, Phenomenography, Minimalism, Functional Context, Criterion Referenced Instruction, Model-Centered Instruction/Design Layers, Subsumption Theory, Symbol Systems. Other: Activity, Actor-Network, Bloom’s Taxonomy, Distributed Cognition, Affordance, Andragogy, Characteristics of Adults as Learners, Double Loop Learning, Repair, Mathematical Learning, Mathematical Problem Solving, Facione’s critical thinking taxonomy, Tollingerova’s taxonomy, Bespalko’s taxonomy, “ABC” taxonomy, De Block’s unified domain taxonomy, SOLO. General terms such as learning theory and pedagogy were also included. During the text mining process more terms were added to several of the categories based on their occurrence in the literature sets being mined: metacognitive and Schema Theory to

564

R. Hodhod and H. Fleenor

Cognitive theory, Self-Assessment to Humanist theory, Self-Theories as an Identity theory, and Flow, Active Engagement Taxonomy, Constructive Alignment, Active Learning, and Cone of Experience as Other theories. 3.3

Collecting Research Papers

ACM digital library was utilized to find papers related to data structures educational games. Only seven papers pertaining to using games to teach data structures education were found. Since the goal is to find all types of educational games developed to teach data structures, additional categories for general data structures education papers and general computer science educational games were added. The keywords used in the search are listed in Table 2. Table 2. Search terms Data structures education data structures, education, teaching, learning, pedagogy

Data structures educational games data structures, educational games, learning games

Computer science educational games computer science, educational games, learning games, programming, computational thinking, algorithmic thinking

In addition to the seven papers for data structures educational games, 97 papers for data structures education, and 100 papers for computer science educational games were found leading to a total of 204 papers (references to the papers are available upon request). 3.4

Voyant for Data Analysis

Different tools were considered for data analysis. Voyant Server was chosen for its flexibility as it allows any number of files to be uploaded as a single file, which cuts the processing time of the large number of files we have and allow us to see all the results at once. Although files were uploaded together in a single file, each topic was analyzed separately [8]. In order to have a baseline for comparison we decided to include papers that utilized learning theories to teach data structures. 3.5

Collecting Research Papers

When processing the file in Voyant, stop words including “a”, “and”, “but”, “how”, “or” and “what” were filtered out using the English (Taporware) stop words list. The main tools used to collect data were: Words in the Entire Corpus, Keywords in Context, and Words in Document. Each learning theory was searched for in each set of documents. Searching complete phrases sometimes omitted occurrences due to errors in spacing so it was essential to double check by searching for individual words and examining the surrounding context. Context was also used to omit occurrences of the terms in references or in a context that did not indicate the theory was somehow utilized

A Text Mining Based Literature Analysis

565

in the work. Uusing word roots was helpful in finding some terms. For example, searching for “cogniti” would bring up occurrences of cognition, cognitive, and cognitivist. In addition, utilizing the name of a particular researcher most associated with a theory sometimes yielded additional results. For example, searching for “Vygotsky” was helpful in finding his theories.

4 Results The results from Voyant show that most learning theories were not utilized at all in any of the papers. The percentage of papers that did use the learning theories or terms related to learning theories are summarized in Table 3. Numbers indicate the percentage of papers in which the term was found in a meaningful context. This does not indicate how many times the term was found within each paper; if the term was found once or more in an paper it was recorded as one. Note that where no learning theory is specified, this indicates occurrences of general terms related to the category itself. For example, for behaviorism this would indicate the use of the terms ‘behaviorism,’ ‘behaviorist,’ behavioral,’ etc. in a meaningful way in the paper. Table 3. Percentage of papers where a learning theory was found at least once in a meaningful context. Category

Learning theory

Behaviorism Social Learning Cognitivism Piaget’s Genetic Epistemology General Problem Solver Cognitive Load Knowledge Calibration Schema Theory Metacognition

Group 1 Percentage of Data Structures Education Papers found in 97 papers out of 204 total papers)

Group 2 Percentage of Educational Games to teach Data Structures Papers found in 7 papers out of 204 total papers

1.42 1.42 3.76 0

0 4.76 0 0

Group 3 Percentage of Educational Games to teach Computer Science Papers found in 100 papers out of 204 total papers) 1.47 4.9 5.39 0.98

0.47

0

0

2.82 0.47

0 4.76

2.94 0

0.94 0.94

0 0

0 0.98 (continued)

566

R. Hodhod and H. Fleenor Table 3. (continued)

Category Constructivism

Social and situational

Learning theory Socratic Learning Inquiry-Based Learning Discovery Learning Problem-Based Learning Guided Discovery Simulation-Based Learning Maslow’s Transformative Learning Vygotsky’s ZPD Social learning theory Situational learning theory Conversation Cognitive Apprenticeship Communities of Practice

Motivational

Humanism

Intellect Identity Design-Based

Self-Determination Gagne’s Events of Instruction Maslow’s Hierarchy of Needs Self-Assessment Experiential Learning Triarchic Theory Self-Theories Phenomenography Gagne’s Conditions of Learning Functional Context

Group 1 2.82 1.42 0.94

Group 2 0 0 0

Group 3 5.88 0 0

1.42

0

0.49

1.88

0

0.98

0.47 5

0 4.76

0.49 2.94

0

0

0.49

0 1.42

0 4.76

1.47 4.9

0

0

2.45

0.47 0.94

0 0

0 0.98

0

0

1.47

2.82 0 0

4.76 0 0

6.37 1.47 0.98

0

0

0.49

1.42 0

0 0

0.98 0.49

0.47 0 0.47 0

0 0 0 0

0 0.49 0 0.49

0.47

0

0 (continued)

A Text Mining Based Literature Analysis

567

Table 3. (continued) Category

Other

Learning theory

Group 1

Group 2

Group 3

Criterion Referenced Instruction Bloom’s Taxonomy Affordance Theory Characteristics of Adults as Learners Mathematical Learning Mathematical Problem Solving SOLO Flow Active Engagement Taxonomy Constructive Alignment Cone of Experience Active Learning

0.47

0

0

4.23

0

3

0.47 0

0 0

0.49 0.49

0.47

0

0

0.94

0

0

1.42 0 0.47

0 0 4.76

0 1.96 0.98

0.94

0

0

0.47

0

0

7.05

0

6.37

Table 3 shows the normalized data for the obtained results from the different search categories. Although the second column seems to be very different from the first and third columns, a homogeneity test for the variances of the three sample groups shows that the variances for the three group samples are homogenous. A one-way Anova was conducted to compare the use of learning theories in data structures education, and educational games to teach data structures. There was no significant difference in the use of learning theories in teaching data structures in the classroom and educational games to teach data structures at the p