This book gathers selected papers presented at the International Conference on Advancements in Computing and Management
832 106 20MB
English Pages 651 [623]
Table of contents :
Preface
Contents
About the Editors
Intuitionistic Fuzzy Shannon Entropy Weight Based Multi-criteria Decision Model with TOPSIS to Analyze Security Risks and Select Online Transaction Method
1 Introduction
2 Online Payment Systems
3 Fuzzy Set, Intuitionistic Fuzzy Set (IFS)
3.1 Entropy, Fuzzy Entropy, and Intuitionistic Fuzzy Entropy
4 An Algorithm for Intuitionistic Fuzzy TOPSIS
5 Application of IFS-TOPSIS Method in Selecting Online Payment System
6 Conclusion
References
Fermat Spiral-Based Moth-Flame Optimization Algorithm for Object-Oriented Testing
1 Introduction
2 Literature Review
3 Methodology Used
3.1 Moth-Flame Optimization Algorithm
3.2 Object-Oriented Benchmarks Used
4 Proposed Moth-Flame Optimization Algorithm—A Variant
4.1 Mathematical Formulation
4.2 Steps Used to Generate Test Paths Using MFO Variant
5 Experimental Evaluation of Proposed Variant of MFO
6 Conclusion and Future Work
References
A Comparative Study of Information Retrieval Using Machine Learning
1 Introduction
2 Literature Survey
3 Gap Analysis
4 Conclusion
References
Adaptive Background Subtraction Using Manual Approach for Static Images
1 Introduction
2 System Design Approach
3 Methods
4 Algorithms
5 Proposed Algorithm for Manual Selection
6 Proposed Algorithm for Automatic Region Selection
7 Results
8 Evaluation
9 Conclusion
10 Future Scope
References
TweetsDaily: Categorised News from Twitter
1 Introduction
2 Related Work
3 Proposed Work
3.1 Data Collection
3.2 Labelling
3.3 Feature Extraction
3.4 Building Feature Sets
3.5 Training of Individual Classifiers
3.6 Combining Trained Classifiers to Form an Ensemble Classifier
4 User Interface
5 Experiments and Results
5.1 Testing of Indian News Ensemble Classifier
5.2 Testing of Global News Ensemble Classifier
6 Conclusion and Future Work
References
Compressing Metaclass Files Through String Optimization
1 Introduction
2 String Optimization
3 Conclusion
References
An Algorithm to Generate Largest Prime Number
1 Introduction
2 Literature Survey
2.1 Prime Sieves
2.2 6k ± 1
2.3 William’s Function for Prime Numbers
2.4 Fermat’s Little Theorem
2.5 Solovay–Strassen Algorithm
2.6 Miller–Rabin Algorithm
2.7 AKS Algorithm
2.8 Improved Basic Method
3 Observation Table
4 Our Approach
4.1 Prime 1’s Algorithm
4.2 Reverse Prime Algorithm
4.3 Prime Palindromes
5 Conclusion
6 Future Approach
References
Development of a Discretization Methodology for 2.5D Milling Toolpath Optimization Using Genetic Algorithm
1 Introduction
2 Work Area Discretization
3 Reduction of Discrete Elements
4 Generation of Valid Toolpath
5 Optimization Problem
5.1 Minimization of Cutting Distance
5.2 Minimization of Tool Parking Distance
5.3 Minimization of Jerk
5.4 Minimization of Tool-Change Time
6 Optimization Method—Genetic Algorithm (GA)
6.1 GA Operators
6.2 Fitness Evaluation
7 Results and Discussion
7.1 Search Space and Computational Time
7.2 Selection of GA Parameters
7.3 Generation of Toolpaths for Different Objectives
8 Conclusions
References
Machine Learning Based Prediction of PM 2.5 Pollution Level in Delhi
1 Introduction
2 Methodology
2.1 Dataset
2.2 Approach
2.3 Methods
3 Results and Conclusion
References
A Comparative Study of Load Balancing Algorithms in a Cloud Environment
1 Introduction
2 Load Balancing
2.1 Benefits of Load Balancing
2.2 Categories of Algorithm for Load Balancing
2.3 Load Balancing Algorithms
2.4 Comparison of Algorithm for Load Balancing
3 Conclusion
References
Information Retrieval from Search Engine Using Particle Swarm Optimization
1 Introduction
2 Methods and Approach
3 Experiments
4 Result and Conclusion
References
Genetic Algorithm Based Multi-objective Optimization Framework to Solve Traveling Salesman Problem
1 Introduction
2 Literature Review
3 Objectives of the Research
3.1 Multi-objective Optimization of TSP
3.2 Genetic Algorithm
3.3 Proposed Framework of TSP
4 Discussion of Results
5 Conclusions
References
Design of Optimal PID Controller for Varied System Using Teaching–Learning-Based Optimization
1 Introduction
2 Teaching–Learning-Based Algorithm
2.1 Teacher Phase
2.2 Learning Phase
3 Various Problems
3.1 Speed Control of DC Motor System
3.2 Automatic Voltage Regulator System
4 Result and Discussion
5 Conclusion
References
Innovative Review on Artificial Bee Colony Algorithm and Its Variants
1 Introduction
2 ABC Algorithm
3 Extensions of ABC Algorithm
4 Modified Approaches in ABC Algorithm
4.1 Best-so-Far Artificial Bee Colony Algorithm
4.2 Global Best Artificial Bee Colony Algorithm
4.3 Memetic Search in Artificial Bee Colony Algorithm
5 Applications of ABC Algorithm
5.1 Traveling Salesmen Problem
5.2 Chart Shading
5.3 Bioinformatics Application
5.4 Image Processing Applications
5.5 Benchmarking Optimization
5.6 Clustering
6 Experimental Results
7 Conclusion
References
Multilinear Regression Model to Predict Correlation Between IT Graduate Attributes for Employability Using R
1 Introduction and Literature Survey
1.1 Skill
1.2 Graduate Skills
1.3 Employability Skills
2 Data Mining and Its Role
3 Solution of the Model
4 Measures of Performances
5 Conclusions and Future Scope
References
An Intelligent Journey to Machine Learning Applications in Component-Based Software Engineering
1 Introduction
2 Machine Learning and Software Engineering—The Future
3 Artificial Intelligence and Machine Learning Algorithms in Software Development Life Cycle
4 Conclusions
References
Effective Prediction of Type II Diabetes Mellitus Using Data Mining Classifiers and SMOTE
1 Introduction
2 Related Work
3 Class Imbalance Problem
4 Materials and Methods
4.1 Dataset Used
4.2 WEKA
4.3 SMOTE (Synthetic Minority Oversampling Technique)
4.4 Multi-Layer Perceptron (MLP)
4.5 Simple Logistic
4.6 Bagging
4.7 Support Vector Machine (SVM)
4.8 Decision Tree
4.9 Statistical Evaluation Metrics
4.10 ROC (Receivers Operator Curve)
4.11 10-Fold Cross Validations
5 Experimentation
6 Analysis of Result
7 Conclusion
References
A Comprehensive Analysis of Classification Methods for Big Data Stream
1 Introduction to Big Data
2 Big Data Mining
2.1 Big Data Capture and Collection
2.2 Storage and Management of Big Data
2.3 Analysis of Big Data and Decision Taking
3 Classification of Big Data
4 WEKA for Big Data
5 Experimental Results and Analysis
6 Conclusion and Future Scope
References
A Literature Analysis on Privacy Preservation Techniques
1 Introduction
2 Anonymization Techniques and Associated Risks
2.1 Data Anonymization
2.2 Anonymization Techniques
2.3 K-Anonymization Methods
3 Anonymization Algorithms
3.1 Datafly Algorithm
3.2 Mondrian Algorithm
3.3 Comparison of DF and Mondrian
4 Conclusion and Future Scope
Rеfеrеncеs
An Overview of Recommendation System: Methods and Techniques
1 Introduction
2 Related Work
3 Approaches to Recommendation System
3.1 Non-personalized Recommendation System
3.2 Content-Based Filtering System
3.3 Collaborative Filtering System
3.4 Knowledge-Based Filtering System
3.5 Sentimental Product Recommendation
3.6 Group Filtering
3.7 Hybrid-Based Filtering System
4 Conclusion and Future Work
References
Empirical Evaluation of Shallow and Deep Classifiers for Rumor Detection
1 Introduction
2 Literature Survey
3 System Architecture
3.1 Dataset
3.2 Data Pre-processing
3.3 Feature Extraction
3.4 Shallow Classifiers
3.5 Deep Classifiers
4 Results and Discussion
4.1 Shallow Classifier Performance
4.2 Deep Classifier Performance
5 Conclusion
References
Short-Term Hydrothermal Scheduling Using Gray Wolf Optimization
1 Introduction
2 Problem Formulation
2.1 Objective Function
3 Gray Wolf Optimization
3.1 Mathematical Model
4 Numerical Results
4.1 Robustness
4.2 Solution Quantity
5 Conclusion
References
Feature Selection Using SEER Data for the Survivability of Ovarian Cancer Patients
1 Introduction
2 Data Analysis and Preprocessing
3 Experiments
3.1 Methodology
3.2 Feature Selection Algorithms
4 Results
5 Conclusion
References
Monitoring Logistics Through Blockchain
1 Introduction
2 Methodology
2.1 Functionaries in Blockchain
2.2 Types of Blockchain
2.3 Features of Blockchain
3 Ethereum and Smart Contracts
3.1 Ethereum
3.2 Smart Contracts
4 Design
4.1 Smart Contract
5 Conclusion
References
An M/M/2 Heterogeneous Service Markovian Feedback Queuing Model with Reverse Balking, Reneging and Retention of Reneged Customers
1 Introduction and Literature Survey
2 Mathematical Model Formulation
3 Solution of the Model—Probabilistic Measures
4 Measures of Performances
5 Conclusions and Future Scope
References
Investigation of Facial Expressions for Physiological Parameter Measurement
1 Introduction
2 Preprocessing
3 Linear Discriminant Analysis
4 Discrete Wavelet Transform (DWT)
5 Database
6 Experimental Setup and Results
7 Conclusion
References
Identification of Severity of Coronary Artery Disease: A Multiclass Deep Learning Framework
1 Introduction
2 Data and Methods
2.1 Dataset Description
2.2 Correlation-Based Feature Subset Selection
2.3 Multilayer Perceptron
2.4 Proposed Model
3 Results
3.1 Confusion Matrix
4 Conclusion
References
An Intelligent System to Generate Possible Job List for Freelancers
1 Introduction
2 Related Work
3 Preliminaries
3.1 Frequent Item Set Generation Techniques
3.2 Multiple Keyword Matching Strategies
4 Methodology
4.1 Extract Freelancer’s Job-Related Information
4.2 Find Out Freelancer’s Frequent Skill Sets
4.3 Generate Possible Job Lists
5 Experimental Results and Discussion
5.1 Experimental Data and Environment Setup
5.2 Candidate and Frequent Skill Sets Versus Minimum Support
5.3 Run Time (ms) and Required Memory (mb)
5.4 Length of Generated Frequent Skill Sets
5.5 Skills Considered and Maximum Skills Per Job Versus Number of Generated Frequent Skill Sets
6 Conclusion and Future Directions
References
A Novel Image Based Method for Detection and Measurement of Gall Stones
1 Introduction
2 Existing Method to Diagnose and Evaluate the Gallstones
3 Treatment for Gall Stones
4 Research Highlights
5 Proposed Method
6 Results and Discussion
7 Conclusion
References
Big Data and Query Optimization Techniques
1 Introduction
2 Literature Study and Comparative Analysis
3 Conclusion
References
Categorization and Classification of Uber Reviews
1 Introduction
2 Literature Review
3 Why Choose UBER
4 Data Sources
4.1 Twitter Tweets
4.2 Uber App Reviews
5 Methodology
5.1 Data Loading and Data Cleaning
5.2 Applying Data Mining Techniques
5.3 Classifier Selection
5.4 Evaluation Parameters
5.5 Knowledge Presentation
6 Conclusion and Future Work
References
Review Paper on Novel Approach Improvising Techniques for Image Detection Using Deep Learning
1 Introduction
2 Problem Overview
3 Feature Selection
3.1 Filter Methods
3.2 Wrapper Methods
4 Simultaneous Detection and Segmentation
5 Residual Network
5.1 Identity Block
5.2 Convolution Block
6 Conclusion
References
Comparative Analysis of Selected Variant of Spider Monkey Optimization Algorithm
1 Introduction
2 SMO Algorithm
2.1 Local Leader Phase (LLP)
2.2 Global Leader Phase (GLP)
2.3 Global Leader Learning (GLL) Phase
2.4 Local Leader Learning (LLL) Phase
2.5 Local Leader Decision (LLD) Phase
3 Variant of SMO
3.1 ESMO
3.2 CSMO
3.3 ESMO
4 Result Analysis
5 Conclusion
References
A Novel Method to Access Scientific Data from IRNSS/NaVIC Station Using Cloud Computing
1 Introduction
2 Service Models
2.1 Infrastructure as a Service
2.2 Platform as a Service
2.3 Software as a Service
3 Deployment Models
3.1 Public Cloud
3.2 Private Cloud
3.3 Hybrid Cloud
4 Compute Domain
4.1 Elastic Cloud Compute (EC2)
4.2 Elastic Load Balancer
4.3 Auto-scaling
5 Storage Domain
5.1 Simple Storage Service (S3)
5.2 Cloud Front
5.3 Elastic Block Storage
5.4 Amazon Glacier
6 Networking Domain
6.1 Virtual Private Cloud (VPC)
6.2 Direct Connect
6.3 Route53
7 Management Domain
7.1 CloudWatch
7.2 OpsWorks
7.3 Trusted Advisor
8 Security Domain
8.1 Identity and Access Management (IAM)
8.2 Key Management Service (KMS)
9 Results
9.1 Using Services S3 and IAM
10 Conclusion
References
Live Class Monitoring Using Machine Learning
1 Introduction
1.1 Brief History
1.2 Current Scenario
1.3 Working
2 Introduction
2.1 How LBPH Works?
3 Conclusion and Future Work
References
Deep Learning for Big Data Analytics
1 Introduction
2 Deep Learning
2.1 Deep Belief Network
2.2 Stack Auto-Encoder
2.3 Recurrent Neural Network
2.4 Convolutional Neural Network
3 Big Data
3.1 Big Data Analytics
4 Deep Learning for Big Data Analytics
5 Conclusion
References
Text-Based Spam Tweets Detection Using Neural Networks
1 Introduction
2 Literature Survey
3 Proposed System
4 Results and Discussion
5 Conclusion and Future Work
References
Preserving IPR Using Reversible Digital Watermarking
1 Introduction
2 Literature Review
3 Method Proposed
3.1 The Proposed Method Will Have the Following Properties
3.2 Embedding Algorithm
3.3 Extraction Algorithm
4 Conclusion and Future Scope
References
Analysis of Part of Speech Tags in Language Identification of Code-Mixed Text
1 Introduction
2 Language Identification and Code-Mixed Text
3 POS Tag Based Language Identification for Code-Mixed Text
3.1 Transliteration
3.2 Hindi–English POS Tagging and Language Labelling
4 Experiments for Task Evaluation
5 Conclusion and Future Scope
References
Sentiment Analysis of Smartphone Product Reviews Using Weightage Calculation
1 Introduction
2 Literature Survey
3 Methodology
4 Result and Discussion
4.1 Experimental Setup
4.2 Result
5 Conclusion and Future Enhancement
References
Personal Identity on Blockchain
1 Introduction
1.1 Objectives
2 Proposed System
2.1 Creation of Identity Documents
2.2 Storing of Documents
2.3 Sharing of Documents
3 Implementation
3.1 Method and Implementation Tools
4 Use Cases of Identity Management on Blockchain
5 Conclusion
References
Investigation of Robust Control of Position Control System
1 Introduction
2 Sun Seeker System (SSS) Modelling
3 Control Schemes
3.1 PID Controllers
3.2 FOPID Controllers
4 Optimization of Controller Parameter
5 Simulations and Result Discussions
6 Conclusions
References
Real-Time Hand Hygiene Dispenser System Using Internet of Things
1 Introduction
2 Literature Review
3 Design and Implementation
3.1 Interfacing with Sensor and Display
3.2 Interfacing with RFID Reader
3.3 Interfacing with Level-Sensing Circuit
4 Block Diagram
5 Results
6 Conclusion
References
Modeling the Factors Affecting Crime Against Women: Using ISM Technique
1 Introduction
2 Past Study
3 Proposed Model
3.1 Factor Identification Related to the Problem and Contextual Relationship Between Them
3.2 Initial and Final Reachability Matrix
3.3 Assignment of Levels
3.4 Construction of Conical Matrix
3.5 Formation of Digraph and Model
4 Conclusion and Future Scope
References
Impact of Business Analytics for Smart Education System and Management Functions
1 Introduction
2 Review of Literature
3 Statement of the Problems
4 Objectives of the Study
5 Hypotheses for the Study
6 Limitations of the Study
7 Research Methodology
8 Data Analysis
8.1 Analyzing the Level of Difficulties in Changing the Impact of Business Analytics for Smart Education System and Management Functions
8.2 Analyzing the Level of Difficulties in Altering the Mechanism for Business Analytics to Ensure Smart Education System and Management Functions
8.3 Analysis Regarding the Challenges Faced by the Professionals While Executing Business Analytics in an Organization
9 Conclusions
References
A Review on Security and Privacy Issues in Internet of Things
1 Introduction—Internet of Things
2 Applications of the Internet of Things in Near Future
3 Popular Security Issues with Internet of Thing’s Devices (with Suggested Countermeasures)
3.1 Insecure Web Interface
3.2 Unsatisfactory Authentication/Authorization
3.3 Insecure Network Services
3.4 Lack of Transport Encryption
3.5 Privacy Issues
3.6 Insecure Cloud Interface
3.7 Insecure Mobile Interface
3.8 Insufficient Security Configurability
3.9 Insecure Software/Firmware
3.10 Other Security Issues in Internet of Things
4 Security and Privacy Issues in Internet of Things Ecosystem
5 Challenges in Internet of Things
6 Conclusion
References
Study of Information Retrieval and Machine Learning-Based Software Bug Localization Models
1 Introduction
2 Software Bug Localization Using IR
3 TFIDF-Based Cosine Similarity
4 Experimental Setup
4.1 Case Studies
4.2 Performance Metrics
5 Results and Discussion
6 Related Work
7 Conclusion and Future Work
References
A Review on Diverse Applications of Case-Based Reasoning
1 Introduction
2 CBR Framework
3 The Literature Review
4 Conclusion
References
Petri Net Modeling and Analysis of SMART ATM
1 Introduction
2 Petri net Model
3 SMART ATM Petri Net Model Design
4 Result and Discussion
4.1 Reachability Analysis
4.2 Liveness Analysis
4.3 Boundedness Analysis
5 Conclusion
References
Robot Path Planning Using Differential Evolution
1 Introduction
2 Overview of DE Algorithm
2.1 Mutation
2.2 Crossover
2.3 Selection
3 Robot Path Planning Problem
4 Conclusion
References
Modified Dragon-Aodv for Efficient Secure Routing
1 Introduction
2 Aodv Routing Protocol
3 Blackhole Attack
4 Dragonfly Algorithm
5 Dragon-Aodv Algorithm
6 DRAGON-AODV Algorithm
7 Implementation
8 Conclusion
References
Brain Tumor Detection and Classification
1 Introduction
2 Existing System
3 Proposed Methodology
3.1 Data Collection
3.2 Preprocessing
3.3 Segmentation
3.4 Feature Extraction
3.5 Classification
4 Results and Discussions
5 Conclusion
6 Future Work
References
A Multiple Criteria-Based Context-Aware Recommendation System for Agro-Cloud
1 Introduction
2 Literature Review
3 Proposed Methodology
3.1 Proposed Solution
3.2 Weightage Calculation Equations
3.3 Proposed System Flow
3.4 Proposed Algorithm Steps
4 Conclusion
References
Latest Trends in Sheet Metal Components and Its Processes—A Literature Review
1 Introduction
1.1 Sheet Metal Priming Methods
2 Development of Literature
3 Application of Sheet Metal in Various Fields
3.1 Manufacturing Sector
3.2 Material Sector
3.3 Healthcare Sector
3.4 Civil Sector
3.5 Design Sector
4 Location Wise Recognition in Sheet Metal
5 Identified Research Gap and Proposed Research Objectives
5.1 Research Gap
5.2 Research Objectives
6 Conclusions
References
An Enhance Mechanism for Secure Data Sharing with Identity Management in Cloud Computing
1 Introduction
2 Literature Review
3 Proposed Methodology
3.1 Overview
4 Conclusion
References
An Enhance Mechanism to Recognize Shill Bidders in Real-Time Auctioning System
1 Introduction
2 Literature Review
3 Proposed Methodology
3.1 Data Cleaning Steps
3.2 Proposed System Flow
3.3 Algorithm
3.4 Token Generation and Verification
4 Conclusion
References
An Target-Based Privacy-Preserving Approach Using Collaborative Filtering and Anonymization Technique
1 Introduction
2 Literature Review
3 Proposed Methodology
3.1 Overview
4 Conclusion
References
An Effective Priority-Based Resource Allocation Approach in Cloud Computing
1 Introduction
2 Literature Review
3 Proposed Methodology
3.1 Overview
4 Conclusion
References
A Comparative Study on CBIR Using Color Features and Different Distance Method
1 Introduction
1.1 Color Moment
1.2 Dominant Color Descriptor
1.3 HSV Histogram
1.4 Color Statistics
1.5 Color String
1.6 Color String
1.7 Similarity Metrics
1.8 Support Vector Machines
2 Related Work
3 Performance Measures
3.1 Data Set
3.2 Performance
4 Conclusion
References
Performance Evaluation of Wrapper-Based Feature Selection Techniques for Medical Datasets
1 Introduction
2 Related Work
3 Feature Selection
3.1 Filter Methods
3.2 Wrapper Methods
3.3 Embedded and Hybrid Methods
4 Proposed Methodology
4.1 Dataset Used
4.2 Model Diagram
5 Experiment and Results
6 Conclusion
References
Author Index
Algorithms for Intelligent Systems Series Editors: Jagdish Chand Bansal · Kusum Deep · Atulya K. Nagar
Harish Sharma · Kannan Govindan · Ramesh C. Poonia · Sandeep Kumar · Wael M. El-Medany Editors
Advances in Computing and Intelligent Systems Proceedings of ICACM 2019
Algorithms for Intelligent Systems Series Editors Jagdish Chand Bansal, Department of Mathematics, South Asian University, New Delhi, Delhi, India Kusum Deep, Department of Mathematics, Indian Institute of Technology Roorkee, Roorkee, Uttarakhand, India Atulya K. Nagar, Department of Mathematics and Computer Science, Liverpool Hope University, Liverpool, UK
This book series publishes research on the analysis and development of algorithms for intelligent systems with their applications to various real world problems. It covers research related to autonomous agents, multi-agent systems, behavioral modeling, reinforcement learning, game theory, mechanism design, machine learning, meta-heuristic search, optimization, planning and scheduling, artificial neural networks, evolutionary computation, swarm intelligence and other algorithms for intelligent systems. The book series includes recent advancements, modification and applications of the artificial neural networks, evolutionary computation, swarm intelligence, artificial immune systems, fuzzy system, autonomous and multi agent systems, machine learning and other intelligent systems related areas. The material will be beneficial for the graduate students, post-graduate students as well as the researchers who want a broader view of advances in algorithms for intelligent systems. The contents will also be useful to the researchers from other fields who have no knowledge of the power of intelligent systems, e.g. the researchers in the field of bioinformatics, biochemists, mechanical and chemical engineers, economists, musicians and medical practitioners. The series publishes monographs, edited volumes, advanced textbooks and selected proceedings.
More information about this series at http://www.springer.com/series/16171
Harish Sharma Kannan Govindan Ramesh C. Poonia Sandeep Kumar Wael M. El-Medany •
•
•
•
Editors
Advances in Computing and Intelligent Systems Proceedings of ICACM 2019
123
Editors Harish Sharma Rajasthan Technical University Kota, Rajasthan, India
Kannan Govindan University of Southern Denmark Odense, Denmark
Ramesh C. Poonia Amity University Jaipur, Rajasthan, India
Sandeep Kumar Amity University Jaipur, Rajasthan, India
Wael M. El-Medany University of Bahrain Zallaq, Bahrain
ISSN 2524-7565 ISSN 2524-7573 (electronic) Algorithms for Intelligent Systems ISBN 978-981-15-0221-7 ISBN 978-981-15-0222-4 (eBook) https://doi.org/10.1007/978-981-15-0222-4 © Springer Nature Singapore Pte Ltd. 2020 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, expressed 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. This Springer imprint is published by the registered company Springer Nature Singapore Pte Ltd. The registered company address is: 152 Beach Road, #21-01/04 Gateway East, Singapore 189721, Singapore
Preface
The 1st International Conference on Advancements in Computing and Management (ICACM-2019) was held at Jagannath University, Jaipur, Rajasthan, India, on 13–14 April 2019. The keynote addresses were given by Prof. Kannan Govindan, Head of Centre, Institute of Technology and Innovation, SDU Centre for Sustainable Supply Chain Engineering, University of Southern Denmark, Denmark, Prof. J. C. Bansal, South Asian University, India, Prof. Mohammad Shorif Uddin, Ex. Chairman, Department of Computer Science and Engineering, Jahangirnagar University, Savar, Dhaka, Bangladesh, and Elike C. C. Esq, Superintendent of Police, Nigeria Police Force, Nigeria. Invited talks are delivered by Dr. Harish Sharma, Associate Professor, Rajasthan Technical University, Kota, India, and Dr. Ramesh C. Poonia, Associate Professor, Amity University, Rajasthan, India. We received 450 submissions from all over the world. The technical programme committee members carefully selected the papers after peer review process by at least three reviewers. Out of 450 submissions, 60 papers were selected for presentation in the conference and publication in Springer AIS series. We wish to thank the management of Jagannath University, Jaipur, Rajasthan, India, for providing the best infrastructure to organize the conference. We are also thankful to Soft Computing Research Society (SCRS) for providing technical sponsorship for this event. We are also very thankful to Springer for supporting ICACM-2019. We hope that this conference proceedings will prove to be useful. Jaipur, India
Dr. Harish Sharma Dr. Sandeep Kumar Dr. Ramesh C. Poonia
v
Contents
Intuitionistic Fuzzy Shannon Entropy Weight Based Multi-criteria Decision Model with TOPSIS to Analyze Security Risks and Select Online Transaction Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Talat Parveen, H. D. Arora and Mansaf Alam
1
Fermat Spiral-Based Moth-Flame Optimization Algorithm for Object-Oriented Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rashmi Sharma and Anju Saha
19
A Comparative Study of Information Retrieval Using Machine Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Surabhi Solanki, Seema Verma and Kishore Chahar
35
Adaptive Background Subtraction Using Manual Approach for Static Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Manoj K. Sabnis and Kavita
43
TweetsDaily: Categorised News from Twitter . . . . . . . . . . . . . . . . . . . . Divya Gupta, Aditi Sharma and Mukesh Kumar
55
Compressing Metaclass Files Through String Optimization . . . . . . . . . . S. Nadera Beevi
69
An Algorithm to Generate Largest Prime Number . . . . . . . . . . . . . . . . Rohan Tyagi, Abhishek Bajpai, BDK Patro and Neelam Srivastava
79
Development of a Discretization Methodology for 2.5D Milling Toolpath Optimization Using Genetic Algorithm . . . . . . . . . . . . . . . . . . Munish Kumar and Pankaj Khatak
93
Machine Learning Based Prediction of PM 2.5 Pollution Level in Delhi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 Apurv Mehrotra, R. Jaya Krishna and Devi Prasad Sharma
vii
viii
Contents
A Comparative Study of Load Balancing Algorithms in a Cloud Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 Ashmeet Kaur Duggal and Meenu Dave Information Retrieval from Search Engine Using Particle Swarm Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 Nainika Kaushik and Manjot Kaur Bhatia Genetic Algorithm Based Multi-objective Optimization Framework to Solve Traveling Salesman Problem . . . . . . . . . . . . . . . . . . . . . . . . . . 141 Tintu George and T. Amudha Design of Optimal PID Controller for Varied System Using Teaching–Learning-Based Optimization . . . . . . . . . . . . . . . . . . . . 153 Ashish Mishra, Navdeep Singh and Shekhar Yadav Innovative Review on Artificial Bee Colony Algorithm and Its Variants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 Pooja and Gajendra Shirmal Multilinear Regression Model to Predict Correlation Between IT Graduate Attributes for Employability Using R . . . . . . . . . . . . . . . . . . . 177 Ankita Chopra and Madan Lal Saini An Intelligent Journey to Machine Learning Applications in Component-Based Software Engineering . . . . . . . . . . . . . . . . . . . . . . 185 Divanshi Priyadarshni Wangoo Effective Prediction of Type II Diabetes Mellitus Using Data Mining Classifiers and SMOTE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 Mirza Shuja, Sonu Mittal and Majid Zaman A Comprehensive Analysis of Classification Methods for Big Data Stream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Amrinder Kaur and Rakesh Kumar A Literature Analysis on Privacy Preservation Techniques . . . . . . . . . . 223 Suman Madan An Overview of Recommendation System: Methods and Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 Shefali Gupta and Meenu Dave Empirical Evaluation of Shallow and Deep Classifiers for Rumor Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 Akshi Kumar, Vaibhav Singh, Tuba Ali, Saurabh Pal and Jeevanjot Singh
Contents
ix
Short-Term Hydrothermal Scheduling Using Gray Wolf Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 Khushboo Sharma, Hari Mohan Dubey and Manjaree Pandit Feature Selection Using SEER Data for the Survivability of Ovarian Cancer Patients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 Prakriti Sodhi and Preeti Aggarwal Monitoring Logistics Through Blockchain . . . . . . . . . . . . . . . . . . . . . . . 281 Ninad Deshmukh, Maitree Gawande, Shivani Pande, Dhvani Kothari and Nikhil Mangrulkar An M/M/2 Heterogeneous Service Markovian Feedback Queuing Model with Reverse Balking, Reneging and Retention of Reneged Customers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 Bhupender Kumar Som, Vivek Kumar Sharma and Sunny Seth Investigation of Facial Expressions for Physiological Parameter Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297 Neeru Rathee and Sudesh Pahal Identification of Severity of Coronary Artery Disease: A Multiclass Deep Learning Framework . . . . . . . . . . . . . . . . . . . . . . . . 303 Varun Sapra and Madan Lal Saini An Intelligent System to Generate Possible Job List for Freelancers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311 Md. Sabir Hossain and Mohammad Shamsul Arefin A Novel Image Based Method for Detection and Measurement of Gall Stones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327 K. Sujatha, R. Shobarani, A. Ganesan, P. SaiKrishna and Shaik Shafiya Big Data and Query Optimization Techniques . . . . . . . . . . . . . . . . . . . . 337 Aarti Chugh, Vivek Kumar Sharma and Charu Jain Categorization and Classification of Uber Reviews . . . . . . . . . . . . . . . . . 347 Mugdha Sharma, Daksh Aggarwal and Divyasha Pahuja Review Paper on Novel Approach Improvising Techniques for Image Detection Using Deep Learning . . . . . . . . . . . . . . . . . . . . . . . 357 N. Satyanarayana Murthy Comparative Analysis of Selected Variant of Spider Monkey Optimization Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 Basudev Sharma, Vivek Kumar Sharma and Sandeep Kumar A Novel Method to Access Scientific Data from IRNSS/NaVIC Station Using Cloud Computing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373 Gawas Santoshi Shyamsundar and Narayana Swamy Ramaiah
x
Contents
Live Class Monitoring Using Machine Learning . . . . . . . . . . . . . . . . . . 385 Anushka Krishna and Harshita Tuli Deep Learning for Big Data Analytics . . . . . . . . . . . . . . . . . . . . . . . . . . 391 Gourav Bathla, Himanshu Aggarwal and Rinkle Rani Text-Based Spam Tweets Detection Using Neural Networks . . . . . . . . . 401 Vanyashree Mardi, Anvaya Kini, V. M. Sukanya and S. Rachana Preserving IPR Using Reversible Digital Watermarking . . . . . . . . . . . . 409 Geeta Sharma and Vinay Kumar Analysis of Part of Speech Tags in Language Identification of Code-Mixed Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417 Mohd Zeeshan Ansari, Shazia Khan, Tamsil Amani, Aman Hamid and Syed Rizvi Sentiment Analysis of Smartphone Product Reviews Using Weightage Calculation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427 Jayantkumar A. Rathod, Shetty Vignesh, Aishwary J. Shetty, Pooja and Nikshitha Personal Identity on Blockchain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439 Deepti Patole, Yogita Borse, Jayesh Jain and Shreya Maher Investigation of Robust Control of Position Control System . . . . . . . . . . 447 Divya Chauhan and S. K. Jha Real-Time Hand Hygiene Dispenser System Using Internet of Things . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461 Sayali Salunkhe and Mahadev Patil Modeling the Factors Affecting Crime Against Women: Using ISM Technique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469 Bhajneet Kaur, Laxmi Ahuja and Vinay Kumar Impact of Business Analytics for Smart Education System and Management Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479 Suplab Kanti Podder, Debabrata Samanta and R. Gurunath A Review on Security and Privacy Issues in Internet of Things . . . . . . . 489 Amit Kumar Tyagi, Kavita Agarwal, Deepti Goyal and N. Sreenath Study of Information Retrieval and Machine Learning-Based Software Bug Localization Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503 Tamanna and Om Prakash Sangwan A Review on Diverse Applications of Case-Based Reasoning . . . . . . . . . 511 Madhu Sharma and Cmaune Sharma
Contents
xi
Petri Net Modeling and Analysis of SMART ATM . . . . . . . . . . . . . . . . 519 Madhu Sharma and Cmaune Sharma Robot Path Planning Using Differential Evolution . . . . . . . . . . . . . . . . . 531 Sanjay Jain, Vivek Kumar Sharma and Sandeep Kumar Modified Dragon-Aodv for Efficient Secure Routing . . . . . . . . . . . . . . . 539 Monika Goyal, Sandeep Kumar, Vivek Kumar Sharma and Deepak Goyal Brain Tumor Detection and Classification . . . . . . . . . . . . . . . . . . . . . . . 547 Fatema Kathawala, Ami Shah, Jugal Shah, Shranik Vora and Sonali Patil A Multiple Criteria-Based Context-Aware Recommendation System for Agro-Cloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557 Lata Ramchandani, Shital Patel and Krunal Suthar Latest Trends in Sheet Metal Components and Its Processes—A Literature Review . . . . . . . . . . . . . . . . . . . . . . . . . 565 Jibin J. Mathew, Chandrashekhar N. Sakhale and Sagar D. Shelare An Enhance Mechanism for Secure Data Sharing with Identity Management in Cloud Computing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575 Hardika Modi, Shital Patel and Krunal Suthar An Enhance Mechanism to Recognize Shill Bidders in Real-Time Auctioning System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583 Bharati Bhatol, Shital Patel and Krunal Suthar An Target-Based Privacy-Preserving Approach Using Collaborative Filtering and Anonymization Technique . . . . . . . . . . . . . . . . . . . . . . . . . 591 Priyanka Chaudhary, Krunal Suthar and Kalpesh Patel An Effective Priority-Based Resource Allocation Approach in Cloud Computing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597 Khyati Prajapati, Krunal Suthar and Jayesh Mevada A Comparative Study on CBIR Using Color Features and Different Distance Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 605 Shailesh Pandey, Madan Lal Saini and Sandeep Kumar Performance Evaluation of Wrapper-Based Feature Selection Techniques for Medical Datasets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 619 Anil Kewat, P. N. Srivastava and Dharamdas Kumhar Author Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635
About the Editors
Dr. Harish Sharma is an Associate Professor at the Department of Computer Science & Engineering, Rajasthan Technical University, Kota. He is the secretary and a founder member of the Soft Computing Research Society of India. He is an associate editor of the International Journal of Swarm Intelligence (IJSI), published by Inderscience, and has also edited special issues of the journals Memetic Computing and Journal of Experimental and Theoretical Artificial Intelligence. His primary area of interest is nature-inspired optimization techniques. He has published more than 45 papers in various international journals and conferences. Dr. Kannan Govindan is a Professor of Operations & Supply Chain Management and Head of the Centre for Sustainable Supply Chain Engineering, Department of Technology and Innovation, University of Southern Denmark, Odense. He has published 250 peer-reviewed research articles in journals and books and at conferences. With over 17000 citations and an H-index of 70, he is one of the most influential supply chain engineering researchers in the world. He is editor-in-chief of the International Journal of Business Performance and Supply Chain Modelling and International Journal of Advanced Operations Management. Dr. Ramesh C. Poonia is a Postdoctoral Fellow at the Cyber-Physical Systems Laboratory (CPS Lab), Department of ICT and Natural Sciences, Norwegian University of Science and Technology (NTNU), Alesund. He is chief editor of TARU Journal of Sustainable Technologies and Computing (TJSTC) and associate editor of the Journal of Sustainable Computing: Informatics and Systems, Elsevier. He has authored/co-authored over 65 research publications in respected peer-reviewed journals, book chapters, and conference proceedings. Dr. Sandeep Kumar is an Assistant Professor at Amity University Rajasthan, India. Dr. Kumar holds a Ph.D. degree in Computer Science & Engineering, 2015; M. Tech. degree from RTU, Kota, 2008; B.E. degree from Engineering College,
xiii
xiv
About the Editors
Kota, 2005. He worked as guest editor for special issues in IJIIDS, IJARGE, IJESD, RPCS, IJGUC, and WREMSD. He has published more than 50 research papers in various peer-reviewed journals and conferences. Dr. Wael M. El-Medany is currently an Associate Professor at the University of Bahrain, Kingdom of Bahrain, and senior member of the IEEE Society. He holds a Ph.D. degree in Electrical Engineering, from Manchester University, UK, (1999); and an M.Sc. degree in Computer Communications, Menoufia University, Egypt, (1991). He is the founder and managing editor of the International Journal of Computing and Digital Systems (IJCDS), and founder and organizer of MobiApps, DPNoC, and WoTBD workshops and symposium series. He has written over forty research publications and attended several national and international conferences and workshops.
Intuitionistic Fuzzy Shannon Entropy Weight Based Multi-criteria Decision Model with TOPSIS to Analyze Security Risks and Select Online Transaction Method Talat Parveen, H. D. Arora and Mansaf Alam Abstract There are various payment setups that are available which enables us to effortlessly carry out transactions uninterruptedly from any place utilizing gadgets with network connections. Internet is a place with numerous risks, threats, and vulnerabilities along with accessibility of security abuses, and to address all these security issues related threats have become extremely challenging for each organization as well as for individuals and to select the most appropriate payment method has become challenging. In this paper, intuitionistic fuzzy technique for order preference by similarity to ideal solution (TOPSIS) method for multi-criteria decision-making (MCDM) is proposed to rank the alternatives while Shannon’s entropy is utilized for weighting criteria. The proposed model is applied to select the online payment method based on several criteria, the existing online payment methods are compared with cryptocurrency Bitcoin. Keywords Multi-criteria decision-making · Cryptocurrency · Transaction system · Risk · Intuitionistic fuzzy set · TOPSIS · MCDM · Entropy
1 Introduction Regular security breach and online banking fraud are common these days, these risks drive us to look out for alternative solutions for Internet transactions, and to make a comparison of security risk and characteristics of existing methods with the alternate online payment transaction systems. In this study, we will discuss certain data safety concerns with respect to existing Internet payment systems and a forthcoming alternative, Bitcoin payment system, and to compare the existing systems with each other based on certain criteria. The issue of prioritization of data security threat is needed to be addressed. The TARA system is created by Intel [1] to organize the T. Parveen (B) · H. D. Arora Department of Mathematics, Amity University, Noida, India e-mail: [email protected] M. Alam Department of Computer Science, Jamia Millia Islamia, New Delhi, India © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_1
1
2
T. Parveen et al.
data safety risks which can be exceptionally beneficial to alleviate critical threats, but these frameworks lack strong mathematical establishments like TOPSIS or other multi-criteria decision technique. Concerning PC security it very well may be said that it speaks to a blend of classification, trustworthiness, and accessibility of information, data, and data frameworks. It, thus, unavoidably, includes security dangers. As indicated by ISACA BMIS [2], risk administration is perceived as a key part of managing IT security dangers. In present global scenario, all inclusive of organized and complex business conditions, there is a development of security dangers, vulnerabilities, and other related dangers. The majority of the cyber threats are based on monetary issues so are the instances of hacktivism [3]. The measure of cybercrime, security breaks, and hacking is expanding fundamentally with wide use of Internet services leading to direct monetary losses [4]. Recently, Internet extortion cases have expanded with the assistance of different strategies and procedures, for example, phishing as well as data theft; this raises extra safety efforts to be implemented to ensure clients safety while using Internet transaction methods and also to safeguard the online banking platform and E-commerce platform, but due to these additional defensive measures, transaction cost is raised. In recent couple of years, an alternative has come up utilizing the centralized payment frameworks like Internet banking, mobile banking, E-commerce, and lately a framework utilizing decentralized payment methods such as Bitcoin [5] and several other cryptocurrencies such as Ethereum are introduced. Bitcoin is an electronic transaction/payment method and its main feature is its decentralization, which implies that no organization or authority controls the Bitcoin network, and it is decentralized. It enables the anonymity to the clients which thus make it hard to track the transaction [5]. In a process occurs security issues, especially with regards to integrity, credibility of such complex blockchain technology, and also with it arrives unavoidable issues and risks which affect the society. Often people get confronted with different security situations associated with different transaction setups like E-banking, E-commerce, and M-banking along with inadequacies, risks, and advantages that such frameworks include. We carried out a research to study the expanded utilization of Bitcoin blockchain technology and its methodology along with security parts of the Bitcoin framework itself, and furthermore to carry out comparison with commonly used Internet transaction systems. It is extremely troublesome or sometimes even difficult to address all security on time, especially in huge professional workplaces. However, it is necessary to detect the critical security risks and for this essential steps are required to manage the risk. In year 1986, Atanassov [6] introduced the generalization of Zadeh’s [7] fuzzy set, called intuitionistic fuzzy set (IFS), which proved to be a useful tool to deal with non-determinacy of system due to its characteristic of assigning a membership and nonmembership degree to each element, and further several operators were introduced by De et al. [8], and Grzegorzewski and Mrowka [9]. In TOPSIS method, preferences are basically human judgment decided on the basis of human perceptions, and thus intuitionistic fuzzy methodology allowed more concrete description of multi-criteria decision method problems. Hybrid approach using TOPSIS with IFS for MCDM problems is introduced by researchers with application in medical
Intuitionistic Fuzzy Shannon Entropy Weight…
3
field [10–12] and supplier selection problems [13], also, MCDM methods. Xu [14] proposed intuitionistic fuzzy aggregation operators for MCDM problems to aggregate intuitionistic fuzzy information. TOPSIS method is extended by researchers for interval-valued hesitant and intuitionistic fuzzy information for multi-criteria decision-making and multi-attribute decision-making problems [15, 16, 17, 18]. In this paper, a hybrid intuitionistic fuzzy [6] multi-criteria decision-making with TOPSIS [19] technique has been proposed for estimating the high security risk with different online payment methods and to rank the most critical payment system out of four online transaction systems, namely, E-Banking, M-Banking, E-Commerce, and Bitcoin cryptocurrency, based on six important criteria. It is difficult to express the opinion by decision-makers on the chosen criteria using the crisp data and to get the impact of different alternatives on those given criteria. IFS presented by Atanassov [6] has been effectively applied under similar conditions to numerous decision-making problems. In a multi-criteria decision-making process, accumulation of the point of view of all individual decision-makers to assess the significance of criteria and the choices is extremely important in order to carry out a compelling evaluation process. The operator IFWA is implemented to aggregate the viewpoint of individual decisionmaker for grading the alternative’s and criteria’s significance. The TOPSIS process known to evaluate the positive-ideal and negative-ideal solutions, widely popular in multi-attribute decision-making problem, is aggregated with IFS theory for ranking the various alternatives based on chosen criteria. Intuitionistic fuzzy [20] entropy measure is applied to obtain the weights of each criterion and distance measure is given by Szmidt and Kacprzyk [21, 22]. The chosen payment systems are ranked using intuitionistic fuzzy TOPSIS method.
2 Online Payment Systems There are various payment setups accessible on the web network which enables us to effortlessly carry out transactions uninterruptedly from any place on the planet by utilizing gadgets with network connection. Internet is a place with numerous risks, threats, and vulnerabilities along with accessibility of security abuses. In this section, we will describe the alternative online transaction methods available for individuals: E-Banking: E-banking money is one of the most established Internet payment systems which utilizes World Wide Web online service. There are different sorts of client confirmation and approval of transactions relying upon application security mechanism of each bank. There is retail e-banking and business e-banking, though retail e-banking has more users than the business e-banking, authentication and authorization system vary significantly among the retail and business clients. M-Banking: M-banking is unique payment method different from regular e-banking with regard to process of accessing the service, program, customizable user interface for different mobile screens, and also security. It utilizes the wireless application protocol (WAP) service while using the mobile network or when Wi-Fi is not available.
4
T. Parveen et al.
E-Commerce: Today, there are numerous payment service providers (payment gateways, acquirers, and/or processors) on the online platform. Direct payment services have been provided by these online service providers to their customers without intervention of banks as a mediator. But, these platforms utilize the credit and debit cards which are issued by banks to their respective customers for the payments. There are lots of different payment gateways available on the Internet these days, and there are organizations providing the direct payment services to the clients with no bank involved in between the transaction. These payment gateways utilize the credit and debit cards issued by bank to their clients, and the most popular e-commerce online payment methods can easily be found with search engine. All these e-commerce payment methods have different security policies and follow a different mechanism to carry out transaction. PayPal is one of the most widely used payment systems, other than the credit cards. POS (point of sale) system is one of the traditional transaction methods which requires dial-up communication and thus is not categorized as online transaction system, and this system also requires the hardware POS machine for accepting card payment and thus it cannot be compared with other online transaction methods where hardware is not required. Bitcoin: Bitcoin is a peer-to-peer decentralized online payment system; it is a type of digital currency which was developed by Nakamoto [5]. Bitcoin transaction system is decentralized and thus has no central repository, all the transactions carried out on bitcoin network can be traced if transaction hash is known to person, or if a bitcoin address is known, all the details are recorded without involvement of any central authority, and all transactions are just recorded on blockchain and they do not exist anywhere else. Bitcoin, a digital currency, is mined by solving complex mathematical algorithms all around the world with computers and supercomputers, and it is first of cryptocurrency. Any individual or an organization can mine bitcoin, and they can further be traded on various cryptocurrency exchanges, and few major crypto exchanges are Binance, Bittrex, Bithump, Kucoin, etc. But new bitcoin can be created only through mining, and bitcoin has limited supply of 21 million of which 17 million are mined and in circulation; it can be stored and traded through bitcoin wallet on blockchain. Bitcoin wallet allows the users to store them electronically and make transfers from one wallet to another with small fee charged in bitcoin. Bitcoin was the first cryptocurrency, now there are hundred other cryptocurrencies available for different purposes, but the dominance of Bitcoin is 53.9% among all cryptocurrencies. Digital currency always carries security risks, like in case of Bitcoin, it is the ownership of wallet which is decided by the private key of wallet, wallet carries public and private keys, and the ownership can pass on from one person to another with the private key of the wallet only and one who owns a private with passcode is the legit owner of Bitcoin wallet on blockchain. It is essential to keep private key safe, as with the loss of private keys owner will no longer be able to claim the ownership and thus stored Bitcoin will be lost forever. Thus, a person having access to private keys can claim ownership of associated wallet; further, bitcoin can be stolen from the
Intuitionistic Fuzzy Shannon Entropy Weight…
5
wallet with the discovery of stolen private keys or if the keys are lost/hacked/copied by someone, and thus possess high risk.
3 Fuzzy Set, Intuitionistic Fuzzy Set (IFS) In 1965, fuzzy set was primarily introduced by Zadeh [7] for modeling the vagueness, in year 1986, Atanassov [6] introduced the concept of intuitionistic fuzzy sets (IFS) which is an extension to the classical fuzzy set theory, to deal with the vagueness due to the amount of hesitation in the system. Basic definitions of fuzzy and intuitionistic fuzzy sets are given as follows. Definition 1 A fuzzy set F in the universe Z is described by the characteristic function μ F : Z → [0, 1]. A fuzzy set F is represented as F = {(z, μ F ) : ∀ z ∈ Z }
(1)
where μ F is the membership degree of element z in the set F. The fact that larger the value of μ F more are the chances of z belonging to set F. Definition 2 Intuitionistic fuzzy set (IFS) I on a universe of discourse Z is as follows: I = {z, μ I (z), ν I (z) : ∀z ∈ Z }
(2)
where functions μ I (z) and ν I (z) : Z → [0, 1] depict the grade of membership and nonmembership of an element z ∈ I ⊂ Z , respectively. Definition 3 For ∀ z ∈ Z , π I (z) = 1 − μ I (z) − ν I (z) is called degree of uncertainty or hesitation of IFS set I in Z, with the condition 0 ≤ μ I (z) + ν I (z) ≤ 1. The parameter π I (z) is hesitation of degree whether z belongs to I or not. If parameter π I (z) has small value, it implies the information about z is more certain. If π I (z) is high, it implies that information is more uncertain about z, when μ I (z) = 1 − ν I (z) ∀ z, it turns into fuzzy set [23]. For IFSs I and J of the set Z, Atanassov [6] defined the multiplication operator which is given as follows: I ⊗ J = {μ I (z) • μ J (z), ν I (z) + ν J (z) − ν I (z) • ν J (z)|z ∈ Z }
(3)
3.1 Entropy, Fuzzy Entropy, and Intuitionistic Fuzzy Entropy Entropy is a probabilistic measure of uncertainty, and the differences in criteria’s are evaluated using entropy in multi-criteria decision-making method. Shannon [20]
6
T. Parveen et al.
gave the concept of probability as a measure of uncertainty in a discrete distribution, where probabilities are evaluated as random variable probabilities considering it as probability mass function. Generalized Shannon’s entropy function proposed by De Luca and Termini [24], who approximated the non-probabilistic-based entropy function, has been utilized for the study to select the online payment method. Here, entropy process is cooperated to evaluate the uncertainty in decision-making process in a multi-criteria decision-making setup. Several researchers proposed different methods to measure the degree of fuzziness [25, 26]. Schmidt and Kaprzyk [10, 27] extended De Luca and Termini [24] for evaluating the distance between intuitionistic fuzzy sets and the non-probabilistic entropy measure. Definitions of entropies are as follows: n pi = 1 be a set of random Definition 4 Let δn = {P = { p1 , . . . pn }}, pi ≥ 0, i=1 variable probabilities, and for any probability distribution P = ( p1 , . . . pn ) ∈ δn , the Shannon’s entropy [20] is defined as H (P) = −
n
p(z i ) log p(z i )
(4)
i=1
Definition 5: Let I be a fuzzy set defined on finite universal set Z = {z i , . . .z n }, then fuzzy entropy on I is defined as H (I ) = −
n 1 μ I (z i ) log μ I (z i ) + (1 − μ I (z i )) log(1 − μ I (z i )) n i=1
(5)
Definition 6 Let I be a fuzzy set defined on finite universal set Z = {z i , . . .z n }, then Intuitionistic fuzzy entropy [10] for distance measure between IFS is given as follows: n 1 min(μ I (z i ), ν I (z i )) + π I (z i ) E(I ) = n i=1 max(μ I (z i ), ν I (z i )) + π I (z i )
(6)
Definition 7 Let I be a fuzzy set defined on finite universal set Z = {z i , . . . z n }, then Vlachos and Sergiadis [28] proposed the following to measure intuitionistic fuzzy entropy: 1 [μ I (z i ) ln μ I (z i ) + ν I (z i ) ln ν I (z i ) n ln 2 i=1 n
E(I ) = −
− (1 − π I (z i )) ln(1 − π I (z i )) − π I (z i ) ln 2]
(7)
Intuitionistic Fuzzy Shannon Entropy Weight…
7
4 An Algorithm for Intuitionistic Fuzzy TOPSIS Let I = {I1 , I2 , . . . Im } be a set of “m” alternatives, where decision-makers will select from I based on criteria set Z = {Z 1 , Z 2 , . . . Z n } which has “n” criteria. Following are steps involved in intuitionistic fuzzy TOPSIS method as depicted in Fig. 1. Step 1: Decision-maker’s weight evaluation Consider that there are “l” decision-makers in a group, the importance of decisionmaker’s linguistic expression is represented by assigning intuitionistic fuzzy numbers. Let Dk= [μk , νk , πk ] be an intuitionistic fuzzy (IF) number to rate the kth decision-maker. Thus, the kth decision-maker’s weight is evaluated as k μk + πk μkμ+ν k ψk = l μk k=1 μk + πk μk +νk and
l k=1
(8)
ψk = 1.
Step 2: Construct aggregated intuitionistic fuzzy decision matrix. Let P (k) = pi(k) be an intuitionistic fuzzy decision matrix of intuitionisj m×n
tic fuzzy value Dk= [μk , νk ] for each decision-maker is constructed. Here, ψ = {ψ1 , ψ2 , . . . ψl } denotes each decision-maker’s weight and lk=1 ψk = 1, ψk ∈ [0, 1]. In a multi-criteria decision-making procedure, an aggregated IF decision matrix is constituted by infusion of individual opinions of decision-makers into a group opinion. The IFWA operator proposed by Xu (2007) is used for aggregation, P = pi j m×n , where
Determine decision maker's weights
Calculate separation measure
Calculate relative Closeness coefficient
Construct aggregated IF decision matrix with decision makers opinion
Evaluate IFPIS and IFNIS
Rank the Alternatives
Calculate criteria weights
Weighted aggregated IF decision matrix
Fig. 1 Algorithm for intuitionistic fuzzy TOPSIS method
8
T. Parveen et al. ⎡ μ A1 (z 1 ) , ν A1 (z 1 ) , π A1 (z 1 ) ⎢ μ A2 (z 1 ) , ν A2 (z 1 ) , π A2 (z 1 ) ⎢ P=⎢ . ⎢ . ⎣ . μ Am (z 1 ) , ν Am (z 1 ) , π Am (z 1 )
,ν ,π μ A1 (z 2 ) A1 (z 2 ) A1 (z 1 ) μ A2 (z 2 ) , ν A2 (z 2 ) , π A2 (z 2 ) . . . μ Am (z 2 ) , ν Am (z 2 ) , π Am (z 2 )
⎤ · · · μ A1 (z n ) , ν A1 (z n ) , π A1 (z n ) · · · μ A2 (z n ) , ν A2 (z n ) , π A2 (z n ) ⎥ ⎥ ⎥ . .. ⎥ . ⎦ . . · · · μ Am (z n ) , ν Am (z n ) , π Am (z n )
(9)
where (2) (l) pi j = I F W Aψ pi(1) , p , . . . , p j ij ij (2) (3) (l) = ψ1 pi(1) j ⊕ ψ2 pi j ⊕ ψ3 pi j ⊕ . . . ψl pi j l l l l ψk ψk ψk ψk (k) (k) (k) (k) 1 − μi j νi j 1 − μi j νi j = 1− , , − (10) k=1
k=1
k=1
k=1
Here pi j = μ Ii z j · ν Ii z j , π Ii z j (i = 1, 2, . . . , m; j = 1, 2, . . . , n). The aggregated intuitionistic fuzzy decision matrix P can be defined as follows: ⎡ ⎢ ⎢ ⎢ P=⎢ ⎢ ⎢ ⎣
p12 p13 p22 p23 p32 p33 ... ...
· · · p1m . . . p2m . . . p3m . . .. ..
pn1 pn2 pn3
. . . pnm
p11 p21 p31 ...
⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦
(11)
Step 3: Determine the weights of criteria using entropy In this step, the intuitionistic fuzzy entropy measure [5, 10, 19, 27, 28] can fetch (k) (k) (k) objective weights called entropy weights, considering w j = μ(k) as j , νj , πj weight criteria vector obtained over criteria C j by kth decision-maker, thus under intuitionistic fuzzy situation, information from each criterion C j can be evaluated utilizing entropy equation as follows and thus criteria weights can be obtained: m 1 μi j C j ln μi j C j + νi j (xi ) ln νi j C j m ln 2 i=1 − 1 − πi j C j ln 1 − πi j C j − πi j C j ln 2
E Cj = −
(12)
where j = 1, . . ., n and 1/m ln 2 have a constant value which ensures 0 ≤ E C j ≤ 1. Thus, the degree of divergence d j which is derived from intrinsic information fetched by criteria C j is represented as d j = 1 − E C j , where j = 1, . . . , n,
(13)
Intuitionistic Fuzzy Shannon Entropy Weight…
9
Therefore, the entropy weight of the jth criteria is given by dj w j = n j=1
dj
(14)
Step 4: Construction of weighted aggregated IFS decision matrix Now, after determining the weight vector W and aggregating it with intuitionistic fuzzy decision matrix P, the weighted intuitionistic fuzzy decision matrix V can be obtained as [29] V = W ⊗ P = W T ⊗ z i j m×n = z i j w w where W = (w1 , . . . , wn ) and z i j = μi j , ν i j = 1 − 1 − μi j j , νi j j , w j > 0 Step 5. Obtain IFPIS and IFNIS Let M1 be a benefit criterion and M2 be a cost criterion, respectively. I + is intuitionistic fuzzy positive-ideal solution (IFPIS) and I − is intuitionistic fuzzy negative-ideal solution (IFNIS). Then I + and I − are obtained as C j , maxi μi j C j j ∈ J1 , mini μi j C j j ∈ J2 , i ∈ m mini ν i j C j j ∈ J1 , maxi ν i j C j j ∈ J2 C j , mini μi j C j j ∈ J1 , maxi μi j C j j ∈ J2 , i ∈ m = maxi ν i j C j j ∈ J1 , mini ν i j C j j ∈ J2
I+ = I−
(15) (16)
Step 6. Calculation of the separation measures The separation measure proposed by Szmidt and Kacprzyk [21, 22], Atanasso [29] is utilized to evaluate the alternative’s distance from IFPIS and IFNIS, which is represented as n 2 2 2 1 μ Ii W z j − μ I ∗ W z j δi + = + ν Ii W z j − ν I ∗ W z j + π Ii W z j − π I ∗ W z j 2n j=1
n 2 2 2 1 + ν Ii W z j − ν I − W z j + π Ii W z j − π I − W z j μ Ii W z j − μ I − W z j δi − = 2n
(17)
j=1
Step 7. Calculate closeness coefficient The relative closeness coefficient with respect to the IFPIS I + of each alternative is calculated as follows: C j∗ = where 0 ≤ C j ∗ ≤ 1 and j = 1, . . . , m
δi − δi + + δi −
(18)
10
T. Parveen et al.
Step 8. Alternative’s Rank The alternatives are assigned ranks based on their C j ∗ value in a descending order.
5 Application of IFS-TOPSIS Method in Selecting Online Payment System The objective of this study is to inspect from the available transaction methods the most appropriate online payment method that could effectively carry out the transactions in most efficient way. The decision-makers can effectively utilize the intuitionistic fuzzy decision-making method along with TOPSIS method to rank and analyze the available transaction methods. However, it is challenging to categorize the available systems, considering the criticality of certain trades and security requirements during payment, to understand how to choose among the available payment methods based on these six important characteristics, namely, Vulnerability, Ease of Execution, Consequence, Threat, Operational Importance, and Resiliency. The criteria taken under consideration while doing this study are consequence, possible consequence in case of exploitation such as regulatory risk, financial losses, ease of execution, the authorization and authentication ways, and their implementation, such as 2FA (two factor authentication), Operational importance, possible consequences in case of unavailability of service or exploitation, resiliency, the chances of system recovery in case of DDoS attacks, or system failure, Threat, attack from online ransom malware, phishing, distributed denial-of-service attacks, and so on and vulnerabilities. Main approach used here is to apply the IFS-TOPSIS with intuitionistic fuzzy entropy method which is employed for evaluating and ranking the alternatives available for online transaction (payment) method based on six different criteria, also, to discuss the Bitcoin cryptocurrency method with other available transaction systems. A group of decision-makers with knowledge in information security and experience with online transaction methods are taken on board, to ensure the relevancy of judgements. These criteria form the basis of proposed methodology considering the security and facilitate the decision-makers to evaluate the available online payment systems. Step 1. Determine the weights of the decision-makers Linguistic terms used for the ratings by the decision-makers are shown in Table 1, and using Eq. (8) the weights of decision-makers are obtained, which are represented in Table 2. Calculation of decision-maker’s weight are as follows: Table 1 Linguistic terms Linguistics term
Very important
Important
Medium
Unimportant
Very unimportant
μ
0.9
0.8
0.5
0.3
0.1
ν
0.1
0.15
0.45
0.65
0.9
Intuitionistic Fuzzy Shannon Entropy Weight… Table 2 Decision-maker’s weight
Decision-makers
11 Linguistics term
Weight (ψ)
I
Very important
0.397
II
Medium
0.232
III
Important
0.371
0.9 0.5 = 0.397 0.8 + 0.5 + 0.05 0.95 0.9 + 0.8 + 0.05 0.95 0.8 0.8 + 0.05 0.95 0.5 = 0.232 0.8 = 0.9 + 0.8 + 0.05 0.95 + 0.5 + 0.05 0.95 0.5 0.5 + 0.05 0.95 0.5 = 0.371 0.8 = 0.9 + 0.8 + 0.05 0.95 + 0.5 + 0.05 0.95
ψ D1 = ψ D2 ψ D3
Step 2: Construction of aggregated intuitionistic fuzzy decision matrix Linguistic terms represented in Table 3 are used to construct the aggregated IF decision matrix where decision-maker evaluates all the criteria for four online payment methods taken under study and results are represented in Table 4. The aggregated IF decision matrix depending on the average of decision-maker’s viewpoint, calculated using Eq. (9), is represented in Table 5. Step 3: Estimate the weights of the criteria Decision-makers evaluated the six criteria independent of alternatives, and their opinions were aggregated to estimate the weights of each criterion using equation [1, 2, 5], and the resultant weights are represented in Table 6. Table 3 Linguistic terms
Linguistic terms
IFNs μ
ν
Extremely good
1
0
Very very good
0.9
0.1
Very good
0.8
0.1
Good
0.7
0.2
Medium good
0.6
0.3
Fair
0.5
0.4
Medium bad
0.4
0.5
Bad
0.25
0.6
Very bad
0.1
0.75
Very very bad
0.1
0.9
12
T. Parveen et al.
Table 4 Alternative weights based on criteria Criteria Ease of execution
Consequence
Threat
Vulnerability
Resiliency
Operational importance
Payment method
Decision-makers I
II
III
M-banking
G
VG
G
E-banking
VVG
VG
VG
E-commerce
MG
G
G
Bitcoin
F
MG
MB
M-banking
MG
G
MG
E-banking
VG
G
VG
E-commerce
VG
VG
MG
Bitcoin
G
MG
G
M-banking
VG
G
VG
E-banking
VG
VG
G
E-commerce
VG
VG
G
Bitcoin
G
G
MG
M-banking
F
MG
F
E-banking
VG
VG
VVG
E-commerce
MG
VG
VG
Bitcoin
VG
G
MG
M-banking
G
VG
G
E-banking
VVG
G
VG
E-commerce
G
F
F
Bitcoin
VG
G
G
M-banking
MG
G
VG
E-banking
VVG
VG
VG
E-commerce
G
MG
G
Bitcoin
F
MB
MG
Step 4: Construct aggregated weighted IF decision matrix An aggregated weighted IF decision matrix is constructed using Eq. (1) and Table 7 is thus obtained. Step 5: Calculate IFPIS and IFNIS Now, intuitionistic fuzzy positive-ideal solution (IFPIS) and intuitionistic fuzzy negative-ideal solution (IFNIS) are evaluated using Eq. (16) and results are shown in Table 8. Steps 6 and 7: Separation measures of closeness coefficient Using Eqs. (17) and (18), the negative and positive separation measure and relative closeness coefficient are evaluated and results are thus represented in Table 9.
Intuitionistic Fuzzy Shannon Entropy Weight…
13
Table 5 Aggregated IF decision matrix Ease of execution
Consequence
Threat
Vulnerability
Resiliency
Operational importance
M-banking
E-banking
E-commerce
Bitcoin
μ
0.727
0.848
0.664
0.492
ν
0.17
0.1
0.235
0.406
π
0.103
0.052
0.101
0.102
μ
0.626
0.78
0.741
0.679
ν
0.273
0.117
0.15
0.22
π
0.101
0.103
0.109
0.101
μ
0.78
0.768
0.768
0.666
ν
0.117
0.129
0.129
0.232
π
0.103
0.103
0.103
0.102
μ
0.525
0.845
0.737
0.716
ν
0.374
0.1
0.155
0.177
π
0.101
0.055
0.108
0.107
μ
0.727
0.833
0.592
0.745
ν
0.17
0.117
0.304
0.152
π
0.103
0.05
0.104
0.103
μ
0.711
0.848
0.679
0.52
ν
0.182
0.1
0.22
0.379
π
0.107
0.052
0.101
0.101
Table 6 Criteria weights
Criteria
Entropy E Cj
Distance measure (d j )
Weights (w j )
Ease of execution
0.83
0.136
0.034
Consequence
0.849
0.127
0.024
Threat
0.723
0.222
0.055
Vulnerability
0.765
0.201
0.034
Resiliency
0.812
0.165
0.023
Operational importance
0.882
0.11
0.008
Step 8. Alternatives Rank The four alternatives were ranked based on C j which is as follows: E-Banking > ECommerce > M-Banking > Bitcoin.
14
T. Parveen et al.
Table 7 Aggregated weighted IF decision matrix Ease of execution
Consequence
Threat
Vulnerability
Resiliency
Operational importance
M-banking
E-banking
E-commerce
Bitcoin
0.183884
0.255358
0.156926
0.100577
0.757801
0.697408
0.797194
0.868419
0.058315
0.047235
0.045881
0.031004
0.147386
0.217667
0.196691
0.168249
0.810194
0.706206
0.735234
0.782333
0.04242
0.076127
0.068075
0.049418
0.245943
0.238439
0.238439
0.184903
0.670312
0.682626
0.682626
0.761561
0.083745
0.078935
0.078935
0.053537
0.117348
0.268458
0.200642
0.190279
0.847972
0.679712
0.731542
0.748004
0.034681
0.051829
0.067816
0.061717
0.198277
0.262619
0.141526
0.207531
0.739619
0.694046
0.816537
0.725663
0.062104
0.043335
0.041938
0.066806
0.17711
0.25609
0.163427
0.108865
0.765253
0.69657
0.788383
0.85868
0.057637
0.04734
0.04819
0.032455
6 Conclusion In recent times, online transaction method is most prevailing and need of the time, and to evaluate the major online transaction method, intuitionistic fuzzy entropy based decision-making along with TOPSIS methodology approach is applied on Ecommerce, E-banking, M-banking, and Bitcoin payment system based on important criteria such as Ease of Execution, Consequence Threat, Vulnerability, Resiliency, and Operational Importance. The objective of this study was to utilize the MCDM based on intuitionistic fuzzy entropy based decision-making along with TOPSIS methodology to rank the most efficient online payment system based on the criteria which are essential while using the online transaction method. The IFS method includes the rating of available alternatives based on the criteria selected, and weight to each criterion is given in linguistic terms and has been characterized by IF numbers. In this further, opinions of decision-makers were aggregated using the IF operator. Based on Euclidean distance, IFPIS and IFNIS are obtained and thus closeness coefficients of alternatives are calculated with which alternatives were ranked. Based on the analysis, E-banking is termed as most effective online payment method, following E-commerce and M-banking, whereas Bitcoin payment method is not much popular among masses, though it is reliable and safe method but with certain security risks which are discussed in Sect. 2. The proposed methodology can be extended to
Intuitionistic Fuzzy Shannon Entropy Weight…
15
Table 8 IFPIS and IFNIS Ease of execution
Consequence
Threat
Vulnerability
Resiliency
Operational importance
I+
I−
0.255358
0.100577
0.697408
0.868419
0.047235
0.031004
0.217667
0.147386
0.706206
0.810194
0.076127
0.04242
0.245943
0.184903
0.670312
0.761561
0.083745
0.053537
0.268458
0.117348
0.679712
0.847972
0.051829
0.034681
0.262619
0.141526
0.694046
0.816537
0.043335
0.041938
0.25609
0.108865
0.69657
0.85868
0.04734
0.032455
Table 9 Separation measures of closeness coefficient δi +
δi −
Cj
Rank
E-banking
0.004
0.132
0.971
1
E-commerce
0.079
0.069
0.466
2
M-banking
0.089
0.069
0.437
3
Bitcoin
0.108
0.05
0.316
4
be applied in varied fields of decision-making and management decision problems. Though it turned out, based on decision-maker’s opinion bitcoin is least favorable in current scenario but it is a future technology and blockchain is secure enough that it can contend with existing online payment methods. We will extend our study to compare Bitcoin cryptocurrency with various payment methods with application in different fields.
16
T. Parveen et al.
References 1. Rosenquist, M. (2009). Prioritizing information security risks with threat agent risk assessment. Intel Information Technology. 2. von Roessing, R. M. (2010). The business model for information security. 3. Trustwave. (2015). State of risk report state of risk report. 4. Sailors, S. (2015). 7 top cyber risks for 2015. Protecting Tomorrow. 5. Nakamoto, S. (2008). Bitcoin: A peer-to-peer electronic cash system (pp. 1–9) (Consulted). 6. Atanassov, K. (1986). Intuitionistic fuzzy sets. Fuzzy Sets and Systems, 20, 87–96. 7. Zadeh, L. A. (1965). Fuzzy sets. Information and Control, 8(3), 338–356. 8. De, S. K., Biswas, R., & Roy, A. R. (2000). Some operations on intuitionistic fuzzy sets. Fuzzy Sets and Systems, 114(3), 477–484. 9. Grzegorzewski, P., & Mrowka, E. (2005). Some notes on (Atanassov’s) intuitionistic fuzzy sets. Fuzzy Sets and Systems, 156(3), 492–495. 10. Szmidt, E., & Kacprzyk, J. (2001). Intuitionistic fuzzy sets in some medical applications. Lecture Notes in Computer Science, 2206, 148–151. 11. Szmidt, E., & Kacprzyk, J. (2001). Entropy of intuitionistic fuzzy sets. Fuzzy Sets and Systems, 118, 467–477. 12. Szmidt, E., & Kacprzyk, J. (2004). A similarity measure for intuitionistic fuzzy sets and its application in supporting medical diagnostic reasoning. Lecture Notes in Computer Science, 3070, 388–393. 13. Boran, F. E., Genc, S., Kurt, M., & Akay, D. (2009). A multi-criteria intuitionistic fuzzy group decision making for supplier selection with TOPSIS method. Expert Systems with Applications, 36(8), 11363–11368. 14. Xu, Z. S. (2007). Intuitionistic fuzzy aggregation operators. IEEE Transactions on Fuzzy Systems, 15(6), 1179–1187. 15. Chai, J., Liu, J. N. K., & Xu, Z. (2013). A rule-based group decision model for warehouse evaluation under interval-valued intuitionistic fuzzy environments. Expert Systems with Applications, 40(6), 1959–1970. 16. Park, J. H., Park, Y., Kwun, Y. C., & Tan, X. (2011). Extension of the TOPSIS method for decision making problems under interval valued intuitionistic fuzzy environment. Applied Mathematical Modelling, 35(5), 2544–2556. 17. Xu, Z., & Zhang, X. (2013). Hesitant fuzzy multi-attribute decision making based on TOPSIS with incomplete weight information. Knowledge Based Systems, 52, 53–64. 18. Zhang, H., & Yu, L. (2012). MADM method based on cross-entropy and extended TOPSIS with interval-valued intuitionistic fuzzy sets. Knowledge-Based Systems, 30, 115–120. 19. Hwang, C. L., & Yoon, K. S. (1981). Multiple attribute decision making: Methods and applications. Berlin: Springer. 20. Shannon, C. E. (1948). The mathematical theory of communication. Bell System Technical Journal, 27(379–423), 623–656. 21. Szmidt, E., & Kacprzyk, J. (1997). On measuring distances between intuitionistic fuzzy sets. Notes on IFS, 3, 1–13. 22. Szmidt, E., & Kacprzyk, J. (1997). Distances between intuitionistic fuzzy sets. Fuzzy Sets and Systems, 114, 505–518. 23. Shu, M. S., Cheng, C. H., & Chang, J. R. (2006). Using intuitionistic fuzzy sets for fault tree analysis on printed circuit board assembly. Microelectronics Reliability, 46(12), 2139–2148. 24. De Luca, A., & Termini, S. (1972). A definition of a non-probabilistic entropy in the setting of fuzzy sets theory. Information and Control, 20, 301–312. 25. Kaufmann, A. (1975). Introduction to the theory of fuzzy subsets. Fundamental theoretical elements (Vol. 1). New York: Academic Press. 26. Yager, R. R. (1995). Measures of entropy and fuzziness related to aggregation operators. Information Sciences, 82(3), 147–166. 27. Szmidt, E., & Kacprzyk, J. (2000). Distances between intuitionistic fuzzy sets. Fuzzy Sets and Systems, 114(3), 505–518.
Intuitionistic Fuzzy Shannon Entropy Weight…
17
28. Vlachos, I. K., & Sergiadis, G. D. (2007). Intuitionistic fuzzy information, applications to pattern recognition. Pattern Recognition Letters, 28, 197–206. 29. Atanassov, K. T. (1999). Intuitionistic fuzzy sets. Heidelberg: Springer.
Fermat Spiral-Based Moth-Flame Optimization Algorithm for Object-Oriented Testing Rashmi Sharma and Anju Saha
Abstract Correctness of developed software is validated via software testing, as it guarantees that the developed software is error free. But with the advancement in software development using object-oriented technology, software testing has now become a very challenging task. The key concepts of object orientation, i.e., polymorphism, encapsulation, and inheritance introduce various threats in testing. So, there is an extreme need to optimize this process of object-oriented testing. Also, in the quest to develop software with all the desired functionalities, knowingly or unknowingly, the complexity of software increases which in turn increases the testing effort exponentially. To overcome these issues of software testing, interest nowadays has diverted from code-based testing to model-based testing. Model-based testing tests with respect to a formal model which assures cheaper, faster, and better testing methodology. However, optimal test paths generation is still an open area of research. Various bio-inspired meta-heuristic algorithms have been exploited for the same. In this paper, a new version of Moth-Flame Optimization (MFO) algorithm is proposed for the creation of test paths. Originally, moth-flame optimization algorithm is based on the transverse orientation used by moths for navigation. Even after this transverse orientation, moths may get misguided by the artificial lights and start moving spirally around the light source. Originally, logarithmic spiral has been used to capture this spiral motion of moths. But as logarithmic spiral is a self-similar curve, which means movement of moths will be exactly or approximately same to its part, which may not be the case always. Hence, to improve this, here, we are presenting an improved version of this algorithm based on the Fermat’s spiral, which is further applied on State Transition Diagram (STD) of the seven object-oriented software applications to produce the test paths. Keywords Moth-flame optimization · Ant colony optimization · Firefly algorithm · State transition diagram · Fermat’s spiral · Object oriented
R. Sharma (B) · A. Saha Guru Gobind Singh Indraprastha University, Dwarka, Delhi, India e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_2
19
20
R. Sharma and A. Saha
1 Introduction Software testing is a technique which ascertains that the software is doing what it was designed to do and is not providing any undesirable results [1]. A good quality software depends on the effective process of software testing. However, testing consumes around more than 50% cost of the software development [2]. Testing can be performed either at functional aspect or at the structural aspect. Functional aspect focuses on the user point of view by treating the whole software program as a black box, whereas structural aspect takes the implementation details of the software into account as well [1]. Hence, structural testing tries to find and eliminate bugs by concentrating at the code level. So, this testing process majorly depends on the programming paradigm used to build the software. Various programming paradigms exist in the literature, namely, functional paradigm, object-oriented paradigm, logic and constraint programming, etc. [3]. Out of all the paradigms, object-oriented design methodology draws the attention of software developers. This design paradigm has been explored for system programming, graphics, simulation, and even for artificial intelligence programming [4]. This all would become possible due to the prevailing features exhibited by object-oriented paradigm. The powerful functionalities of object-oriented paradigm like polymorphism and dynamic binding even allow developers to make such a system that will adapt automatically as per the hardware and software components of a machine [5]. Likewise, there exist features of data abstraction, inheritance, information hiding, function overloading, and much more which allow software developer to build a strong and secure system. The functionalities of object-oriented system, on one hand, are proving to be beneficial for software developers, but contrary to this, these features are imposing serious threats for the software testers. Due to the various challenges thrown by object orientation in software testing, we must look for the immediate solutions for the same, so that a properly tested highly technical software system can be built. It was investigated that instead of testing the software at the code level, it would be better to test it at model level [6]. It helps in early diagnosis of the faults, thus reducing the time, effort, and cost involved in testing. For object-oriented software, state transition diagram provides the transition details among the various states. Researchers in their work provided numerous solutions to the object oriented [7, 8], but one cannot decide the best technique among the available ones. Thus, this problem of software testing now emerges as the optimization problem of software testing. Traditional optimization techniques, like hill climbing, are deterministic algorithms with no randomness, i.e., for the same starting position, they always track the same path, whenever it is executed [9]. Thus, nowadays, stochastic algorithms are explored which always exhibit some sort of randomness. Hence, randomization provides a good measure to go far away from local search. From this, the concept of evolutionary computation evolves, which considers nature/bio-inspired meta-heuristics. In this paper, we are concentrating on moth-flame optimization to generate optimized test paths, as this claimed to produce less redundant and more optimized test paths in [10]. This algorithm is dependent on the transverse orientation of moths
Fermat Spiral-Based Moth-Flame Optimization Algorithm…
21
with respect to moon and how they got tricked by the artificial light source. This moth-flame optimization algorithm, as proposed by [11] and used by [10], has used a logarithmic spiral motion to update the position of moths w.r.t. light source. Logarithmic spiral is a self-similar curve, which means that updated position traversed by moths will be almost like their previous positions. But this may not be true always, when we consider real-time motion of moths. They may traverse a new path that might not be traversed earlier. Thus, in this research, we are proposing an improved version of moth-flame optimization algorithm, a nature-inspired meta-heuristic. Our improved algorithm is then applied to seven state transition diagrams of objectoriented software applications to generate the test paths. This paper is structured as follows. Section 2 provides a literature review on usage of nature-inspired meta-heuristics for software test paths generation. Section 3 gives a brief overview of various methodologies and object-oriented benchmarks used in this research. Section 4 illustrates the detailed description of our proposed meta-heuristic algorithm, i.e., moth-flame optimization variant. Section 5 experimentally evaluates the proposed algorithm on object-oriented benchmarks discussed in Sect. 3. Finally, Sect. 6 concludes this research.
2 Literature Review In this section, a review of the various nature-inspired algorithms applied on STDs for the generation of test paths has been provided. ACO algorithm has been applied by [12] to generate test paths via state-based testing. ACO algorithm has also been applied by [13] on the STD for the full and automated coverage of all state transitions present in the system. The generated test sequence was compared with genetic algorithm. The results validate that ACO is better than GA. FA was used for test data generation by [14]. They compared it with ACO. Output indicated that FA outperforms ACO algorithm by generating reduced and comparatively less redundant test paths. [15] used cuckoo search algorithm to obtain optimal test sequence with 100% coverage of the software. A hybrid of CS and bat algorithm was used by [16] for path testing of the software. The hybrid algorithm was put on the control flow graph of the system to achieve the complete path coverage. Particle swarm optimization algorithm was employed by [17] for software testing and the results have been compared with GA. Their results indicate that PSO outperforms GA. The abovementioned background work discussed the application of various bioinspired algorithms in the area of software testing. However, each of the algorithms has some merits and demerits associated with them and none of them claimed to be the best object-oriented software testing optimization algorithms till date. Recently, MFO algorithm has been explored in the field of optimal test paths generation [10]. In this research, we are proposing an improved MFO algorithm based on Fermat spiral for optimal test path generation in OO software testing.
22
R. Sharma and A. Saha
3 Methodology Used In this section, an overview MFO algorithm has been provided. After that, the OO benchmark applications that have been selected in this research are presented.
3.1 Moth-Flame Optimization Algorithm MFO algorithm was given by Mirjalili [11] based on the transverse orientation used by moths for navigation. This will be achieved by maintaining a fixed angle by moths from the moon. But sometimes, moths got mislead by the artificial lights as they try to maintain the same angle from artificial light as well, which they maintain from moon. This will cause moth to move spirally as artificial light source is very close to moths as compared to moon. Conceptually, MFO is a population-based algorithm. Moths are the search agents and flames are the best position of the search space obtained so far. A logarithmic spiral was designed by [11] by considering that its initial position should start from moth and final position must be the position of flame. In this algorithm, M denotes the matrix of moths and matrix F is the flame matrix. The position of each moth will be updated as per the flames according to the given equation. The equation is as follows: m i = S(m i , f j )
(1)
Here, mi shows the ith moth, f j represents the jth flame, and S is the spiral motion. A logarithmic spiral motion is proposed by [11] for this, which is given below: S(m i , f j ) = Di × ebt × cos(2 π t) + Fj
(2)
where b defines the shape of the spiral and it is a constant value, t is a random number in range [–1,1], F j is the fitness function of moth j, and Di denotes the distance of ith moth from jth flame as Di = f j − m i
(3)
Using the above equation, moths may get trapped in local optima. To resolve this, position of moths will be updated using the below equation: Updated Flame number = round(N − i × (N − 1) ÷ I ))
(4)
where N is the maximum number of flames, i denotes the current iteration number, and I shows the total number of iterations.
Fermat Spiral-Based Moth-Flame Optimization Algorithm…
23
3.2 Object-Oriented Benchmarks Used In this section, a brief overview of object-oriented benchmarks that have been used in this research has been provided. The focus is on the benchmarks having single class but varying number of states. These are also used in [10] and Sharma and Saha [14]. These benchmarks have been explained as follows: 1. Bengali Braille-to-Text Translation—This software was developed by [18] for the purpose of identification of Bengali Braille character. The steps acquired to achieve the same are—enhancing and filtering of the input image, detection of braille dots and their pattern recognition, assigning characters to the patterns, and finally writing the output to a text file. The corresponding state diagram of this software is depicted in Fig. 1. 2. Microwave Oven—Microwave oven is a very common household electronic device. At an instant of time, an oven can be in idle, ready, waiting, or in an error state. These various states of oven are modeled by [19] in their research. The state transition diagram of this application is given in Fig. 2. 3. ATM Transaction—ATM is a widely used machine for cash withdrawal using the bank’s debit card. A single transaction of ATM has been modeled by [19]. The state diagram of Fig. 3 depicts all the states. 4. Stack—A stack is a commonly used data structure that follows Last-in FirstOut (LIFO) approach. Initially, the stack will be in empty state, when an item
Fig. 1 State transition diagram of Bengali Braille-to-text translator
24
R. Sharma and A. Saha
Fig. 2 State transition diagram of microwave oven
Fig. 3 State transition diagram of ATM transaction
is pushed/inserted it will go into non-empty state. One can continually insert an item on to stack till the stack becomes full, and after that it will go into error state. This benchmark has been used previously in [20]. The state transition diagram of this class has been shown in Fig. 4. 5. Accounts—Accounts class implements a bank account system with all the corresponding operations like opening of an account, cash deposit, withdrawal, etc.
Fermat Spiral-Based Moth-Flame Optimization Algorithm…
25
Fig. 4 State transition diagram of stack class
This application has been explored in [20]. All the operations of this class have been modeled in Fig. 5. 6. Coffee Vending Machine—This OO benchmark models the basic behavior of coffee vending machine. When a coin is inserted in the machine, the machine can be in waiting, ready, or in dispensing state. This has been used previously in [20]. The state transition diagram of this is given in Fig. 6. 7. Locks—Locks are used in operating system to achieve synchronization among the processes. This benchmark implements producer–consumer problem using locks. This class has been used in [20]. Its corresponding state transition diagram has been given in Fig. 7.
4 Proposed Moth-Flame Optimization Algorithm—A Variant In this section, MFO variant has been proposed. As discussed in Sect. 3.1, MFO algorithm is based on the spiral motion of moths toward the flame. A logarithmic spiral motion was considered by [11] to update the position of moths with respect to flames. In a logarithmic spiral, distance between the turnings of this spiral keeps on increasing in geometric progression [21]. But the Fermat spiral is centrally symmetric with respect to pole. Also, Fermat spiral looks like two archimedean spirals
26
Fig. 5 State transition diagram of accounts class
Fig. 6 State transition diagram of coffee vending machine
R. Sharma and A. Saha
Fermat Spiral-Based Moth-Flame Optimization Algorithm…
27
Fig. 7 State transition diagram of producer–consumer problem
combined, in clockwise and in anticlockwise directions. It means that Fermat spiral can consider both positive and negative values, unlike logarithmic spiral. Moreover, logarithmic spiral is a self-similar curve, but this may not always be the case with position of moths. Thus, instead of using logarithmic spiral, we are proposing a special case of parabolic spiral motion, i.e., Fermat spiral for the update mechanism of moths.
4.1 Mathematical Formulation In the original MFO algorithm, we are updating the logarithmic spiral motion given in Eq. 2 with the Fermat spiral as given in Eq. 5: √ Fer Mi , Fj = Di × θ × cosθ + Fitj
(5)
where Di represents the absolute difference between target node and current node, Fitj shows the fitness value of node j and θ will be given as θ = n × 137.508◦
(6)
28
R. Sharma and A. Saha
The 137.508° angle is called as golden angle as given by Vogel [22] and n is the node number. Comparing Eqs. 2 and 5, for the computation of motion of moths, it is clear that Fermat spiral is based on the golden angle, which keeps on changing for each moth, whereas logarithmic spiral motion undertakes same angle, i.e., (2 × π × t) to calculate the updated position of moths. Thus, logarithmic spiral is a selfsimilar spiral curve having more chances of getting stuck at local optima. Hence, we are presenting Fermat spiral motion for test path calculation.
4.2 Steps Used to Generate Test Paths Using MFO Variant In this subsection, MFO variant has been applied for the test sequence generation of object-oriented applications. Following are the steps that have been applied: 1. Create State Transition diagram of selected Object-Oriented Application This is the very first step of our proposed MFO variant. An STD has been created for the given Software Under Test (SUT). 2. Conversion of STD to State Graph (SG) After STD has been created, each state of the selected STD has been assigned a unique state number as S1, S2, and so on. These state numbers then become the nodes of the SG and transitions from one state to another have been considered as edges of the graph. 3. Generation of Adjacency matrix Once the SG has been constructed, corresponding adjacency matrix has been built. 4. Calculating Fitness Function for Moths As we had discussed in Sect. 3.1 that moths keep on updating to find a better solution. Thus, for this, a fitness function needs to be formulated. We are using the fitness function proposed in [10] to find the position of moths. This function is dependent on the probability of path traversal of each node via current node. The function will be given as follows: F(x) = (Probablity(x) × Node Number × Dfinal )/Total Number of Nodes
(7)
where x represents the current node. 5. Creation of Motion Matrix In this step, a motion matrix based on the fitness values generated in the previous step has been created as per [10].
Fermat Spiral-Based Moth-Flame Optimization Algorithm…
29
6. Using Fermat’s Spiral Motion of Moths for Computation of Test Paths Following Eq. 5 of Fermat’s spiral test, paths have been calculated. If for any node, two paths exist then the path having lesser value of Fermat spiral has been selected and made as the current node. Moths will be updated to avoid them getting trapped at local optima. 7. Computing Independent Test paths The test paths obtained in Step 6 have been combined to get the final independent test paths.
5 Experimental Evaluation of Proposed Variant of MFO In this section, proposed variant of MFO has been applied on seven benchmarks discussed in Sect. 3.2. (a) Bengali Braille-to-Text Translator Step 1. Create State Transition diagram The state transition diagram of this application has been given in Fig. 1. Step 2. Generate State Graph from State Transition Diagram The corresponding state graph has been given in Fig. 8. Step 3. Generation of Adjacency Matrix The adjacency matrix based on Fig. 8 has been given generated. Step 4. Calculating the Fitness Values of Moths Using Eq. 7, fitness value of moths is calculated as Step 4.1. Calculation of Probability of Path Traversal for Each Moth For Moth 1. Two paths exist, so probability will be 0.5 For Moth 2. only one path exists, so probability will be 1. Similarly, probability of path traversal of each moth has been computed and given in Table 1. For the terminal node, end node affinity will be assigned by assigning some large random value [23]. Step 4.2. Calculation of Fitness Function for Each Moth Applying Equation No. 7, the calculations have been done as For Moth 1. Probability (1) = 0.5, node number = 1, total number of nodes = 17 and Dfinal = (17 − 1 = 16). Putting these values in Eq. 7 as 0.5 × 1 × 16 = 0.470 17 Similarly, fitness values of all the moths have been calculated and summarized in Table 2.
30
R. Sharma and A. Saha
Fig. 8 State graph of Bengali Braille-to-text translator
Table 1 Probability of path traversal via each node Node number
1
2
3
4
5
6
7
8
9 1
Probability
0.5
1
0.5
0.33
1
0.25
1
1
Node number
10
11
12
13
14
15
16
17
Probability
1
1
1
1
1
1
1
100
Table 2 Fitness values for each moth Node number
1
2
3
4
5
6
7
8
9
Fitness values
0.470
1.764
1.235
1.009
3.529
0.970
4.117
4.235
4.235
Node number
10
11
12
13
14
15
16
17
Fitness values
4.117
3.882
3.529
3.058
2.470
1.764
0.941
1000
Step 5. Creation of Motion Matrix Based on fitness values of Table 2, motion matrix has been constructed. The fitness value of node/moth 1 has been placed in first column having 1’s; similarly, fitness value of moth 2 has been placed in second column having 1’s and so on.
Fermat Spiral-Based Moth-Flame Optimization Algorithm…
31
Step 6. Computation of Test Paths Based on Fermat Spiral Here, using Eq. 5 value of paths from each moth has been calculated via Fermat spiral motion. The calculations have been explained below: For Moth 1—From node 1, two paths exist, i.e., (1 → 2 and 1 → 11). Path 1 → 2: Here, D = (2 – 1), i.e., 1, n = 2 and fitness value for node 2 as per Table 2 is 1.764. Substituting these values in Eq. 5, the value of motion of this path comes out to be 1.954. Path 1 → 11: Similarly, value of this path comes out to be 19.23. Since value of motion of path 1 → 2 < path 1 → 11, this path will be selected for further path traversal. Now, the current node becomes node no. 2. For Moth 2—Single path exists from node 2 to node 3, and thus node 3 has been selected. For Moth 3—From node 3, two paths exist, i.e., 3 → 4 and 3 → 6. As per the calculations done for moth 1, values of paths for moth 3 have been calculated. Value of Path 3 → 4 comes out to be −2.0 and path 3 → 6 comes out to be −1.97. Thus, path 3 → 4 has been chosen and current node becomes node 4. Following the above calculations, first path traversed comes out to be 1 → 2 → 3 → 4 → 12 → 13 → 14→ 4 → 15 → 16 → 5 → 17. Now, after the end node has been reached, moths need to be updated. Following paths have been computed: 11 → 17, 10 → 3 → 6 → 9 → 3, 8 → 3, 6 → 7, 6 → 8, 6 → 10 and 1 → 11. Step 7. Computation of Independent Test Paths In this step, test sequences obtained in Step 5 have been combined to get the independent test paths. The final independent test paths have been given in Table 3. Now, following the abovementioned steps, first the state graphs of rest of the six benchmarks have been created and then their adjacency matrices have been created. The test paths generated by MFO variant as proposed in this paper have been summarized in Table 3.
32
R. Sharma and A. Saha
Table 3 Test paths generation via MFO variant 1
Bengali Braille-to-text translator
Ist path
S1, S2, S3, S4, S12, S13, S14, S4, S15, S16, S5, S17
IInd path
S1, S11, S17
IIIrd path
S1, S2, S3, S4, S5, S17
IVth path
S1, S2, S3, S6, S9, S3, S4, S5, S17
Vth path
S1, S2, S3, S6, S7, S3, S4, S5, S17
VIth path
S1, S2, S3, S6, S10, S3, S6, S9, S3, S4, S5, S17
VIIth path
S1, S2, S3, S6, S8, S3, S4, S5, S17
2
Microwave oven
Ist path
S1, S2, S4, S3, S4, S5, S7, S8, S9, S10
IInd path
S1, S2, S3, S5, S6, S7, S8, S9, S10
IIIrd Path
S1, S2, S4, S3, S4, S5, S7, S8, S6, S7, S8, S9, S10
3
ATM transaction
Ist path
S1, S4, S7, S8, S4, S5, S9, S8, S18
IInd path
S1, S4, S7, S8, S4, S5, S6, S3, S2, S8, S18
IIIrd path
S1, S4, S5, S6, S10, S13, S16, S17, S10, S13, S9, S8, S18
IVth path
S1, S4, S5, S6, S5, S9, S8, S18
Vth path
S1, S4, S5, S6, S12, S11, S8, S18
VIth path
S1, S4, S5, S6, S10, S13, S16, S15, S14, S11, S8, S18
VIIth path
S1, S4, S5, S6, S10, S13, S16, S3, S2, S8, S18
VIIIth path
S1, S4, S5, S6, S10, S13, S16, S15, S14, S10, S13, S9, S8, S18
4
Stack
Ist path
S1, S4, S5
IInd path
S1, S2, S1, S2, S2, S3, S4, S5
IIIrd path
S1, S2, S1, S2, S2, S3, S5
5
Accounts
Ist path
S1, S2, S4, S2, S2, S3, S4, S3, S3, S2, S5, S6
IInd path
S1, S2, S4, S2, S2, S3, S6
IIIrd path
S1, S2, S4, S6
6
Coffee vending machine
Ist path
S1, S2, S3, S2, S6
IInd path
S1, S2, S3, S5, S4, S3, S2, S6
IIIrd path
S1, S2, S3, S5, S4, S5, S5, S3, S2, S6
IVth path
S1, S2, S3, S5, S4, S6
Vth path
S1, S2, S3, S5, S6
7
Producer–consumer problem
Ist path
S1, S2, S3, S5, S6, S7, S4, S6, S5, S5, S8 (continued)
Fermat Spiral-Based Moth-Flame Optimization Algorithm…
33
Table 3 (continued) IInd path
S1, S2, S3, S5, S6, S7, S4, S2, S8
IIIrd path
S1, S2, S3, S5, S6, S7, S6, S8
IVth path
S1, S2, S3, S5, S6, S7, S7, S8
6 Conclusion and Future Work This research focuses on generating the variant of moth-flame optimization algorithm for test paths optimization. Previously, MFO has been used in a variety of areas as already explained in this paper. We are using MFO for the software test case generation of object-oriented applications. However, the algorithm uses logarithmic spiral for path updation of moths. In this research, we improve this by using Fermat spiral motion for path updation of moths with respect to flames. The test suite has been generated via this variant of MFO for seven object-oriented applications having a varying number of states. As a primary future work, to validate this research, we will apply our proposed variant on different types of other OO applications and compare them with other existing meta-heuristics. Our research provides an empirical evidence for the application of optimization in various industrial-based OO applications. We are also optimistic about the encouragement of usage of OO testing optimization techniques in industry.
References 1. Myers, G. J., Sandler, C., & Badgett, T. (2011) The art of software testing. Wiley. 2. Boehm, B. W. (1973). Software and its impact: A quantitative assessment. TRW Systems, Engineering and Integration Division. 3. Van Roy, P., et al.: Programming paradigms for dummies: What every programmer should know. In New computational paradigms for computer music (Vol. 104). 4. Stefik, M., & Bobrow, D. G. (1985). Object-oriented programming: Themes and variations. AI Magazine, 6(4), 40. 5. Meyer, B. (1988). Object-oriented software construction (Vol. 2). Prentice Hall New York. 6. Utting, M., Pretschner, A., & Legeard, B. (2012). A taxonomy of model-based testing approaches. Software Testing, Verification and Reliability, 22(5), 297–312. 7. Binder, R. V. (2000). Testing object-oriented systems: Models, patterns, and tools. AddisonWesley Professional. 8. Kim, S. W., Clark, J. A., & McDermid, J. A. (2001). Investigating the effectiveness of objectoriented testing strategies using the mutation method. Software Testing, Verification and Reliability, 11(4), 207–225. 9. Yang, X. S. (2010). Nature-inspired metaheuristic algorithms. Luniver Press (2010). 10. Sharma, R., & Saha, A. (2017). Optimal test sequence generation in state based testing using moth flame optimization algorithm. Journal of Intelligent & Fuzzy Systems, 1–13 (2017) (Preprint). 11. Mirjalili, S. (2015). Moth-flame optimization algorithm: A novel nature-inspired heuristic paradigm. Knowledge-Based Systems, 89, 228–249. 12. Li, H., & Lam, C. P. (2004). Software test data generation using ant colony optimization. In International Conference on Computational Intelligence (pp. 1–4).
34
R. Sharma and A. Saha
13. Srivastava, P. R., & Baby, K. (2010). Automated software testing using metahurestic technique based on an ant colony optimization. In 2010 International Symposium on Electronic System Design (ISED) (pp. 235–240). IEEE. 14. Sharma, R., & Saha, A. (2017). Optimization of object-oriented testing using firefly algorithm. Journal of Information and Optimization Sciences, 38(6), 873–893. 15. Srivastava, P. R., Sravya, C., Ashima, Kamisetti, S., & Lakshmi, M. (2012). Test sequence optimisation: An intelligent approach via cuckoo search. International Journal of Bio-Inspired Computation, 4(3), 139–148 (2012). 16. Srivastava, P. R. (2017). Path generation for software testing: A hybrid approach using cuckoo search and bat algorithm (pp. 409–424). 17. Windisch, A., Wappler, S., & Wegener, J. (2007). Applying particle swarm optimization to software testing. In Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation (pp. 1121–1128). ACM. 18. Kamal, M. (2013). Braille to text translator. GitHub Repository. https://github.com/ MinhasKamal/BrailleToTextTranslator. 19. Shlaer, S., & Mellor, S. J. (1992). Object lifecycles: Modeling the world in states. Your-don Press. 20. Bouchachia, A., Mittermeir, R., Sielecky, P., Stafiej, S., & Zieminski, M. (2010). Natureinspired techniques for conformance testing of object-oriented soft- ware. Applied Soft Computing, 10(3), 730–745. 21. Tamura, K., & Yasuda, K. (2011). Primary study of spiral dynamics inspired optimization. IEEJ Transactions on Electrical and Electronic Engineering, 6(S1), S98–S100. 22. Vogel, H. (1979). A better way to construct the sunflower head. Mathematical Biosciences, 44(44) 179–189. https://doi.org/10.1016/0025-5564(79)90080-4. 23. Srivatsava, P. R., Mallikarjun, B., & Yang, X. S. (2013). Optimal test sequence generation using firefly algorithm. Swarm and Evolutionary Computation, 8, 44–53.
A Comparative Study of Information Retrieval Using Machine Learning Surabhi Solanki, Seema Verma and Kishore Chahar
Abstract Information retrieval is the study of finding relevant information from the semi-unstructured type of data. This paper surveys the insightful techniques and shows the comparative analysis between several information retrieval systems using machine learning approach. Information that we get from the web portal should be with high recall and high precision and F-measure. In this paper, in order to compare information retrieval techniques, we use these parameters like recall, precision, accuracy, and so on. Recall means the ability of the system to retrieve all relevant documents. High precision means the ability of the system to retrieve only relevant documents. F-measure is a proportion of a test’s accuracy. To compute the score it considers both the recall and the precision. Keywords Information retrieval · Machine learning · Recall · Precision · F-measure
1 Introduction In the present period of progression in Information Technology (IT), in the subfield of Computer Science, Information Retrieval (IR) has risen as an imperative research region that is concerned with finding out the relevant data from the unstructured type of data. The World Wide Web (WWW) is helpful to obtain information which is useful for users. However, clearly, the quantity of web pages keeps on developing. Accordingly, it is getting increasingly more troublesome for users to search relevant data on the WWW. Under these conditions, information retrieval is a standout among the most prevalent techniques for searching for significant data viable. Information S. Solanki (B) · S. Verma · K. Chahar Banasthali Vidyapith, Tonk, Rajasthan, India e-mail: [email protected] S. Verma e-mail: [email protected] K. Chahar e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_3
35
36
S. Solanki et al.
retrieval frameworks give access to accumulations of documents, from which, by giving a proper depiction, the user can retrieve useful information. Normally, users iteratively refine the description they give to fulfill their necessities, and recovery frameworks can use feedback of user on chosen records to demonstrate the accuracy of the depiction at any step. Information that we get from the web portal should be with high recall and high precision and F-measure. Recall means the ability of the system to retrieve all relevant documents. High precision means the ability of the system to retrieve only relevant documents. F-measure is a proportion of a test’s accuracy. To compute the score it considers both the recall and the precision. The process of information retrieval can be divided into four different phases: indexing, comparison, query formulation, and query feedback and these phases provide learning opportunities. In order to improve the performance of information retrieval systems researchers tend to focus on these sub-processes. In artificial intelligence, machine learning gives a framework that automatically learns and enhances the system without being expressly customized. Machine learning centers on the advancement of computer programs that can get information and use it to learn. In order to find out the pattern and take the better decision from data, this is based on the previous history. The main aim of machine learning is to automatically learn the computer without human mediation or help and adjust activities accordingly. Using machine learning in information retrieval, it is required to develop a framework with the capacity to automatically learn and enhance from experience without being expressly programmed. This paper studies and compares some methods using information retrieval using machine learning based on some parameters like recall, precision, accuracy, and so on.
2 Literature Survey Zhang et al. [1] have proposed a novel learning approach in light of Support Vector Machine (SVM). In light of SVM, a classifier can be gained from preparing information of importance pictures and insignificance pictures set apart by users. Cunningham and Summers [2] have used the supervised machine learning algorithm to sort out the problem for developing a subject classification algorithm to design document. Zhang et al. [3] have adumbrated method for data selection using moving virtual boundary and for relevance feedback using Co-SVM algorithm. Wu et al. [4] have used the Bayesian active learning to overcome the problem of gap between low-quality visual features and high-quality semantic features. Rahman and Scurtu [5] have shown exploration of question characterization through machine learning approaches. In this paper, the author has explored different avenues regarding machine learning algorithm [Support Vector Machines (SVM)] utilizing part techniques. A viable approach to incorporate tree structures for inquiry characterization in machine learning algorithm is the utilization of tree kernel (TK) capacities. Member [6] has proposed a novel machine learning-based prefiltering approach of the image with the blend of a measurable closeness coordinating strategy and RF
A Comparative Study of Information Retrieval …
37
plot in a medical picture DB. In prefiltering of the image, author has taken both regulated, furthermore, unsupervised learning ways to deal with supplement each other to consider both semantic and normal association of pictures in a DB. Onoda and Murata [7] proposed an intelligent record recovery technique demonstrating better learning execution than the two traditional techniques and one probabilistic strategy. Hazra et al. [8] have proposed an algorithm to recover the encoded picture from the database alongside pictures of comparative qualities to that of the question picture. Both KNN and SVM algorithms recover the comparable picture from the database. Gopal [9] has proposed automatic documents retrieval based on classifier for precisely recovering significant records. Thus, the framework has to be initially used to perceive those contorted characters and after that report, content order will be finished utilizing supervised machine learning. Shifei et al. [10] examine the way toward Ranking Support Vector Machine (RSVM) from a hypothetical perspective from the regression and classification individually, and sets up the two essential numerical models about RSVM. The general presentation about RSVM in the application, the speed of training, and ability of generalization are additionally given. A probabilistic definition for annotation of semantic image and retrieval of the semantic image has been proposed [11]. Annotation of an image and retrieval of an image are acting like classification issues where each class is characterized as the gathering of database pictures named with a typical semantic label. The CBIR framework [12] goes for looking and browsing the image which is large in size in the digital library that is based on the imagery feature that is derived automatically. This paper has presented two algorithms dependent on the image clustering normalized cut. To compute the distance of the image, the author extracts the texture feature and color of the images. In information retrieval [13], ranking has played a major problem and other content applications. As of late, the ranking strategies dependent on machine learning approaches, called learning how to rank, turn into the concentration for practitioners and professionals. The principal thought of these strategies is to apply different existing and powerful algorithms on machine learning out to ranking. Nonetheless, as a problem of learning, the ranking is not quite the same as other traditional ones, for example, regression and classification. Yu [14] has presented a machine learning technique to automatically retrieve ontology of Chinese linguistics from the ordinary corpus. This examination, first, characterized the portrayal frame of Chinese language learning, and afterward automatically obtained the use of a Chinese word with its co-event of setting in utilizing semantic, syntactic, pragmatics, and so on from the corpus, and last the above data and their portrayal will be about an ontology of Chinese linguistic information bank. The author has finished two gatherings of experiments, i.e., computing of similar document and information retrieval of reordering text. Jing et al. [15] have proposed an entropy-based dynamic learning plan with Support Vector Machines (SVMs) for feedback of CBIR. The fundamental issue in the retrieval of the image during active learning is to how to pick images, so user can label it for the next interaction. As indicated by the information theory, author has proposed a model that is based on entropy for good demand choice. A general model [16] for multimodal data retrieval has been proposed by using the information required by the user’s communicated through multimodal, composite queries, and
38
S. Solanki et al.
the most proper weighted mix of indexing procedures is determined by the approach of machine learning with the end goal to best fulfill the information required. The focus is on enhancing recall and precision in an MMIR framework by optimally joining content and image likeness. Yuan et al. [17] have proposed positive example improved techniques of angle diversity with regards to support vector machine-based CBIRs. It comprehends the positive image shortage issue by including more positive examples into a training set by feedback. Author’s broad tests demonstrate that the proposed strategies enhance the retrieval performance essentially compared with different algorithms. Zmrko [18] has recommended a system for the plan of a versatile information retrieval framework. This model is based on the idea of the probabilistic classification which the author has initially developed for learning in artificial intelligence by example. Weixin and Fuxi [19] have described an approach of machine learning to retrieve the documents. First, the author has extracted the structures of semantics from gather and index documents. Afterward, the author has built an SVM classifier and generates it using pairwise training data. Last, the author has utilized this SVM to compare the importance of documents, indicated by given queries. Croft [20] has been talking about from the beginning of Information Recovery (IR), it was understood that to be viable as far as finding the applicable text, frameworks must be intended to be receptive to singular requirements of points. Relevance Feedback (RF) [21] is an intelligent procedure which has defined how to retrieve the query by using the user’s feedback based on the previous retrieval of results. Yin et al. [21] have proposed an Image Relevance Reinforcement Learning (IRRL) model for merging existing RF techniques in a CBIR. Khalifi et al. [22] have defined an algorithm to discover the relationship between items that provide information, and to find the structure. On a progression of investigations through Yahoo dataset, the proposed framework returned essentially fulfilling outcomes. Quintana [23] has displayed an experimental investigation of clustering by people and machines with the end goal to outline more proficient conceptual search frameworks. SVM classifiers are also used for classification of images in agriculture field [24, 25].
3 Gap Analysis From the exhaustive literature survey carried out for different information retrievals in machine learning, a gap analysis has been done. Table 1 shows a comparative analysis of information retrieval using machine learning approach that is based on some methods and parameters like recall, accuracy, precision, etc.
4 Conclusion Information assets on the WWW keep on developing; it has turned out to be progressively troublesome for the user to retrieve information on the web. For this, search
Context considered
Content-Based Image Retrieval (CBIR)
Information retrieval
Image retrieval
Image retrieval
Information retrieval, information extraction
Medical image retrieval
Document retrieval
Image retrieval
Document retrieval
Learning to rank
Image retrieval
CBIR
Ranking
NLP
Ref no. (Year)
Zhang et al. [1]
Cunningham and Summers [2]
Zhang et al. [3]
Wu et al. [4]
Rahman and Scurtu [5]
Member [6]
Onada and Murata [7]
Hazara et al. [8]
Gopal [9]
Shifei et al. [10]
Camerio et al. [11]
Wang et al. [12]
He et al. [13]
Yu [14]
Table 1 Information retrieval system using machine learning approach
Machine learning approach
Pointwise, pairwise, listwise method
Image clustering
Image annotation and retrieval supervised learning
RSVM
Supervised machine learning
KNN and SVM
SVM to relevance feedback
Statistical distance measure
Machine learning algorithm, Support Vector Machines (SVM)
Bayesian Active Learning (BAL)
Moving Virtual Boundary (MVB)
Supervised machine learning algorithm (C4.5)
Support Vector Machine (SVM) classifier
Method used
(continued)
Recall = 97.14 and precision = 97.14
Compare framework of learning to rank to machine learning problem
Searching accuracy = 95%, Clustering accuracy = 93%
Recall = 0.5 and precision = 0.065
Results on theoretical basis two RSVM methods first classification and second regression model
Character recognition = 94%, document classification = 97%
PSNR value for KNN and SVM = infinite
Learning performance and retrieval performance on SVM = 0.341, 0.293
Recall = 0.25, precision = 0.37
Precision = 99.6%, Recall = 88.89%, Accuracy = 88.89%
Precision = 0.61
Scope = 91%, Accuracy = 70%
Std deviation of training and test set = 1.88, 7.46
Average recall = 0.407, Average precision = 0.234
Result
A Comparative Study of Information Retrieval … 39
Context considered
Image retrieval
Image retrieval
Image retrieval
Information retrieval
Document retrieval
Image retrieval
Document retrieval
Image retrieval
Ref no. (Year)
Jingfing et al. [15]
Pinho and Costa [16]
Yuan et al. [17]
Zmrko [18]
Weixim and Fuxi [19]
Yin et al. [21]
Khalifi et al. [22]
Quintana [23]
Table 1 (continued)
Clustering by people and machines
SVM
Image relevance reinforcement learning model
SVM classifier.
Probabilistic classification
SVM
Picture archiving and communication system
Active learning based on entropy and SVM
Method used
Precision standard deviation = 20
Precision = 98.52%, Recall = 97.74%
Precision = 65%,
Precision = 0.6
Binary status, i.e., yes or no
Precision = 0.5
Multimodal IR for image retrieval
Precision = 0.7
Result
40 S. Solanki et al.
A Comparative Study of Information Retrieval …
41
engine becomes a more popular method for finding out the information. Notwithstanding, users’ needs are not fulfilled with the accuracy of the retrieval that is given by the crawler. The study may underline the following causes: first is that the web pages are not performing the accurate indexing of contents. Second is that most web indexes are not giving query items that fulfill every user’s information requirement. Information retrieval provides a relevant document from semi-unstructured data. Using machine learning in information retrieval, the computer automatically learns data without human mediation. This paper surveys and finds out the gap analysis of several approaches of information retrieval using machine learning in different fields like CBIR, document retrieval, information retrieval, health image information retrieval, and so on. After survey, we can conclude that there will be a need to develop a framework that uses different machine learning algorithms and retrieve information in different fields like CBIR, agriculture, medical, etc. with high recall and high precision.
References 1. Zhang, L., Lin, F., & Zhang, B. (2001). Support vector machine learning for image retrieval, 2, 721–724. 2. Cunningham, S. J., & Summers, B. (1995). Applying machine learning to subject classification and subject description for information retrieval (pp. 243–246). 3. Zhang, X., Cheng, J., & Lu, H. (2007). Weighted co-SVM for image retrieval with MVB strategy (pp. 517–520). 4. Wu, J., Fu, Y., & Lu, M. (2008). Bayesian active learning in relevance feedback for image retrieval. 5. Rahman, M. A., & Scurtu, V. (2008). Performance maximization for question classification by subset tree kernel using support vector machines (pp. 25–27). ICCIT. 6. Member, S. (2007). A framework for medical image retrieval using machine learning and statistical similarity matching techniques with relevance feedback. IEEE Transactions on Information Technology in Biomedicine, 11(1), 58–69. 7. Onoda, T., & Murata, H. (2007). Comparison of learning performance and retrieval performance for support vector machines based relevance feedback document retrieval (pp. 249–252). 8. Hazra, T. K., Chowdhury, S. R., & Chakraborty, A. K. (2016). Encrypted image retrieval system? A machine learning approach. 9. Gopal, S. (2017). Automatic document retrieval using SVM machine learning (pp. 896–901). 10. Shi-fei, D., Xiao-liang, L. I. U., & Li-wen, Z. (2010) Research on ranking support vector machine and prospects (Vol. 0, No. 9, pp. 2829–2831). 11. Carneiro, G., Chan, A. B., Moreno, P. J., & Vasconcelos, N. (2007). Supervised learning of semantic classes for image annotation and retrieval. 29(3), 394–410. 12. Wang, S., Wang, J. U. N., Wang, B., & Wang, X. (2009). Study on the content-based image retrieval system by unsupervised learning (pp. 12–15). 13. He, C., Wang, C., Zhong, Y., & Li, R. (2008). A survey on learning to rank (pp. 12–15). 14. Yu, F. (2005). Machine learning for automatic acquisition of chinese linguistic ontology knowledge (pp. 18–21). 15. Jing, F., Li, M., et al. (2004). Entropy-based active learning with support vector machines for content-based image retrieval (pp. 85–88). 16. Pinho, E., & Costa, C. (2016). Extensible architecture for multimodal information retrieval in medical imaging archives. In 12th International Conference on Signal-Image Technology Internet-Based System (pp. 316–322).
42
S. Solanki et al.
17. Yuan, et al. (2007). Positive sample enhanced angle-diversity active learning for SVM based image retrieval. In Department of Computing and Information Technology, Fudan University, China Department of Computing Science and Engineering, University of North Carolina at Chapel Hill’ (pp. 2202–2205). 18. Zmrko, W. (1986). A machine learning approach to information retrieval (pp. 228–233). 19. Weixin, T., & Fuxi, Z. (2009). Learning to rank using semantic features in document retrieval (pp. 500–504). 20. Croft, W. B. (1995). Machine learning and information retrieval (p. 587). Morgan Kaufmann Publishers. 21. Yin, P., Bhanu, B., Chang, K., & Dong, A. (2005). Integrating relevance feedback techniques for image retrieval using reinforcement learning (Vol. 27, No. 10, pp. 1536–1551). 22. Khalifi, H., Elqadi, A., & Ghanou, Y. (2018). Support vector machines for a new hybrid information retrieval system. Procedia Computer Science, 127, 139–145. 23. Quintana, Y. (1997). Cognitive approaches to intelligent information retrieval. 24. Kumar, S., Sharma, B., Sharma, V. K., & Poonia, R. C. (2018). Automated soil prediction using bag-of-features and chaotic spider monkey optimization algorithm. Evolutionary Intelligence, 1–12. 25. Kumar, S., Sharma, B., Sharma, V. K., Sharma, H., & Bansal, J. C. (2018). Plant leaf disease identification using exponential spider monkey optimization. Sustainable Computing: Informatics and Systems.
Adaptive Background Subtraction Using Manual Approach for Static Images Manoj K. Sabnis and Kavita
Abstract Background subtraction is considered as one of the preprocessing stage in case of applications related to foreground for dynamic images where the background is removed completely. But if static images are considered, then background subtraction cannot be done in the same manner as in dynamic images as there is no frame difference. Taking the advantage of this, it is proposed to remove the background fully or selectively as per the requirement. This is called as adaptive background as the algorithm adapts to the method used for the selection of the background. The first method proposed is manual, where the required background is selected manually and the success of this depends on the accuracy with which the user can select the background region. Going one step ahead, the next method suggested is the improvement over the first where the region to remove. This region is selected automatically by using seed point technique. The advantage of these techniques for static images is that any region considered as background can be removed as per the need of the user. Keywords Tracking · Shadow detection · Geometry · Shadow regions · Angle of orientation
1 Introduction Image acquisition, image processing and computer vision together form a system which can be used for many image processing applications [1]. To reduce the computational process, the image is first divided into foreground and background. Foreground usually consists of objects in general which have changes with respect to their colours and edges [2]. The plain continuous region of same M. K. Sabnis (B) IT Department, VESIT, Chembur, Mumbai, Maharashtra, India e-mail: [email protected] Kavita Department of Computer Science, JVWU, Jaipur, Rajasthan, India e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_4
43
44
M. K. Sabnis and Kavitha
colour in the image is then considered as the background. Background subtraction is now used so as only the foreground is left for processing. Within the foreground, there are a number of objects of which some are the objects of interest which require to be processed. The remaining ones if processed increase the computational load [3]. Defining the remaining objects as background, this research work presents various methods by which these background areas can be removed. This second level of background which is selective as per the user is called as selective background. As per static images, with no background removal techniques, the proposed selective background can be removed which can also include the normal background. This background can thus be selected using different methods, viz., manual and automatic. This selection and then its removal are thus rightly called as selective background subtraction. The paper is organized as follows. The software system design approach is used to represent the system. Then the methods and the algorithms used to develop these methods are presented. The results so obtained are then evaluated both by quantitative and qualitative approaches. The findings are then concluded and its future scope suggested.
2 System Design Approach The research work carried out is represented in this paper in the form of a workable model which is the system design approach. In this, the background subtraction which being a small module of the preprocessing stage of any design application is itself presented as a system as a whole as shown in Fig. 1 and named as selective background subtraction system. The first stage, the input stage acts as the image acquisition module. This accepts the input data which is the secondary data type. Here, the test images are selected so as to be adaptable to the algorithm to be developed so that it can demonstrate as accurate results as possible. The images selected as input are RGB and HSV type [4, 5].
Fig. 1 Selective background subtraction system
Adaptive Background Subtraction Using Manual Approach …
45
The second stage is the preprocessing stage where the images are subjected to its enhancement and noise removal as per the requirements. Noise removal is usually done by morphological operations [6]. This is followed by the processing stage, which on basis of four methods presents the algorithm for the same. The possible ways of selective background subtraction are covered within these four methods and which method to be selected mainly depends on the user’s choice as the selection of which can give most accurate results. The next stage is the evaluation stage where the output images are evaluated for its results. The acceptance of the results depends on two types of evaluations, the quantitative and qualitative. The quantitative gives a percentage value of accuracy whereas the qualitative evaluation, with a set of metrics, defines the satisfaction level which can be accepted by the user. Finally, the output stage consists of all outputs that are displayed for further reference.
3 Methods Basically, there are two methods, manual and automatic. The manual is further classified as fine or coarse. In case of fine, the user places the cursor on the region and traverses the region to be removed. The accuracy of this method depends as how well the user is able to traverse adhering to the line on the edges. This method can be used wherever the region boundaries are not straight. In the coarse method, if the region is of horizontal or vertical lines, then only the edge points are to be specified and the area formed within these point’s joints is removed. Similarly, in case of automatic, the region has to be a close region and only a seed point has to be selected within this region. In case of both manual and automatic, there is a facility of single region or multiple region selection.
4 Algorithms Most of the work presented by Najjar et al. (2009), Shaik et al. (2010), Pal et al. (2010), Zhipeng et al. (2011), Intachak et al. (2011), Chen et al. (2012), Jenifa et al. (2012), Zhang et al. (2012), Guo et al. (2012), Imarn et al. (2013), Anandhalli et al. (2015), Chang et al. (2016), Lee et al. (2016) are examined on background subtraction [7–19]. It was then concluded that the algorithm has to be presented in form of four major steps, the preprocessing, background modelling, foreground detection, and finally the data validation. With reference to the above literature survey, this research work then proposed two algorithms for selective background subtraction as one for fine and coarse and second for automatic. In case of fine and coarse, the difference is only at the start when the regions are selected, i.e. in fine, region selection is by hand-drawn lines and
46
M. K. Sabnis and Kavitha
in coarse, the region selection is by edge end points. The automatic method algorithm development depends on the selection of seed point in the region of interest.
5 Proposed Algorithm for Manual Selection The manual selection is represented by three methods, coarse, fine and coarse plus fine. For all the three methods, a single algorithm is presented with change only in the method of selection of the region of interest. The steps for the algorithm are as follows: 5.1 Input: Three types of images are used for input: RGB, greyscale and HSV. The RGB used gives limited range of linearity. To increase the linearity range, HSV images are used [20, 21]. The greyscale images are used for intensity variation measurements. Of each image type, a pair of images is required for the method where the first image is with foreground and background and the other image is only with the background to be removed. As for preprocessing of the images for noise removal, median filter is used. 5.2 Region of Interest: Three different methods used for selecting the region of interest are coarse, fine and combination of both. In case of coarse method, roipoly function is used to specify the polygon region of interest. The function used for this creates an interactive polygon tool which blocks the MATLAB command line until the operation of region selection is not complete. The roipoly function then returns a binary mask with pixels within ROI as set to logic one and those outside it as logic zero [22]. In case of fine method, the region of interest is selected by using imfreehand function. This enables dragging free-handedly, the interactive the mouse so as to form the region of interest [23]. The third method being the combination of both, that is, coarse and fine, adds the advantage of both so as to give better results. 5.3 Mask Formation: The image with marked region of interest is then used to form the mask where the pixels within the region are set to one and pixels outside the regions are set to zero. Now the image mask is inverted. The binary image and the mask is convoluted. The region of interest is available as logic zero and the remaining part of the image is represented as it is. 5.4 Output Image: The boundaries of the region of interest are tapped for their coordinates. The required background colour is extracted from the background by nearest neighbour method and the region of interest is filled with it to give selective background removed image.
Adaptive Background Subtraction Using Manual Approach …
47
6 Proposed Algorithm for Automatic Region Selection In this, all the steps are same. The difference is only in the process of selection of the background region. The input image is first digitized and then labelled by region forming. Then the number of the region to be selected for removal is specified. In this, even multiple regions can be removed. Then by using neighbouring pixel method, the neighbouring background pixel colour is filled in this region.
7 Results Background subtraction is done for reference. From Fig. 2a, named as the first image is the input RGB image. To increase its linearity and to include the hue and intensity component, RGB is converted to HSV. This is represented in Fig. 2b named as second image. Figure 2c named as the third image is the total background subtracted image. This research work first represents the results of greyscale and RGB for single region selection and the same is then represented for multiple region selection. Figure 3a named as Image 1 is the input image. Figure 3b named as Image 2 is its greyscale conversion. The blue coloured marked region is the region to be removed
Fig. 2 a First image; b second image; c third image
Fig. 3 a Image 1; b Image 2; c Image 3; d Image 4
48
M. K. Sabnis and Kavitha
Fig. 4 a Image 1; b Image 2; c Image 3; d Image 4
as the selected background with respect to the objects in the foreground. Figure 3c named as Image 3 is the binary image with the selected background. Finally, Fig. 3d named as Image 4 is the output image where the selected background is replaced with the background colour. Figure 4a named as Image 1 is the RGB input image. Figure 4b named as Image 2 is the HSV converted RGB image. Figure 4c named as Image 3 shows the selective background in the foreground and rest in the background masked. Figure 4d named as Image 4 is the output image with the selected background having the colour of the background. Figure 5a named as Image 1 represents the input of selective algorithm where only a single region is selected. Figure 5b named as Image 2 is the input RGB and that on the left, i.e. Fig. 5c named as Image 3 is its HSV equivalent. Now by region labelling the required region labelled is input. The output is as represented in the right side, i.e. Fig. 5d and named as Image 4, where on its one region to be merged with the background is selected. The image on the extreme right, i.e. Fig. 5d named as Image 4 shows the output with the selected region merged with the background. Figure 6a named as Image 1 is the RGB input image. Figure 6b named as Image 2 is the greyscale equivalent of it. This image is then marked. The marked regions are seen in the right side image, i.e. Fig. 6c and named as Image 3. The extreme right, i.e. Fig. 6d and named as Image 4 is the multiple region removed image.
Fig. 5 a Image 1; b Image 2; c Image 3; d Image 4
Adaptive Background Subtraction Using Manual Approach …
49
Fig. 6 a Image 1; b Image 2; c Image 3; d Image 4
Fig. 7 a Image 1; b Image 2; c Image 3; d Image 4
Figure 7a named as Image 1 is the RGB image. This is then converted as the HSV image as represented in Fig. 7b named as Image 2. In this image, multiple regions are marked. Figure 7c named as Image 3 has the selected background. Figure 7d named as Image 4 is the output image with selective background removal. Figure 8a named as Image 1 is the input image. Figure 8b named as Image 2 is the HSV image. From this image, by their number, multiple regions are selected. The selected regions are represented in binary in Fig. 8c named as Image 3. Figure 8d image named as Image 4 is the selected region removed output image.
Fig. 8 a Image 1; b Image 2; c Image 3; d Image 4
50
M. K. Sabnis and Kavitha
8 Evaluation The results so obtained have to be authenticated for its acceptance. For this, they have to be evaluated at quantitative level. Large number of metric of measurement is available at this level out of which a few mappings very closely to this work are selected. The metrics selected are percentage of correct classification (PCC), false alarm rate (FAR) and speed, where [24] PCC = (TP + TN)/(TP + TN + FP + FN).
(1)
This is same as total accuracy which indicates the amount of true background pixels and true foreground pixels from the image or region defined. Similarly, where FAR = FN/(TP + FN).
(2)
This is specified as precision in classification theory. The third term which is measured is the speed with which the algorithm is processed. The results obtained of the quantitative analysis are available in Table 1 named as quantitative evaluation. The numerical values of percentage of correct classification and false alarm rate can be on the positive required side but still it may so happen that the output is not as per the satisfaction of the user. Thus, user’s satisfaction also plays an important role in evaluation. This type of evaluation is called as the qualitative evaluation. A large number of metrics are available of which those are selected which are more related to the application. In this case, the metrics selected are robustness to noise, object independence, computational cost, chromatic ROI, camouflage ROI and surface topology ROI [25]. These terms are now quantized by giving them numerical values. The values are 5: very poor, 4: poor, 3: average, 2: good and 1: very good. The values assigned to the metrics totally depend on the acceptance of the user. The interfaces between the numeric values and the metrics are AVM and RVM, i.e. absolute value measure and relative value measure. AVM is the nearest of the metrics to the output and RVM is the nearest of the metrics within the group related to the output [26]. Referring to Table 2, named as qualitative evaluation, robustness to noise is the behaviour of the selected region to variations. This is high as only the marked smooth Table 1 Quantitative evaluation Single selection
Speed (s)
Multiple selection
Speed (s)
PCC (%)
FAR (%)
PCC (%)
FAR (%)
Greyscale
99.29
0.71
0.27
99.39
0.61
0.17
HSV
99.89
0.16
0.17
99.86
0.14
0.18
Automatic
98.10
0.15
0.23
98.00
0.15
0.16
Adaptive Background Subtraction Using Manual Approach … Table 2 Qualitative evaluation
51
Sr no
Metrics used
AVM
RVM
1
Robustness to noise
2
2
2
Object independence
3
3
3
Computational load
2
2
4
Chromatic ROI
3
3
5
Camouflage ROI
3
3
region is processed and not the variation within the region. Thus, AVM is on the higher side. Within the group also this metrics is most required. Object independence is taken on the lower side as the processing is limited only to the marked area and not related to the object. Computational load is related to the speed of processing. This value is on the higher side as the processing is only region based. Chromatic ROI is related to the colour of the region. This is on the lower side as the processing is edge based and not colour based. Camouflage ROI is related to the attached shadows and attached objects with the region of interest. This is rated low as the region is drawn by the user as per his need which is irrespective of region attached or below. Surface topology ROI can be plain or textured but having nothing to do with the region drawing, and thus this metrics is also on the lower side.
9 Conclusion The idea put forward of selective background subtraction was successfully implemented. All the aspects of this are tried to be covered, i.e. starting with course, fine and then automatic. The results available by these methods are also evaluated both quantitatively and qualitatively which shows the inclination towards accuracy and user satisfaction, respectively.
10 Future Scope The future work can be a single system having all the three methods of selective background subtraction. The adaptive feature can be introduced which will select the most suitable method as per the criteria defined. The criteria of test accurately selected, more accurate can be the results.
52
M. K. Sabnis and Kavitha
References 1. https://www.codeproject.com/Articles/16105/A-Practical-Approach-to-Computer-SystemsDesign-an-practical-approach 2. Utpal, G., Paquet, T., & Heutte, T. (2005). On foreground-background separation in low quality color document images. ICDAR-05, 31 August–1 Sept. ISBN: 0-7695-2420-6. 3. Sobrai, A., & Anotoine, V. (2014). A comprehensive review of background subtraction algorithms evaluated with synthetic and real videos. Computer Vision and Image Understanding, 122, 4–21. 4. Jyothirmai, M. S. V, Srinivas, K., & Rao, V. S. (2012). Enhancing shadow area using RGB colour space. IOSR Journal of Computer Engineering, 2(1), 24–28. ISSN: 2278-0661. 5. Liu, H., Yang, C., Shu, X., & Wang, Q. (2009). A new method of shadow detection based on edge information and hsv colour information. In 2nd International Conference on power electronics and Intelligent transport systems (pp. 286–289). IEEE: 978-1-4244-4543-1. 6. Gil, J., & Kimmel, R. (2010). Efficient dilation erosion opening and closing algorithm. IEEE Transaction and Pattern ANALYSIS and Machine Intelligence, 12(25). 7. Najjar, M. A., Ghosh, S., & Bayoumi, M. (2009). A hybrid adaptive scheme based on selective gaussian modeling for real-time object detection. In IEEE, 2009. 8. Shaik Mohamed, S., Tahir, N., & Adnan, R. (2010). Background modelling and background subtraction performance for object detection. In 6th International Colloquium on Signal Processing & Its Applications (CSPA). 9. Pal, A., Schaefer, G., & Celebi, M. E. (2010). Robust Codebook-based Video Background Subtraction. In IEEE. 10. Hu, Z., Wang, Y., Tian, Y., & Huang, T. (2011). Selective Eigen background method for background subtraction in crowded scenes. In 18th IEEE International Conference on Image Processing. 11. Intachak, T., & Kaewapichai, W. (2011). Real-time illumination feedback system for adaptive background subtraction working in traffic video monitoring. In International Symposium on Intelligent Signal Processing and Communication Systems (ISPACS), 7–9 Dec. 12. Chen, S., Zhang, J., Li, Y., & Zhang, J. (2012). A hierarchical model incorporating segmented regions and pixel descriptors for video background subtraction. IEEE Transactions on Industrial Informatics, 8. 13. Jenifa, R. A. T., Akila, C., & Kavitha, V. (2012). rapid background subtraction from video sequences. In International Conference on Computing, Electronics and Electrical Technologies [ICCEET]. IEEE. 14. Wu, K., & Zhang, H. (2012) A vehicle detection algorithm based on three-frame differencing and background subtraction. Fifth International Symposium on Computational Intelligence and Design in IEEE (p. 10). 15. Guo, J.-M., Hsia, C., Shih, M., Liu, Y., & Wu, J. (2012). High speed multi-layer background subtraction. In IEEE International Symposium on Intelligent Signal Processing and Communication Systems, 4–7 Nov. 16. Imran, M., Ahmad, N., Khursheed, K., Nils, M., & Lawal, N. (2013). Low complexity background subtraction for wireless vision sensor node. In 16th Euromicro Conference on Digital System Design in IEEE. 17. Anandhalli, M., & Anandhalli, M. (2015). Improvised approach using background subtraction for vehicle detection. In IEEE International Advance Computing Conference (IACC). 18. Chang, K. C., Liu, P. K., & Wang, Y. S. (2016). Parallel design of background subtraction and template matching modules for image objects tracking system. In Computer Symposium in IEEE. 19. Lee, H., Kim, H. S., & Kim, J. (2016). Background subtraction using background sets with image and color space reduction. In IEEE Transaction on Multimedia. 20. https://edoras.sdsu.edu/doc/matlab/toolbox/images/intro8.html. 21. https://in.mathworks.com/help/matlab/ref/rgb2hsv.html.
Adaptive Background Subtraction Using Manual Approach …
53
22. https://in.mathworks.com/help/search.html?qdoc=roipoly+function&s_tid=doc. 23. https://in.mathworks.com/help/search.html?submitsearch=&qdoc=imfreehand. 24. Rosin, P. L., Ellis, T. (2010). Image difference threshold strategies and shadow detection. Institute of remote sensing applications, Joint Research Center, Italy. 25. Mutiara, A. B., Refianti, R., & Kamu, M. C. (2005). Qualitative evaluation of quantum enhancement for edge detection of medical images. Journal of Theoretical and Applied Information Technology, 72(3). ISSN: 1992-8645. 26. Avcıbas, I., & Bu¨lentSankurBog˘azic, U., & Sayood, S. (2004). Statistical Evaluation of Image Quality Measures. 11(2), 206–223.
TweetsDaily: Categorised News from Twitter Divya Gupta, Aditi Sharma and Mukesh Kumar
Abstract Today lives of people have become so strenuous and hectic that they are least bothered about getting updated with the latest news. Presently, there are various sources of news ranging from newspaper to various news mobile applications. In case of newspaper, we have to read long articles and regarding news applications, we have to search for the ones which provide us credible and relevant news everyday which is also a very time-consuming task. To address this problem, a web application ‘TweetsDaily’ which fetches news in the form of tweets of two domains—Indian and Global which are posted by various news channels on their respective Twitter user timelines. The tweets of each domain are further classified into five categories, namely, Politics, Sports, Entertainment, Technology, and Miscellaneous (news related to dayto-day crimes, stocks and investment, communal disputes, terror attacks, etc.) In this paper, we represent a method for the classification of tweets in five categories of each domain. The method is a text-based classification technique based on ensemble model of different classification algorithms. Keywords Twitter · Ensemble · Multiclass classification
1 Introduction We live in a world which is progressing each day and reaching new heights in technology and other domains. People are so busy in their work and other activities that they seldom have time on hand to keep track of the happenings around them. Twitter is a social media tool which keeps people aware of the events occurring that affect their lives in some way. It has integrated into the lives of people so well that most of D. Gupta (B) · A. Sharma · M. Kumar (B) UIET, PU CHD, Chandigarh 160014, India e-mail: [email protected] M. Kumar e-mail: [email protected] A. Sharma e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_5
55
56
D. Gupta et al.
its functions are performed on the go. People called ‘users’ track the current news or express their opinions about any topic through ‘tweets’—small messages of a fixed maximum length. At this time, Twitter gets an average 335 million monthly users. Twitter can be accessed from anywhere by web or by its mobile application. Twitter user’s tweet several times a day and the most tweeted topic becomes ‘trending’ topic. This shows which topics influence the lives of people more than other topics. ‘Hashtags’—small tags denoting the context of tweets form independent search terms. The tweets due to being small in length express an idea easily and people too find it easy to read them. A tweet can also contain links to other materials on the web such as articles, images and videos to list a few which gives some more information about the context of tweet. Users follow users as well as have other users as followers. Most of the celebrities, politicians and other people in limelight have large number of followers. A certain tweet can also be retweeted by other users. Each user has a ‘timeline’ which displays the latest tweets of interest of a user. Thus, Twitter is an excellent source of latest happenings [1, 2] and the application—‘TweetsDaily’ uses this capability of Twitter. The system fetches the top news from Twitter and presents them according to the category they belong to—Politics, Sports, Entertainment, Technology, and Miscellaneous (news related to day-to-day crimes, stocks and investment, communal disputes, terror attacks, etc.) and the domain they belong to—Indian and Global. The users who provide these news are the news channels which tweet the latest headlines along with a link to the detailed information piece. In our system, we have used a text-based classification technique based on ensemble model of five classification algorithms: Multinomial Naïve Bayes Classifier [3], Bernoulli Naïve Bayes Classifier [4], Logistic Regression-based Classifier [5], Stochastic Gradient Descent Classifier [6], and Linear Support Vector Machine Classifier [7].
2 Related Work A lot of research has been carried out in the field of sentiment analysis of tweets (short text messages posted on twitter). Some have been performed using standalone classification algorithms. Go et al. [8] presented the distant supervision method to classify a tweet as positive or negative on the basis of the emotions present in the tweet. Pang et al. [9] emphasised on classification of movie reviews as positive and negative by employing different machine learning methods and using different kinds of features (e.g. unigrams, unigrams + bigrams, etc.) with these methods. These works are based on sentiment analysis using stand-alone classification algorithms. Some works are also based on combining several classifier algorithms for sentiment analysis. Da Silva et al. [10] introduced an approach for automatic classification of sentiment of tweets by using classifier ensembles and lexicons. Wan and Gao [11]
TweetsDaily: Categorised News from Twitter
57
proposed an ensemble sentiment classification strategy based on majority vote principle of multiple classification methods and compared the six individual classification algorithms with the proposed ensemble approach. Sankaranarayanan et al. [12] presented a news processing system, called Twitterstand which differentiate news tweets from non-news tweets and online clustering technique was used to combine similar tweets in one category. Tweets were not sent according to a schedule, rather occurred automatically while the news was live. In this paper, the proposed approach fetches news on demand as generally significant events seldom occur continuously or in one go. Whereas all the previous works have addressed binary classification problems, we have classified tweets from various news channel twitter handles into three different categories using ensemble of classifier models methods. Numerous papers have also addressed the multiclass classification of tweets. Sriram et al. [13] proposed a methodology to classify tweets into a set of general classes, namely, news, events, opinions, deals and private messages considering eight features of tweet text (author information, presence of slang words, time-event phrases, opinioned words, emphasis on words, currency and percentage, ‘@username’ at the beginning of the tweet and the ‘@username’ within the tweet). Genc et al. [14] suggested a Wikipedia-based tweet classification technique in which messages (tweets) were mapped onto their most similar Wikipedia pages and the distances between the tweets. Kinsella et al. [15] introduced a method that considers the use of meta-data from external hyperlinks along with the social media posts’ content for topic classification of social media posts. Mohanavalli et al. [16] proposed ensemble method for categorisation of tweets and presented a comparative study of performance metrics of Naïve Bayes, SVM and Liblinear algorithms. Munjal et al. [17–19] also worked on twitter sentiment analysis and opinion dynamics for social media using some natural phenomenon. Above-mentioned works have either considered features which are focused on one class or considered meta-information from information sources other than social media posts’ content for the classification task. In the proposed approach, three parts of speech have been taken into consideration, i.e. nouns, verbs and adverbs as features to classify the categories of tweets which can also be considered as a human measure for deciding the category of tweets.
3 Proposed Work The proposed work of classification involves six phases as shown in Fig. 1. (i) Data collection, (ii) Labelling, (iii) Feature extraction, (iv) Building feature sets, (v) Training of Individual Classifiers and (vi) Combining trained classifiers to form Ensemble Classifier. All the above six phases were used in developing two Ensemble Classifiers—one to classify Indian news tweets into five categories and other to classify
58
D. Gupta et al.
Fig. 1 Six phases of classification system
Fig. 2 Homepage of the web application
Global news tweets into five categories. Using the proposed classification procedure a web application is developed whose user interface is shown in Figs. 2 and 3.
3.1 Data Collection This phase consists of collection of tweets’ text from the Twitter using Tweepy API and the preprocessing of the text which includes removal of symbols such as #, @, & and hyperlinks from that text. After preprocessing, text strings are collected and
TweetsDaily: Categorised News from Twitter
59
Fig. 3 Screenshot of the application showing Indian Politics news
Table 1 Size of each category’s document for Indian domain
Category
No. of tweet texts in document
Politics (Indian)
2000
Sports (Indian)
2000
Entertainment (Indian)
2000
Technology (Indian)
2000
Miscellaneous (Indian)
2000
are manually separated into five categories for each domain as in Tables 1 and 2. Separate text document of each category for each domain was prepared. Table 2 Size of each category’s document for Global domain
Category
No. of tweet texts in document
Politics (Global)
2000
Sports (Global)
2000
Entertainment (Global)
2000
Technology (Global)
2000
Miscellaneous (Global)
2000
60 Table 3 Label assigned to each category’s news tweets
D. Gupta et al. Category’s document
Label assigned
Political news
Politics
Sports news
Sports
Entertainment news
Entertainment
Technology news
Tech
Miscellaneous news
Misc
3.2 Labelling For the training of Individual Classifiers for the classification task of each domain, the tweet in the form of the text string for each category’s document is labelled with the category labels shown in Table 3 and each tweet text string along with its label is also stored in the form of list.
3.3 Feature Extraction After labelling of the documents, the three parts of speech (Nouns, Verbs and Adverbs) from each tweet text of each category’s document are extracted and stored in the form of an unordered list. Then the frequency distribution of that unordered list is performed and the top 1000 most occurring nouns, verbs and adverbs are stored as the features of each category.
3.4 Building Feature Sets In this phase, the feature sets are build using the text strings along with their categories stored in DocList during feature extraction phase. Three-fourth part of the feature sets has been used as training set and one-fourth part of the feature sets has been used as the testing set.
3.5 Training of Individual Classifiers In this phase, the training set generated is used to train the Individual Classifiers (Multinomial Naïve Bayes, Bernoulli Naïve Bayes, Logistic Regression, Stochastic Gradient Descent and Linear Support Vector). After training of these Individual Classifiers, Ensemble Classifier is built in the last phase of the classification.
TweetsDaily: Categorised News from Twitter
61
3.6 Combining Trained Classifiers to Form an Ensemble Classifier In this step, the trained classifiers are then combined on the basis of Majority Voting Principle. The tweet text after preprocessing is passed to the Ensemble Classifier in which each tweet is classified by its member classifiers and the label is assigned by majority of the member classifiers.
4 User Interface The application user interface is composed of various domains and categories. The main page consists of two options, namely, Indian and Global. Clicking on Indian or Global as a domain leads to a ‘subpage’ that displays the top 50 news tweets from the categories, namely, Political, Entertainment, Sports, Technology and Miscellaneous. The subpages have further bifurcation into the above categories whose subpages are accessed by clicking on the buttons provided. Each subpage has buttons for accessing pages pertaining to the categories of Political, Entertainment, Sports, Technology and Miscellaneous. A Home button is also available on each subpage which accesses the main page. On the top of the display window, the buttons to access the news pertaining to domains Indian and Global are also provided (Table 4). Each news tweet is displayed in the form of a card which is divided into three portions. The top portion consists of an image relevant to the category the tweet refers to. The middle portion consists of the tweet text. The lower portion consists of a link ‘Learn More’ which gives further information about the news tweet. The cards when hovered over pops out for better reading effects.
5 Experiments and Results The proposed classification system has been implemented using Python programming language and Natural Language Tool Kit (NLTK) functionalities [20]. Using Python and NLTK, two Ensemble Classifiers: Indian News Ensemble Classifier (which classifies Indian News into five categories) and Global News Ensemble Classifier (which classifies Global News into five categories) have been built.
62
D. Gupta et al.
Table 4 Size of each category’s document for Global domain Buttons
Information it gives Indian news pertaining to the categories of Political, Entertainment, Sports, Technology and Miscellaneous Global news pertaining to the categories of Political, Entertainment, Sports, Technology and Miscellaneous
Indian
Indian news pertaining to the category of Politics
Indian news pertaining to the category of Sports
Indian news pertaining to the category of Entertainment
Indian news pertaining to the category of Technology Indian news containing news about miscellaneous events excluding the categories of events mentioned above Global
Global news pertaining to the category of Politics
Global news pertaining to the category of Sports
Global news pertaining to the category of Entertainment
Global news pertaining to the category of Technology Global news containing news about miscellaneous events excluding the categories of events mentioned above
5.1 Testing of Indian News Ensemble Classifier Test dataset consists of 1500 tweets (300 tweets of each category) regarding news of Indian Domain. Using this test dataset, Indian News Ensemble Classifier is tested. The confusion matrix regarding the testing process is shown in Table 5. Accuracy of the Indian News Ensemble Classifier = 79.32%. Comparison of performance metrics of Individual Classifiers and Ensemble Classifier is shown using the graph shown in Fig. 4. It can be interpreted from Fig. 4 that even the BNB_Classifier is having least performance metrics values among all the five classifiers, but experimenting with
TweetsDaily: Categorised News from Twitter
63
Table 5 Confusion matrix of regarding testing process of Indian news Ensemble Classifier Entertainment Entertainment
Technology
Politics
Sports
31
1
25
183
71
3
34
0
281
8
11
1
1
47
251
3
21
1
41
3
234
244
0
Technology
9
Miscellaneous
0
Politics Sports
Miscellaneous
Fig. 4 Comparison of performance metrics of Individual Classifiers with Ensemble Classifier
the combination of all the five classifiers on the test data give accuracy score of 79.32% slightly greater than highest accuracy score (79.25% of SGD_Classifier), precision score of 83.58% slightly greater than highest precision score (83.27% of LR_Classifier) and recall score of 79.31% slightly greater than highest recall score (79.24% of SGD_Classifier). From Fig. 5, it can be interpreted that experimentation with the combination of all the five classifiers on the test data improves the F1-macro score value of the classification task which was lowest for BNB_classifier and highest for SGD_Classifier. 1 F1-macro score for Indian News Ensemble Classifier is 0.797.
5.2 Testing of Global News Ensemble Classifier Test dataset consists of 1500 tweets (300 tweets of each category) regarding news of Global Domain. Using this test dataset, Global News Ensemble Classifier is tested. The confusion matrix regarding the testing process is shown in Table 6. Accuracy of the Global News Ensemble Classifier = 79.13% It can be interpreted from Fig. 6 that even the BNB_Classifier is having least performance metrics values among all the five classifiers, but experimenting with
64
D. Gupta et al.
Fig. 5 Comparison of F1-macro score of Individual Classifiers and Ensemble Classifier Table 6 Confusion matrix of regarding testing process of global news Ensemble Classifier Entertainment Entertainment
Technology
Miscellaneous
Politics
Sports 65
185
3
42
5
Technology
7
186
42
0
70
Miscellaneous
3
4
254
11
28
Politics
0
0
8
284
8
Sports
5
1
10
2
282
Fig. 6 Comparison of performance metrics of Individual Classifiers with Ensemble Classifier
TweetsDaily: Categorised News from Twitter
65
Fig. 7 Comparison of F1-macro score of Individual Classifiers and Ensemble Classifier
the combination of all the five classifiers on the test data give accuracy score of 79.13% slightly greater than highest accuracy score (78.6% of MNB_Classifier), precision score of 83.2% slightly greater than highest precision score (82.04% of LR_Classifier) and recall score of 79.19% slightly greater than highest recall score1 (78.64% of MNB_Classifier). From Fig. 7, it can be interpreted that experimentation with the combination of all the five classifiers on the test data improves the F1-macro score value of the classification task which was lowest for BNB_classifier and highest for MNB_Classifier. 1 F1-macro score for Global News Ensemble Classifier is 0.79.
6 Conclusion and Future Work The paper proposed a method of using Twitter as news resource and categorising the news tweets into five different categories (Politics, Sports, Entertainment, Technology and Miscellaneous) using ensemble classification approach for Indian and Global domains. The projected system is somewhat able to give credible information without the use of multiple news applications and newspapers in shorter span of time, and it classifies a news tweet belonging to the Indian domain with an accuracy of 79.32% and a news tweet belonging to Global domain is classified with an accuracy of 79.13%. F1-macro scores of Ensemble Classifier for Indian and Global domains are 0.797 and 0.79, respectively. The proposed method can be further extended in terms of experimenting Ensemble methods with different other classification algorithms
1 Gretel
Liz De la Peña Sarracén [21] proposed a system based on an ensemble of five classifiers for IberEval2017 on Classification Of Spanish Election Tweets (COSET) task. F1-macro value for ensemble approach of the system is 0.5847, whereas F1-macro value for our Indian News Ensemble Classifier is 0.797.
66
D. Gupta et al.
which could lead to increase in performance in terms of accuracy and F1-macro score.
References 1. Kwak, H., Lee, C., Park, H., & Moon, S. (2010, April). What is Twitter, a social network or a news media? In Proceedings of the 19th International Conference on World Wide Web (pp. 591–600). ACM. 2. Ritholdz, B. (2013). Twitter is becoming the first and quickest source of investment news. Retrieved July 15, 2018, from https://www.theguardian.com/technology/2013/apr/23/twitterfirst-source-investment-news. 3. Manning, C., Raghavan, P., & Schütze, H. (2010). Introduction to information retrieval. Natural Language Engineering, 16(1), 258–262. 4. Manning, C., Raghavan, P., & Schütze, H. (2010). Introduction to information retrieval. Natural Language Engineering, 16(1), 263–270. 5. Wright, R. E. (1995). Logistic regression. 6. Ng, A., Ngiam, J., Foo, C. Y., Mai, Y., Suen, C., Coates, A., et al. (2018). Optimization: Stochastic gradient descent. Retrieved July 15, 2018, from http://ufldl.stanford.edu/tutorial/ supervised/OptimizationStochasticGradientDescent. 7. Huang, T. M., Kecman, V., & Kopriva, I. (2006). Kernel based algorithms for mining huge data sets (Vol. 1). Heidelberg: Springer. 8. Go, A., Bhayani, R., & Huang, L. (2009). Twitter sentiment classification using distant supervision. CS224 N Project Report, Stanford (Vol. 1, No. 12, p. 2009). 9. Pang, B., Lee, L., Vaithyanathan, S. (2002). Thumbs up?: Sentiment classification using machine learning techniques. In Proceedings of the ACL-02 Conference on Empirical Methods in Natural Language Processing (Vol. 10, pp. 79–86). Association for Computational Linguistics. 10. Da Silva, N. F., Hruschka, E. R., & Hruschka, E. R., Jr. (2014). Tweet sentiment analysis with classifier ensembles. Decision Support Systems, 66, 170–179. 11. Wan, Y., & Gao, Q. (2015, November). An ensemble sentiment classification system of twitter data for airline services analysis. In 2015 IEEE International Conference on Data Mining Workshop (ICDMW) (pp. 1318–1325). IEEE. 12. Sankaranarayanan, J., Samet, H., Teitler, B. E., Lieberman, M. D., & Sperling, J. (2009, November). Twitterstand: News in tweets. In Proceedings of the 17th ACM Sigspatial International Conference on Advances in Geographic Information Systems (pp. 42–51). 13. Sriram, B., Fuhry, D., Demir, E., Ferhatosmanoglu, H., Demirbas, M. (2010, July). Short text classification in twitter to improve information filtering. In Proceedings of the 33rd International ACM SIGIR Conference on Research and Development in Information Retrieval (pp. 841–842). ACM. 14. Genc, Y., Sakamoto, Y., Nickerson, J. V. (2011, July). Discovering context: Classifying tweets through a semantic transform based on wikipedia. In International Conference on Foundations of Augmented Cognition (pp. 484–492). Berlin, Heidelberg: Springer 15. Kinsella, S., Passant, A., & Breslin, J. G. (2011, April). Topic classification in social media using metadata from hyperlinked objects. In European Conference on Information Retrieval (pp. 201–206). Berlin, Heidelberg: Springer. 16. Mohanavalli, S., Karthika, S., Srividya, K. R., & Sandya, N., (2018). Categorisation of Tweets using ensemble classification. International Journal of Engineering and Technology, 7(3), 12 (2018). Special Issue 12, 722–725. 17. Munjal, P., Kumar, S., Kumar, L., & Banati, A. (2017). Opinion dynamics through natural phenomenon of grain growth and population migration. In Hybrid intelligence for social networks (pp. 161–175). Cham: Springer.
TweetsDaily: Categorised News from Twitter
67
18. Munjal, P., Narula, M., Kumar, S., & Banati, H. (2018). Twitter sentiments based suggestive framework to predict trends. Journal of Statistics and Management Systems, 21(4), 685–693. 19. Munjal, P., Kumar, L., Kumar, S., & Banati, H. (2019). Evidence of Ostwald Ripening in opinion driven dynamics of mutually competitive social networks. Physica A: Statistical Mechanics and its Applications. 20. Bird, S., Klein, E., & Loper, E. (2009). Natural language processing with Python: Analyzing text with the natural language toolkit. O’Reilly Media, Inc. 21. De la Peña Sarracén, G. L. (2017). Ensembles of methods for Tweet topic classification. In IberEval@ SEPLN (pp. 15–19).
Compressing Metaclass Files Through String Optimization S. Nadera Beevi
Abstract Compilers translate abstract code containing high-level language instructions to low-level form. Meta-compilers are specialized compilers used to compile source code containing statements from multiple programming languages. Data structures in different languages can be used in a single language known as metalanguage. In this paper, optimization techniques on string objects for a metalanguage developed using C++ and Java are presented. It offers a flexible programming environment for users. String objects in Java take more memory and access time since it contains information about the globally shared array, length, and offset of currently executing strings. Most of the time the shared character array is not completely used and the garbage collection becomes difficult. Meta-compiler uses array representation for all string operations allowed in Java and C++. A virtual machine backend is designed for the meta-framework and bytecodes are rewritten for string operations in C++ and Java using arrays. It shows considerable improvement in the execution performance of meta-programs using strings compared to C++ and Java.
1 Introduction Programmers are usually not satisfied with a specific programming language. They are interested in developing a new language from scratch or adding new features to existing languages or transforming a language with minimum features to a language with more features. They are really blessed if they can access a system in which they can choose efficient features available in different programming languages. Metalanguage is a program transformation methodology for developing efficient
S. Nadera Beevi (B) Department of Computer Applications, TKM College of Engineering, Kollam, Kerala, India e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_6
69
70
S. Nadera Beevi
programs by combining good properties of different languages and thereby improving productivity of programmers. A meta-framework is developed for two or more high-level languages aiming to offer a flexible programming environment for users. The framework is tested using two popular object-oriented languages, C++ and Java [1–3]. The meta-program developed for the framework contains constructs from both programming languages. So, optimization is necessary to improve the execution time of programs. Many optimization techniques like Constant Propagation, Array Optimization, and Constant Pool Optimization are implemented in the meta-compiler developed [4]. Significant performance enhancement can be obtained through these optimization techniques. The paper concentrates on improving the execution time of meta-programs through optimizations concentrated on string objects. String data structure is supported by almost all programming languages because of its immense applications. They are implemented in different forms. In ANSI, C strings are implemented using null-terminated character arrays. No operators are available for processing strings. C++ permits the programmer to create their own definitions for operators to manipulate strings. ANSI C++ recently added string class to the class library that has enough functions for various string manipulations. In Java, all strings in a program share a character array. Strings are implemented as string objects and they store the length of the string and an offset into the character array where the current string is stored. The structure of the string object is as follows: struct String { int length; char *arr; int offset; }
All string methods access the string object each time for manipulating the string. Actually, Java virtual machines exempt the programmer from writing codes for accessing the fields of string objects at bytecode level. Only the string methods are to be invoked. Each invocation includes accessing all fields of the string object at run time by the interpreter. Most of the time the shared character array cannot be completely used and garbage collection becomes difficult. It is useful only for methods to create a copy of the string or to obtain a substring from the current string.
2 String Optimization Strings represented using character arrays eliminate unwanted field accesses and extra memory required for storing count and offset. All methods using string objects are rewritten and included in the meta-compiler. There is no need of changing and
Compressing Metaclass Files Through String Optimization
71
compiling programs, for creating and storing string arrays [5]. Initially, the methods that allocate string objects have to be modified. The constructors in Java for creating String Objects are String s1 = new String(); String s2= new String(“Ammu ”); String s1=s2; String s3=s3+s2; String(char chars[]); String(char chars[], int startIndex, int numchars); String(String obj); in.readLine(s1);
The constructors available in C++ for creating string objects are string s1; string s2(“Ammu ”); string s1=s2; string s3=s1+s2; s3+=s2; cin>>s1
All these constructors are tokenized and parsed by meta-framework to create a unified Meta Syntax Tree [3]. The MST is traversed and corresponding bytecodes are inserted. The bytecodes are implemented through code that uses character array for storing strings. For example, all the constructors shown below are implemented through same bytecodes in the meta-compiler. This method is more powerful rather than reducing number of bytecodes and implementing various constructs [6]. String s2=new String (“Ammu ”); string s2(“Ammu ”); String s1=s2; String (char chars[]); String(String obj);
The new bytecodes are • • • • • • •
aload string arraylength istore 1 iload 1 newarray 10 aload string invokestatic strarrcpy
72
S. Nadera Beevi
During parsing itself, the strings are stored in the literal table as character arrays. The string copy method pops out the source array, its length, the destination array from the stack, and copies the elements. The string copy function is implemented as follows: strarrcpy() { char *source=stack[top–]; char * dest = stack[top–]; strcpy(dest, source); }
For using these string constructors in Java virtual machine, implementation of strings as string objects is needed and that results in unnecessary memory usage. Another constructor supported by meta-compiler is the creation of strings from prebounded character arrays. A separate string copy function is used to implement this. The constructor, bytecodes, and the code used by the interpreter for executing the function are as follows: String(char chars[], int startIndex, int numchars); • • • • • • • • •
aload string arraylength istore 1 iload 1 newarray 10 aload string iload 2 iload 3 invokestatic strarrboundcpy
The string array bound copy function copies specified number of characters from source string to destination position. The function is implemented as follows:
Compressing Metaclass Files Through String Optimization
73
strarrboundcpy() { int nc= stack[top–]; int si= stack[top–]; char *source=stack[top–]; char * dest = stack[top–]; strncpy(dest, source+si,nc); } String functions supporting various operators are also included in the Meta framework. The assignment operator, += and the comparison operators, (!=, =,>,s2, s12, it is composite. For a random a, Euler proved that (x/n) = x(n − 1)/2(modn) where (a/n) is the Legendre symbol, and Jacobi symbol is its generalization to (x/p) where p is any odd number. If [11] above statement is true for random values of a, then it classifies n as a prime number, otherwise as composite. But if n is an odd composite number, in that case the probability to determine composite number will be ½. To check the primality of number n, consider a random number p whose range is (2, n−1) and then compute the Jacobian (p/n). For n to be a prime number [12], Jacobian will be equal to Legendre and the condition of Euler will be satisfied. For n to be composite, it does not satisfy the condition of Euler. The accuracy of this algorithm is directly proportional to the number of iteration.
2.6 Miller–Rabin Algorithm The fundamental basis of Miller’s algorithm is Fermat little theorem. It is deterministic primality testing algorithm, according to which [13]. If n = mk for some k > 1 or is even number greater than 2, it is composite.
An algorithm to Generate Largest Prime …
For
each
a,
1
=Length(Fi) Do 9. For x = 1 To i Step 1 Do 10. For each posted job count the Skill, F[j][x] 11. If Skill[j][x]==Required JSkill in Jid Then 12. Update SCount[j][x] 13. If all skills found in JSkill Then 14. Add this job in CR[Jid][i] 15. End If 16. End If 17. End For 18. j=j+1; 19. End While 20. End For 21. End
Fig. 2 Steps of frequent skill sets generation (Minsup = 20%)
An Intelligent System to Generate Possible Job …
319
4.3 Generate Possible Job Lists Find the Posted Jobs Matched with the Frequent Skill sets. A score is generated for each job posted by the clients using multiple keywords searching algorithm. Algorithm 2 identifies the jobs which match with frequent skill sets of freelancers. Collaborative Filtering to Rank Posted Jobs. A collaborative filtering algorithm is applied to rank the posted jobs to recommend the best suitable ones for the freelancers. While designing a collaborative filtering algorithm, we consider the job category, client’s rating, deadlines, and budget/hourly rates. Rank of the posted jobs based on the score obtained from Step 01 is created using Algorithm 3. The jobs with a better ranking are recommended to the freelancers.
Algorithm 3. Job Ranking and Recommendation Input: CR[][]: The list of jobs matched with the frequent skillsets of different length Output: FCR[][]: Final posted job list to recommend for freelancer 1. Start 2. Read CR[][] 3. For i = 1 To Length(CR[][]) Step 1 Do 4. For j = i+1 TO Length(CR[][]) Step 1 Do 5. Find out maxScore for Jid=i 6. Create FCR[i][maxScore] 7. Delete Jid from CR[][] 8. End For 9. End For 10. Sort CR[][] According to Score 11. Write the possible jobs, FCR[][] 12. End
5 Experimental Results and Discussion In this section, the preparation of datasets, experimental environments, and experimental results are discussed. We also evaluate our proposed method through multiple experiments on several datasets.
5.1 Experimental Data and Environment Setup Because of the unavailability of any trusted dataset on crowdsourcing platforms, we have used synthesized data for experimental purposes. Datasets have generated using a very effective open-source data mining library SPMF V-2.33 [19]. The characteristics of the datasets are described in Table 3. We have viewed distinct dimensions and variants to make the datasets more realistic. All experiments have carried out
320 Table 3 Characteristics of the dataset
Md. Sabir Hossain and M. S. Arefin Dataset
#Completed jobs
#Skills considered
#Maximum skills per job
DS1
200
16
15
DS2
1,000
20
18
DS3
5,000
25
20
DS4
10,000
28
21
DS5
20,000
30
25
on Hewlett-Packard HP Probook 450 G0 with Intel core i-3, 2.40 GHz processor, 4.0 GB DD3 RAM, the 32-bit operating system, Windows 8.1 version in a regular load. We have measured the running time, the memory requirements, the number of candidates and frequent skill sets, and the length of generated frequent skill sets varying minimum support values for five distinct datasets.
5.2 Candidate and Frequent Skill Sets Versus Minimum Support We calculate the candidate and frequent skill sets count for different datasets for various minimum support values (20, 30, 40, and 50%). From the results obtained by applying the Apriori algorithm to different datasets, we found that the candidate and frequent skill sets both are larger for a larger dataset. The number of candidates and frequent skill sets decreases with the increases in minimum support. It shows (Fig. 3) inverse proportionality relationship between the candidate and frequent skill sets and minimum support values except for 50% minimum support value.
Fig. 3 Variation in the number of frequent skill sets generation based on datasets for different minsup values a 0.20, b 0.30, c 0.40, and d 0.50
An Intelligent System to Generate Possible Job …
321
Fig. 4 Runtime (milliseconds) and memory requirements (megabytes) required for different minsup values a 0.20, b 0.30, c 0.40, and d 0.50
5.3 Run Time (ms) and Required Memory (mb) The graph plotted for different values of minimum support values shows that run time and memory requirement increase with the increase in data size (Fig. 4). Although run time decreases with the increase in minimum support, the required memory size is not regular. We can observe that relationship of run time with memory requirement is not linear for different datasets.
5.4 Length of Generated Frequent Skill Sets Length of generated skill sets varies with the variation in minimum supports. For a specific dataset, the number of longest skill sets decreases with the increase in minimum support values in Fig. 5. The relationship of generated skill sets length is inversely proportional with the size of datasets .
322
Md. Sabir Hossain and M. S. Arefin
Fig. 5 Changes in the length of frequent skill sets based on datasets size a 200, b 1,000, c 5,000, d 10,000, and e 20,000
5.5 Skills Considered and Maximum Skills Per Job Versus Number of Generated Frequent Skill Sets The number of frequent skill sets varies with the maximum number of considerable skills per job. The number of generated skill sets is listed in Table 4. From Fig. 6, it is clearly visible that with the change of maximum allowable skills per job, the number of generated skill sets also changes. Table 4 Length of generated frequent skill sets Dataset
#Skills considered
#Maximum skills per job
#Generated skills 0.20
0.30
0.40
0.50
DS1
16
15
34
12
4
2
DS2
20
18
567
58
20
1
DS3
25
20
325
25
25
0
DS4
28
21
61
28
0
0
DS5
30
25
465
30
30
0
An Intelligent System to Generate Possible Job …
323
Fig. 6 No of generated skill sets for the different number of maximum skills considered per jobs
6 Conclusion and Future Directions Without the aid of appropriate recommendations from the crowdsourcing system, both jobs finding and assigning will be so tough. In a result, the dissatisfaction of both parties will be expanded. Our proposed intelligent system will not solely help the freelancers to find out their suitable jobs easily but additionally assist the requesters to assign jobs to appropriate candidates. Requesters will get job proposals from the potential candidates. Performance of the system will increase day by day as soon as the work history enhances. Otherwise, cold start might also arise at the preliminary state for freelancers. In this paper, we have analyzed the freelancer’s successfully accomplished work history and rating to find out frequent skill sets using frequent itemsets mining algorithm. We have not considered the personality type and feedback from the clients on a particular task. Assigning job considering the personality type may additionally enhance the successful job completion with greater satisfaction. The more accurate result may also be found through applying classification techniques to posted jobs. Another necessary aspect might also be incorporated into the recommendation system is to consider rehire. The skills used in recent jobs might also increase the efficiency of the system.
324
Md. Sabir Hossain and M. S. Arefin
References 1. Kassi, O., & Lehdonvirta, V. (2016). Online labour index: Measuring the online gig economy for policy and research. Munich Personal RePEc Archive. https://mpra.ub.uni-muenchen.de/ 74943/1/MPRA_paper_74943.pdf. 2. Upwork., & Freelancers Union. (2017). Freelancing In America. In An Independent, Annual Study Commissioned by Freelancers Union & Upwork. Retrieved October 17, 2017, from https://www.upwork.com/press/2017/10/17/freelancing-in-america-2017/. 3. Payoneer. (2018). Global Benchmark Report for hourly rates. The Payoneer Freelancer Income Survey. https://explore.payoneer.com/freelancer-income-survey-2018. 4. Kuhn, K. M., & Maleki, A. (2017). Micro-entrepreneurs, dependent contractors, and instaserfs: Understanding online labor platform workforces. Academy of Management Perspectives, 31(3), 183–200. https://doi.org/10.5465/amp.2015.0111. 5. Yuen, M. C., King, I., & Leung. K. S. (2011). A survey of crowdsourcing systems. In Proceedings of the 3rd Internal Conference of Privacy Security Risk Trust Social Computer (PASSAT/SocialCom) (pp. 766–773). Boston, MA, USA. 6. Kokkodis, M., Papadimitriou, P., & Ipeirotis, P. G. (2015). Hiring behavior models for online labor markets. In Proceedings of the Eighth ACM International Conference on Web Search and Data Mining—WSDM ‘15. https://doi.org/10.1145/2684822.2685299. 7. Yuen, M. C., King, I., & Leung, K. S. (2011) Task matching in crowdsourcing. In 2011 International Conference on Internet of Things and 4th International Conference on Cyber, Physical and Social Computing. https://doi.org/10.1109/ithings/cpscom.2011.128. 8. Yuen, M. C., King, I., & Leung, K. S. (2012). Task recommendation in crowdsourcing systems. In Proceedings of the First International Workshop on Crowdsourcing and Data Mining (pp. 22–26). Beijing, China: ACM New York. 9. Yuen, M.-C., King, I., & Leung, K.-S. (2014). TaskRec: A task recommendation framework in crowdsourcing systems. Neural Processing Letters, 41(2), 223–238. https://doi.org/10.1007/ s11063-014-9343-z. 10. Ambati, V., Vogel, S., & Carbonell, J. (2011). Towards task recommendation in micro-task markets. In AAAIWS’11-11 Proceedings of the 11th AAAI Conference on Human (pp. 80–83). AAAI Press. 11. Tunio, M. Z., Luo, H., Cong, W., Fang, Z., Gilal, A. R., Abro, A., et al. (2017). Impact of personality on task selection in crowdsourcing software development: A sorting approach. IEEE Access, 5, 18287–18294. https://doi.org/10.1109/access.2017.2747660. 12. Tunio, M. Z., Luo, H., Cong, W., Fang, Z., Gilal, A. R., & Shao, W. (2018). Task assignment model for crowdsourcing software development: TAM. Journal of Information Processing Systems 14(3), 621–630. https://doi.org/10.3745/jips.04.0064. 13. Kumari, R., Kumar, S., & Sharma, V. K. (2015). Fuzzified expert system for employability assessment. Procedia Computer Science, 62, 99–106. 14. Kumari, R., Sharma, V. K., & Kumar, S. (2014). Adaptive neural fuzzy inference system for employability assessment. International Journal of Computer Applications Technology and Research, 3(3), 159–164. 15. Agrawal, R., Izmielinski, T., & Swami, A. (1993). Database mining: A performance perspective. In J. Han, J. Pei & Y. Yin (Eds.), IEEE Transactions on Knowledge and Data Engineering, 5(6), 914–925. 16. Olson, D. L., & Delen, D. (2008). Association rules in knowledge discovery. In Advanced data mining techniques. Berlin: Springer. 17. Faro, S., & Lecroq, T. (2013). The exact online string matching problem: A review of the most recent results. ACM Computing Surveys, 45(2), 1–42.
An Intelligent System to Generate Possible Job …
325
18. Faro, S., & Külekci, M. O. (2013). Towards a very fast multiple string matching algorithm for short patterns. Stringology. https://pdfs.semanticscholar.org/fed7/ ca62dc469314f3552017d0da7ebd669d4649.pdf. 19. Fournier-Viger, P., Lin, C. W., Gomariz, A., Gueniche, T., Soltani, A., Deng, Z., & Lam, H. T. (2016). The SPMF open-source data mining library version 2. In Proceedings of 19th European conference on principles of data mining and knowledge discovery (PKDD 2016) Part III (pp. 36–40): Springer LNCS 9853.
A Novel Image Based Method for Detection and Measurement of Gall Stones K. Sujatha, R. Shobarani, A. Ganesan, P. SaiKrishna and Shaik Shafiya
Abstract Accurate gall bladder segmentation is a challenging task because the surrounding tissues present in computed tomography (CT) images have densities similar to that of the gall bladder tissue and lesions at the edges of gall bladder. This work focuses on delineation of gall bladder contours on CT images whose contrast is enhanced. This gall stone detection scheme exploits a snake algorithm using Fuzzy C-means clustering (FCM) to extract the features. To improve the performance of the gall bladder contour segmentation, Sobel operator is used an edge map, followed by a template based modification using concavity removal algorithm. The unwanted edges are eliminated inside the gall bladder to obtain a modified edge map. The contour of the gall bladder is obtained using Support Vector Machine (SVM) algorithm. The segmentation of the adjacent region is done on part-by-part basis so that the result is constrained on the segmentation algorithm. Five hundred two-dimensional gall bladder images from which 400 CT images with cholecystitis spreading through the gall bladder were delineated using SVM whose optimal parameters are inferred using chaotic whale optimisation algorithm (CWOA). This method detects sizes corresponding to small (S), medium (M) and large (L) sized gall stones in comparison with the normal gall bladder condition. An opinion from the radiologist is taken for manual evaluation. The difference ratio, defined as the ratio of percentage of mismatched detection between the algorithm and the radiologist’s. This value obtained to be 1.9%. K. Sujatha (B) Department of EEE, Dr. MGR Educational and Research Institute, Chennai, India e-mail: [email protected] R. Shobarani Department of CSE, Dr. MGR Educational and Research Institute, Chennai, India A. Ganesan Department of EEE, RRASE College of Engineering, Chennai, India P. SaiKrishna Department of ECE, Sree Rama Institute of Technology and Science, Khammam, India S. Shafiya Department of ECE, Nalla Narasimha Reddy Education Society, Majarguda, India © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_29
327
328
K. Sujatha et al.
Keywords Gall bladder · Image processing · Fuzzy C-means clustering · Support vector machine and chaotic whale optimisation algorithm
1 Introduction The crystallized bile from the liver is converted to solid particles called gall stones, deposited in the gall bladder and concealed in the ducts which carry bile that help in digestion of the lipids. Certain gall stones do not show indications but it is the source of blockage in gall bladder and bile carrying channels and may end up with discomfort and swelling, causing cholecystitis [1–9]. The CT of the abdominal region is used by the physicians for diagnosis of gall stones. Sometimes, they even use ultrasound or magnetic resonance cholangiopancreatography (MRCP) to identify the presence and extent of the blockage. If symptoms do not persist then treatment is not needed [10]. If, the gall stones are diagnosed with cholecystitis, the physician prescribes antibiotics and suggests for surgical elimination of the gallbladder. On the other hand if a gall stone has blocked the bile duct, the biliary intrusions will be used to identify and remove the blockage depending on the size of the stone [11–22]. The first technique includes, endoscopic retrograde cholangio-pancreatography (ERCP) and the second method is percutaneous transhepatic cholangiography (PTC). Figure 1 indicates the presence of gall Fig. 1 Presence of gall stones in gall bladder
A Novel Image Based Method for Detection and Measurement …
329
stones in gall bladder. Gall stones of various sizes can be detected using this imagebased scheme.
2 Existing Method to Diagnose and Evaluate the Gallstones The existing methods include imaging methods to provide important information regarding the gall stones, such as locality, dimensions with consequence on the functioning of the liver or gall bladder. Certain imaging methods include abdominal ultrasound, CT and MRCP [23–32]. • Abdominal ultrasound: This type of ultrasound generates images of which indicates the inflammation or block in the bile duct or gall bladder. This is a routine test using ultrasound to assess the abnormality in gall bladder [33]. • Abdominal CT: This method produces complete images of gall bladder and bile channels to detect inflammation and blockage regarding bile flow [34]. • Magnetic resonance cholangiopancreatography (MRCP): This type of MRI is responsible for casting crystal clear images of gall bladder, liver, bile channels, pancreas and its channels. It detects gall stones along with the block in bile ducts [23].
3 Treatment for Gall Stones Treatment of gallstones is not needed if there is no symptom. Surgery to remove gall bladder (cholecystectomy) or intra-venal antibiotics are used to treat cholecystitis [32]. The surgeon usually adapts a laproscopic cholecystectomy to remove the gall stones by drilling small slits on the abdomen. If the bile channels are blocked some additional removal methods are adapted including: • Endoscopic retrograde cholangiopancreatography (ERCP): This method produces uses a flexible tube which is passed from the mouth via stomach and finally into the duodenum. For this purpose, a contrast is created by using Iodine. • Percutaneous transhepatic cholangiography (PTC): A needle is passed into the bile duct by performing a small slit on the epidermal region. Then, the contrast dye like Iodine is injected to locate the blocks created by the gall stones. • Cholecystostomy tube placement: A catheter is place in the gall bladder by performing a small slit on the epidermal region. This catheter is a miniature-sized plastic tube. Through this tube the bile which is blocked is drained by attaching a bag outside the body. This extrusion process reduces the swelling created by the accumulation of bile in the gall bladder. Figure 2 interprets few CT image samples of the gall bladder consisting of gall stones. Based on the opinion from the gastroenterologists the gall stones are classified
330
K. Sujatha et al.
Fig. 2 CT images of gall bladder
into three types based on their diameters. This size based classification is mentioned in Table 1.
4 Research Highlights This paper proposes an innovative scheme to detect gall stones. For this; the features are extracted from the CT images of gall bladder for a classification based analysis. Three main modules like feature extraction, classification and optimisation play an important role in yielding an optimal output during this automated diagnosis.
A Novel Image Based Method for Detection and Measurement …
331
Table 1 Classification of gall stones based on measurements S. no
Size of the gall stones
Linguistic description for gall stones size
No. of samples collected
1
1.7–2.3 mm
Small (S)
100
2
2.3–3 mm
Medium (M)
100
3
Greater than 3 mm and less than 1 cm
Large (L)
100
4
0 mm
Normal (N)
200
FCM is a clustering algorithm which is used to extract the distinct feature set and its dimension is reduced to minimize the computational complexity. In the second module, SVM performs classification. In the optimisation module, chaotic whale optimisation algorithm (CWOA) is used to find the best possible values for the parameters using SVM.
5 Proposed Method This diagnostic system which is aided by the computer allows integration of a flexible feature selection algorithm and pattern classifier [30–32, 34, 35] to identify the gall stones. The proposed method includes three main modules: feature extraction module, classifier module and optimisation module. In the feature extraction module, Fuzzy C-means clustering (FCM) algorithm is used to extort the distinct features. FCM also helps in dimension reduction of the input data. The membership function defines the input in an effective manner. In the second module, Support Vector Machine (SVM) is used as the main classifier. Therefore, in the optimisation module, chaotic whale optimisation algorithm (CWOA) is used to determine the optimal value of SVM parameters. The main step of the proposed method is described with more details in Fig. 3.
Fig. 3 Proposed methodology for gall stones detection in gall bladder
332
K. Sujatha et al.
The most commonly used measure to evaluate the performance of a classifier is recognition accuracy (RA). The RA is the proportion of the total number of predictions that were correct to all samples. It is determined using the Eq. 1. Fitness function: RA = (TP + TN)/(TP + FN + FP + TN)
(1)
The description of RA can be extended to any pattern recognition problem with arbitrary patterns. In the gall stones classification, there are four sizes as indicated in Table 1. In the proposed method RA is used as the fitness function for CWOA. The CWOA should find the optimal parameters to enhance the RA rate. In the above figure the value corresponds to the RA for gall stones detection.
6 Results and Discussion The computations were done on i7-Intel core processor with a RAM of 32 GB using DELL lap top. The programming is written using MATLAB (version R2016a) environment. For this study, 70% of data was used for training and remaining 30% for testing. Output for classification is shown in Fig. 4. Pattern recognition performance is 99.75% for the suggested technique in Table 2 and is also compared with the other existing methods. This significant increase in
Fig. 4 Identification of gall stones using SVM + CWOA
Table 2 Pattern Recognition performance
S. no
Algorithm used
Recognition efficiency (%)
1
SVM + CWOA
99.75
2
SVM
91.23
3
BPA
90.1
4
BPA + PSO
92.11
A Novel Image Based Method for Detection and Measurement …
333
performance is produced by the suggested techniques as compared with SVM. The runtime for the suggested method is reduced notably; using meaningful features extracted using FCM which are used as inputs to train and test the SVM.
7 Conclusion Gall bladder is one of the most important organs in the human body responsible for destroying the worn out Red Blood Cells (RBCs). As a result, evaluating the condition and size of the gall stones from CT images is crucial to the medical field so as provide an appropriate diagnosis and medication to the patients. In this study a fast and accurate method is proposed for identifying the size-based presence and absence of gall stones. Real-time CT images were used as the data set to evaluate the classification performance of SVM. The new method proposed in this paper combines FCM with chaotic whale optimisation algorithm and support vector machine. The performance of the proposed method is evaluated by the opinion taken from the radiologist. The simulation results indicate that the FCM properly performs the extraction of effective features, and the following optimized support vector machine classifies the patterns in an excellent way. According to the obtained results, it is concluded that the feature extraction has high impact on recognition accuracy. Also the type of classifier like, support vector machine is very important issue and it must be considered during the design of diagnosis system. Intelligent combination of feature extraction algorithm and optimized classifier is the main contribution. Results obtained show that the proposed diagnosis system has high accuracy, robust performance and short run time.
References 1. Channa, N. A., Khand, F. D., Khand, T. U., Leghari, M. H., & Memon, A. N. (2007). Analysis of human gallstone by fourier transform infrared (FTIR). Pakistan Journal of Medical Sciences, 23, 546–50. 2. Bouchier, T. A. (1977). Gallstones. Proceedings of the Royal Society of Medicine, 70, 597–599 (PMC free article) (PubMed). 3. Berci, G. (2004). Historical overview of surgical treatment of biliary stone disease. In B. V. MacFadyen, M. Arregui, S. Eubanks, D. O. Olsen, J. H. Peters, N. J. Soper, et al. (Eds.), Laparoscopic surgery of the abdomen (pp. 139–142). New York: Springer. 4. Gordon-Taylor, G. (1937). On gallstones and their sufferers. British Journal of Surgery, 25, 241–251. 5. Hadidy, S., Turki, J., & Misri, H. T. (1987). Cholelithiasis in the Syrian population. A prospective study of 189 patients. The American Journal of Surgery, 153, 392–393 (PubMed). 6. Sampliner, R. E., Bennett, P. H., Comess, L. J., Rose, F. A., & Burch, T. A. (1970). Gallbladder disease in pima Indians. Demonstration of high prevalence and early onset by cholecystography. The New England Journal of Medicine, 283, 1358–1364 (PubMed). 7. Acalovschi, M. (2001). Cholesterol gallstones: From epidemiology to prevention. Postgraduate Medical Journal, 77, 221–229 (PMC free article) (PubMed).
334
K. Sujatha et al.
8. Biss, K., Ho, K. J., Mikkelson, B., Lewis, L., & Taylor, C. B. (1971). Some unique biologic characteristics of the Massai of East Africa. The New England Journal of Medicine, 298, 694–699 (PubMed). 9. Onuigbo, W. I. (1977). A biopsy study of gallstones in Nigerian igbos. Digestion, 15, 353–355 (PubMed). 10. Halldestam, I., Enell, E. L., Kullman, E., & Borch, K. (2004). Development of symptoms and complications in individuals with asymptomatic gallstones. British Journal of Surgery, 91, 734–738 (PubMed). 11. Rahman, G. A. (2005). Cholelithiasis and cholecystitis: Changing prevalence in an African community. Journal of the National Medical Association, 97, 1534–1538 (PMC free article) (PubMed). 12. Shaffer, E. A. (2006). Gallstone disease: Epidemiology of gallbladder stone disease. Best Practice and Research Clinical Gastroenterology, 20, 981–996 (PubMed). 13. Dray, X., Joly, F., Reijasse, D., Attar, A., Alves, A., Panis, Y., et al. (2007). Incidence, risk factors, and complications of cholelithiasis in patients with home parenteral nutrition. Journal of the American College of Surgeons, 204, 13–21 (PubMed). 14. Thistle, J. L., Cleary, P. A., Lachin, J. M., Tyor, M. P., & Hersh, T. (1984). The natural history of cholelithiasis: The national cooperative gallstone study. Annals of Internal Medicine, 101, 171–175 (PubMed). 15. Friedman, G. D., Raviola, C. A., & Fireman, B. (1989). Prognosis of gallstones with mild or no symptoms: 25 years of follow-up in a health maintenance organization. Journal of Clinical Epidemiology, 42, 127–136 (PubMed). 16. Duane, W. C. (1990). Pathogenesis of gallstones: Implications for management. Hospital Practice, 25, 65–76. 79 (PubMed). 17. Donovan, J. M., & Carey, M. C. (1991). Physical-chemical basis of gallstone formation. Gastroenterology Clinics of North America, 20, 47–66 (PubMed). 18. Apstein, M. D. (1989). Pathophysiology of gallstones and other diseases of the biliary tract. In S. Chopra & R. J. May (Eds.), Pathophysiology of gastrointestinal diseases (pp. 489–528). Boston: Little, Brown. 19. Holzbach, R. T., & Busch, N. (1991). Nucleation and growth of cholesterol crystals. Kinetic determinants in supersaturated native bile. Gastroenterology Clinics of North America, 20, 67–84 (PubMed). 20. Beckingham, I. J. (2001). Gallstone disease. British Medical Journal, 322, 91–94 (PMC free article) (PubMed). 21. Channa, N. A. (2008). Gallstone disease: A review. Pakistan Armed Forces Medical Journal, 2. 22. Trotman, B. W. (1991). Pigment gallstone disease. Gastroenterology Clinics of North America, 20, 111–126 (PubMed). 23. Trotman, B. W., Petrella, E. J., Soloway, R. D., Sanchez, H. M., Morris, T. A., & Miller, W. T. (1975). Evaluation of radiographic lucency or opaqueness of gallstones as a means of identifying cholesterol or pigment stones. Correlation of lucency or opaqueness with calcium and mineral. Gastroenterology, 68, 1563–1566 (PubMed). 24. Johnston, D. E., & Kaplan, M. M. (1993). Pathogenesis and treatment of gallstones. The New England Journal of Medicine, 328, 412–421 (PubMed). 25. Stewart, L., Oesterle, A. L., Erdan, I., Griffiss, J. M., & Way, L. W. (2002). Pathogenesis of pigment gallstones in Western societies: The central role of bacteria. The Journal of Gastrointestinal Surgery, 6, 891–903 (PubMed). 26. Trotman, B. W., Bernstein, S. E., Bove, K. E., & Wirt, G. D. (1980). Studies on the pathogenesis of pigment gallstones in hemolytic anemia: Description and characteristics of a mouse model. Journal of Clinical Investigation, 65, 1301–1308 (PMC free article) (PubMed). 27. Everson, G. T., McKinley, C., & Kern, F. (1991). Jr Mechanisms of gallstone formation in women. Effects of exogenous estrogen (Premarin) and dietary cholesterol on hepatic lipid metabolism. Journal of Clinical Investigation, 87, 237–246 (PMC free article) (PubMed).
A Novel Image Based Method for Detection and Measurement …
335
28. Yio, X. Y., Jin, B. W., Yin, F. Z., & Li, X. J. (1992). Bile secretory immunoglobulin A in biliary infection and cholelithiasis. Gastroenterology, 102, 1000–1008 (PubMed). 29. Strasberg, S. M., Toth, J. L., Gallinger, S., & Harvey, P. R. (1990). High protein and total lipid concentration are associated with reduced metastability of bile in an early stage of cholesterol gallstone formation. Gastroenterology, 98, 739–746 (PubMed). 30. Carey, M. C., & Cahalane, M. J. (1988). Whither biliary sludge? Gastroenterology, 95, 508–523 (PubMed). 31. Lee, S. P., Nicholls, J. F., & Park, H. Z. (1992). Biliary sludge as a cause of acute pancreatitis. The New England Journal of Medicine, 326, 589–593 (PubMed). 32. Sujatha, K., Karthikeyan. V., & Ponmagal, R. S. (2019). Hepatoprotective activity of the biherbal extract in Carbon Tetrachloride (CCl4) induced hepatoxicity—A study of histopathological image analysis, advances. In Intelligent Systems and Computing. Springer Nature. 33. Small, D. M. (1976). Part I. The etiology and pathogenesis of gallstones. Advances in Surgery, 10, 63–85 (PubMed). 34. Kurtin, W. E., Schwesinger, W. H., & Diehl, A. K. (2000). Age-related changes in the chemical composition of gallstones. International Journal of Surgical Investigation, 2, 299–307 (PubMed). 35. LaMont, J. T., Smith, B. F., & Moore, J. R. (1984). Role of gallbladder mucin in pathophysiology of gallstones. Hepatology, 4, 51S–6 (PubMed).
Big Data and Query Optimization Techniques Aarti Chugh, Vivek Kumar Sharma and Charu Jain
Abstract With rise in new technologies like Big Data, Internet of Things, Sensor Networks, etc. new query processing and optimization techniques have been evolved which handles the complex and interactive queries. Traditional query processing systems are not capable enough to handle queries on big data. In this paper, we represent many of the big data querying techniques along with the comparative analysis. Finally, the paper concludes with list of tools/techniques that are used for big data query optimization. Keywords Big Data · Query optimization · Unstructured data · Hadoop · Hive
1 Introduction Big data means large or complex data sets that cannot be handled by existing relational data processing systems or others application tools/techniques. Several challenges include analysis, capture, storage, search, sharing, transfer, visualization, and information privacy [1]. Massive data created in a real-time manner need fast and efficient methods for handling real-time interactive queries [2]. Several research and industrial projects are focusing on query processing and optimization methods. Query processing is an important step which translates a query in a high-level language such as SQL into low-level data manipulation procedures. The translated query is passed to query optimizer to improve query execution by finding best query execution plan. Big Data query processing and optimization are still in its infancy. The motivation behind this survey paper is increased demand of knowledge discovery out of Big Data. Big data incorporates data from multiple sources. When it comes to unstructured data, the complexity of the data becomes a hurdle in analysis process. Vast application areas need quick and accurate response for queries fired on Big A. Chugh (B) · C. Jain Amity University, Gurgaon, Haryana, India e-mail: [email protected] V. K. Sharma Jagannath Univarsity, Jaipur, India © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_30
337
338
A. Chugh et al.
Data. Although, numerous tools and techniques have been proposed but exponential growth of Big Data demands more innovative approach to answer intelligent and complex queries. Hence, query processing is an up growing and interesting research area. Section 2 provides literature study along with drawbacks of techniques used by various authors. Finally, our concluding remarks are given in Sect. 3 (Table 1).
2 Literature Study and Comparative Analysis There is vast literature survey on query processing on big data. Most of the techniques are meant for querying structured data and there are research gaps while working with unstructured data [18–20]. Some of the major techniques used by most of the researchers for query optimization are as follows: • • • • • • • • • • • • • • • •
Data mining techniques like Partitioning, Clustering, etc. Pilot runs Bucketing In-memory execution Pattern matching algorithms Addition of new algebraic or operators Addition of new hardware components to existing frameworks Change in storage formats: Column-oriented or row-oriented Use of indexes: Bit slice index, hybrid index, etc. Genetic Algorithm Semantic Matching Data compression Directed Acyclic Graphs Tree representation: B+ trees Heuristics based optimization Materialized Views.
3 Conclusion Big Data is simply the collection, processing and analysis of huge data sets from traditional or digital means which deliver business intelligence for companies to enhance their services or create a new competitive advantage. Query processing is one of the biggest challenges because of variety of queries, data complexity, data generation speed, etc. Numerous tools and techniques have been proposed but exponential growth of Big Data demands more innovative query processing and optimization approach to answer intelligent and complex queries. We propose to improve query optimization techniques by grouping two or more listed techniques. Further, our
Problem discussed/technique
Author’s research shows that commodity hardware is not capable of providing best performance when it works on big data based applications. Hence, there is a requirement to redesign hardware architecture using modern hardware features for improved good query execution performance with low power consumption. For their proposed RAPID Data Processing Unit architecture, they have designed RAPID software architecture pluggable to different RDBMS
The proposal was to implement Real Time analysis for network monitoring for Elisa Oyj, Finnish telecommunication, ICT and online service provider at Finland
Social network service (SNS) generates massive data which is difficult to analyze. Author’s implemented distributed in-memory based SparkSQL and storage is column-oriented instead of row-oriented Performance analysis has been done for social data using Spark SQL queries
Paper title
RAPID: In-Memory Analytical Query Processing Engine with Extreme Performance per Watt [3]
Improving the monitoring of telephone network with Analytics [4]
A Design of High-speed Big Data Query Processing System for Social Data Analysis, Using Spark SQL [5]
Hadoop and YARN are used to manage the whole cluster and Spark platform setup is done above them. Data size taken varies from 20 to 1000 GB
An analytic tool by Microsoft, called Power BI is used to find the relationships of different data sources. M-query language of Power BI is used for calculations to monitor Elisa network
RAPID provides an original design of hardware aware data/storage model. The model performs query optimization using specific data processing operators. It is a relational, columnar, in-memory query processing engine which comprises a new processor called the Data Processing Unit (DPU). Query compilation starts from host database system which sends compiled query to RAPID for cost-based query optimization
Framework/experiment setup
Table 1 Comparative analysis of query optimization techniques based on literature survey Result
Comparison in terms of executor memory size, the numbers of executors which determine the parallel execution counts of the tasks and assigned cores per an executor have shown following observations (i) More executors for processing columns than the memory size, the smaller the responding time (ii) More cores do not show improved performance when there is limitation of the whole resource utilization in the cluster (iii) More number of cores increases the speed of cluster CPU
The thesis is carried out by analyzing the data from different components of Elisa network and making recommendations based on the findings
In the experiment, authors ran half of TPC-H queries on 1 TB data on both System X and RAPID. System is evaluated for queries varying from 10× to 25×. Results prove that RAPID achieves its important performance/power goal. While the speedup of RAPID software varies from 1.2× to 8.5×, the average speedup over the ran queries is 2.5×
Drawback
(continued)
Query processing time increases as data size increases
Data is stored in Excel sheets which is not capable of storing vast volumes of data
DPU, the proposed processor has to be installed on system for working with Big Data queries. Other proposed systems do not need any new hardware component
Big Data and Query Optimization Techniques 339
Problem discussed/technique
Authors addresses online processing for large-scale, incremental computations on a distributed processing platform The research automatically generates an incremental distributed stream processing (DSP) program for any batch data analysis program
Authors studied that time taken for executing join operations on Map Reduce is more. By using the hive query language on the Hadoop and increasing number of nodes authors have proved that the data will be processed fastest than with the fewer nodes
User defined functions (UDFs) involve business logic close to data and complicate cost-based optimization. Here, authors have introduced ‘pilot runs’ which execute part of query to estimate selectivities and employs cost-based optimizer to pick a primary query plan. These query plans are dynamically modified until best plan is reached
Paper title
Incremental Query Processing on Big Data Streams [6]
Query Optimization of Big Data Using Hive [7]
Dynamically Optimizing Queries over Large Scale Data Platforms [8]
Table 1 (continued) Framework/experiment setup
New framework, DYNO, which work over Hadoop data is proposed. Data is taken through TPC-H, and datasets of size 100, 300 GB and 1 TB are used during experiments. Work is done on a cluster of 15 nodes which is connected with 10 gigabit Ethernet. Further, Columbia optimizer is used a s a basis for cost based optimizer
HIVE is built on the Hadoop framework and is used to store, summarize, analyze and query processing of the dataset present in the hadoop distributed file system (HDFS). It provides query language HiveQL. Authors run a hive query and run the same query in traditional databases like MySQL
Incremental processing framework is combination of Apache MRQL and Apache Spark Streaming. The first step is lineage tracking. It transforms a query so that it propagates the join and group-by keys to the query output
Result
Authors have tested on sample queries Q2, Q7, Q8, Q9 and Q10 of TPC-H benchmark. They used four execution plans. Relational optimizer and Jaql optimizer are existing ones and DYNOPT-Simple and DYNOPT algorithms are designed by them. Comparison shows that DYNOPT always produces better query plans even when query involves UDFs. When there are no UDFs, then re-optimization is not beneficial and it degrades system performance. Moreover, when data size increases than also re-optimization is not feasible or takes more time. In query Q8’, DYNOPT algorithm shows performance speedup of 2×, 1.17 and 1.07× over Jaql optimizer
The given input file will be stored in HDFS by creating a directory with the related schema name. The query is passed to respective driver and an optimized plan is generated. Performance is improved in terms of response time
Proposed system is authenticated using four queries: groupBy, join-groupBy, k-means clustering, and PageRank. The data streams consist of a large set of initial data, which is used to initialize the state, followed by a sequence of nine equal-size batches of data (the increments)
Drawback
(continued)
Pilot runs introduce overhead. Total overhead computed is 7–10%, which is acceptable as designed architecture provides benefits of working on UDFs
Hive supports overwriting or apprehending data, but not updates and deletes
MRQL algebra is unconventional. So, to apply proposed technique users has to first translate their queries which will be time consuming
340 A. Chugh et al.
Problem discussed/technique
HadoopDB performance is lower in query optimization. Authors have added new components in HadoopDB to overcome its disadvantages
Prasadkumar Kale and Arti Mohanpurkar proposed pattern matching technique for handling queries on unstructured real-time data. Partition and pattern matching algorithms are used with MapReduce for fast query execution
BlinkDB is a query processing framework optimized for interactive answers on large volumes of data. The framework is capable of handling petabytes of data through massively parallel, sampling based approximate query processing system
Paper title
Big Data Analysis and Query Optimization Improve HadoopDB Performance [9]
Efficient Query Handling On Big Data in Network Using Pattern Matching Algorithm: A Review [10]
Blink and It’s Done: Interactive Queries on very Large Data [11]
Table 1 (continued) Framework/experiment setup
The optimization process is based on finding the set of columns for stratifying by monitoring data distribution past queries, storage constraints and several other system related factors. The storage system is integrated HIVE/HADOOP/HDFS stack. The memory caching technique of spark is utilized for fast processing of created samples
Query arriving at server is partitioned into word. Partition algorithm works according to data arriving on the server and create partitions. Every partition will have an indexing system which is applied during matching and analyzing the data patterns. Through patterns related queries are found and executed faster
Queries will be submitted to YSmart, which convert them into series of MapReduce jobs. Data storage is done using MonetDB. They have implemented new security mechanism which was missing in Hadoop to ensure MapReduce integrity. They use the idea given by SecureMR into existing MapReduce system
Result
Experiments are done on TPC-H benchmark and on real-world video content from Conviva Inc. BlinkDB provides faster execution up to 150× as compared Hive on MapReduce and 10–150× faster than Shark over tens of terabytes of data
Real-time data is used during research. According to authors pattern matching algorithm along with MapReduce will provide good performance during query processing
Experiment is still in progress hence no comparison is done
Drawback
(continued)
System suffers from long start-up times and high level of buffering. Authors are diagnosing the above problems to make their system more efficient and fast
System is tested only for range-aggregate queries
Users must have knowledge of working with MonetDB and YSmart along with Hadoop
Big Data and Query Optimization Techniques 341
Problem discussed/technique
Authors presented a model for querying real-time irregular data stream. This model is designed especially for real-time applications like traffic control systems, surveillance systems and health monitoring systems. Such systems require that their queries should be finished in deadlines
Users need to use very large join queries to support them in their business decisions. There is requirement of new algorithms which tackle complexity level of such queries and fulfill good performance requirements Genetic Algorithms are a powerful search technique used in many problems successfully. Authors have proposed genetic algorithm for query optimization for complex queries
Authors have identified many of the common issues, themes, and approaches that pervade query optimization work in relational databases, distributed databases and data warehousing environment
Paper title
RTSTREAM: Real-Time Query Processing for Data Streams [12]
Query Optimization by Genetic Algorithm [13]
An Extensive Survey on Various Query Optimization Techniques [14]
Table 1 (continued) Framework/experiment setup
Authors have discussed various query optimization techniques along with the strong points. Their survey shows that based on database system (i.e. relational, distributed, data warehouse) query optimization techniques have been evolved
Authors have designed Carquinyoli Genetic Optimizer (CGO). Here, every member in the population is a valid query execution plan (QEP). Each QEP is considered as a program for the problem of finding a good access path to retrieve the required data. Crossover and mutation operations are applied on QEPs per generation until stop criterion is met
Here, periodic real-time queries are generated which are managed by RT-Stream prototype. This prototype gives deadline miss ratio for execution of such queries
Result
From relational databases to data warehouse, each optimization algorithm works well on some specific problem area and till now there are no standard criteria to compare such techniques. Further, it can be concluded that query optimization is a vast research area and can be extended in several ways. Despite many years of work, significant open problems remain
CGO is applied on a relational database schema which contains a set of relations that are linked through primary and foreign keys. Queries having more no of joins (more than 16 joins) are tested. The selection method and the best fitness function are used for processing the chromosome (individuals) which decreases time and CPU cost according the no of relations
The system is developed on top of STREAM data stream management system prototype developed at Stanford University. The prototype has improved query specification language along with parser
(continued)
Since, this survey paper gives an idea of various query optimization techniques, no drawback can be derived for authors work
Aggregate queries are not tested with proposed method
Drawback
342 A. Chugh et al.
Problem discussed/technique
Most of existing techniques only focuses on optimizing OLAP queries, and are ignorant to track changes done in OLTP data since the last loading. For real-time (RT) analytics, the OLAP data must be refreshed to get efficient results which support time deadlines too
Ad hoc queries in the large clusters environment require fast query response time. Authors designed an efficient massive data query and optimization mechanism SemanQuery
Current techniques for range-aggregate queries cannot provide accurate and fast results when data is big and complex
Paper title
R-Store: A Scalable Distributed System for Supporting Real-time Analytics [15]
Massive Data Query Optimization on Large Clusters [16]
FastRAQ: A Fast Approach to Range-Aggregate Queries in Big Data Environments [17]
Table 1 (continued) Framework/experiment setup
FastRAQ (fast approach to range-aggregate queries) first divides big data into independent partitions with a balanced partitioning algorithm, and then generates a local estimation sketch for each partition. For answering a range-aggregate query, FastRAQ system obtains local estimates from all partitions and summarizes them to provide result
All files will be stored in the local file system. When the SemanQuery get the users’ query requirements, SemanQuery will make a semantic matching with the big query network. A big query network is constructed for optimizing query execution
In this work, authors have used MapReduce for large scale real time OLAP processing. While forming key-value pair, value will be the recent query submission time. The designed scalable distributed RTOLAP system called R-Store is a storage system. It uses multi-versioning where timestamp is associated with each version. Hence, OLAP query uses the recent version of data and each OLTP transaction produces a new version
Result
Implementation is done on the Linux platform with about 10 billions data records. Experimental results demonstrate that range queries are executed within a time period two orders of magnitude lower than that of Hive
Comparison of execution cost shows that queries perform better when run on SemanQuery
Experimental study is conducted on a cluster with more than one hundred nodes using TPC-H data. The system consists of four components: a distributed key/value store, a MapReduce system which is used for processing large scale OLAP queries, a streaming system which maintains the real-time data cube, and a MetaStore for storage purpose. The throughput increases with increase in the number of nodes. Proposed system offers good scalability
Drawback
Proposed approach handles range queries only
It only works in offline mode
Experiment conducted shows that OLTP performance degrades little bit but the response time and throughput were good and acceptable
Big Data and Query Optimization Techniques 343
344
A. Chugh et al.
research work will focus more on optimization to support scalability, since companies doing analytics will scale out to hundreds or even thousands of nodes.
References 1. Bertino, E., et al. (2012). Challenges and opportunities with big data white paper (pp. 1–16). 2. Devisetti, N., & Gupta, M. Data challenges in telecommunications networks and a big data solution, white paper. Incedo Solution. 3. Balkesen, C., et al. (2018). RAPID: In-memory analytical query processing engine with extreme performance per watt. In Proceedings of the 2018 International Conference on Management of Data SIGMOD’18 (pp. 1407–1429), 10–15 June 2018. 4. Alikoski, S. (2017). Improving the monitoring of telephone network with Analytics. Thesis submitted for fulfillment of B.E at Helsinki Metropolia University of Applied Sciences. 5. Park, K., & Peng, L. (2016). A design of high-speed big data query processing system for social data analysis: Using spark SQL. International Journal of Applied Engineering Research, 11(4), 8221–8225. ISSN 0973-4562. 6. Fegaras, L. (2016). Incremental query processing on Big Data streams. IEEE Transactions on Knowledge and Data Engineering, 28(11), 2998–3012. 7. Vinay Kumar, A., & Madhuri, A. (2015). Query optimization of big data using hive. International Journal of Computer Sciences and Engineering, 3(9), 135–139. 8. Karanasos, K., et al. (2014). Dynamically optimizing queries over large scale data platforms. In Proceedings of the ACM SIGMOD International Conference on Management of Data, SIGMOD’14 (pp. 943–954). 9. Bissiriou, C. A. A., & Chaoui, H. (2014) Big data analysis and query optimization improve hadoop DB performance. In Proceedings of the 10th International Conference on Semantic Systems, SEM ‘14 (pp. 1–4). 10. Kale, P., & Mohanpurkar, A. (2014). Efficient query handling on big data in network using pattern matching algorithm: A review. International Journal of Science and Research (IJSR), 3(11), 2247–2250. 11. Agarwal, S., et al. (2012). Blink and It’s done: Interactive queries on very large data. Proceedings of the VLDB Endowment, 5(12), 1902–1905. 12. Wei, Y., et al. (2006). RTSTREAM: Real-time query processing for data streams. In Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC’06). 13. Butey, P. K., et al. (2012). Query optimization by genetic algorithm. Journal of Information Technology and Engineering, 3(1), 44–51. 14. Thangam, A. R., et al. (2016). An extensive survey on various query optimization techniques. International Journal of Computer Science and Mobile Computing, 5(8), 148–154. 15. Li, F., et al. (2014). R-Store: A scalable distributed system for supporting real-time analytics. In ICDE Conference. IEEE. 16. Zhang, G., et al. (2012). Massive data query optimization on large clusters. Journal of Computational Information Systems, 8, 3191–3198. 17. Yun, X., et al. (2015). FastRAQ: A fast approach to range-aggregate queries in big data environments. IEEE Transactions on Cloud Computing, 3(2), 206–218. 18. Sharma, K. P., Poonia, R. C., & Sunda, S. (2018). Real time location tracking map matching approaches for road navigation applications. Data Intensive Computing Applications for Big Data, 29, 414.
Big Data and Query Optimization Techniques
345
19. Gupta, S., Poonia, R. C., Singh, V., & Raja, L. (2019). Tier application in multi-cloud databases to improve security and service availability. In Handbook of research on cloud computing and big data applications in IoT (pp. 82–93). IGI Global. 20. Sharma, K. P., Poonia, R. C., & Sunda, S. (2018). Map matching algorithm: Curve simplification for Frechet distance computing and precise navigation on road network using RTKLIB. Cluster Computing, 1–9.
Categorization and Classification of Uber Reviews Mugdha Sharma, Daksh Aggarwal and Divyasha Pahuja
Abstract This paper presents a technique for the categorization of reviews of the brand, Uber. This paper contains a classification algorithm which takes textual data as input. This algorithm takes many reviews and concepts (say, cost, safety, etc.). This algorithm is performed on online conversations happening on social media, taking into account the considered concepts. Further, the categorized reviews are classified according to the sentiment (that is, positive and negative). This paper also performs a comparison of different algorithms—Naïve Bayes, KNN, decision tree and random forest. The results of comparison of these different models are then represented using certain identified parameters. Keywords Opinion mining · Classification · Categorization · Sentiment analysis · Natural language processing · Twitter · Uber reviews
1 Introduction The unremitting digitalization is bringing a whole lot of different types of data into action. The data is present on different social platforms in sundry forms. Some of the data include complaints and feedbacks for various brands. These grumbles and feedbacks in form of comments, tweets, etc., can be used by brands to improve the services they provide or to work on some specific areas. So, the overall business can be improved if meaningful insights are drawn from the social media platforms for specific brands. The unprejudiced set for the study was to categorize the reviews of Uber present on Twitter and Uber application into different categories and concepts (say cost, safety, service, etc.) and to classify them as either positive or negative. The M. Sharma (B) · D. Aggarwal · D. Pahuja Bhagwan Parshuram Institute of Technology, Rohini, India e-mail: [email protected] D. Aggarwal e-mail: [email protected] D. Pahuja e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_31
347
348
M. Sharma et al.
data retrieved is then presented in a graphical format for easy understanding. The methodology part explains how the classification and categorization are achieved through a proper process. First, the data is extracted and polished. A data dictionary is created containing all the synonyms of the label categories that are required (say safety, price, etc.). After this, an algorithm is applied that provides the multiclass categorization followed by the polarity judgment using the Naïve Bayes classification. The data extracted is presented in bar graph form for easy understanding. The proposed approach helps the organization to recognize the reaction of thousands of people using their services in various sectors, and at the same time to indicate which areas of business lag behind and have scope of improvement. The algorithm created is simple and efficient which gives big organizations a platform to analyze people’s introspection of their services. This approach is better than others as it gives an idea of the peoples’ sentiment and reaction for each aspect whereas other approaches only provide with the sentiment overall. The paper also discusses briefly Uber and the reason for picking up the brand for study and analyses. The final section of the paper discusses the conclusion and the future scope of the paper.
2 Literature Review The approaches considered for mining the customer reviews have been consulted from the following: Paper [1] performs sentiment analysis of reviews and feedbacks of Uber sourced from Facebook. This paper presents the technique of sentiment analysis, as well as the methods and stages it involves and discloses how Uber is perceived by its customers. Similar approaches for performing sentiment analysis on different datasets, in particular: Twitter Messages [2], Parents Feedback of Institutes [3] and Facebook Group [4], and in [5]. In addition to the explanation of the working of opinion mining using Rapid Miner, paper [6] performs parametric study of different classification algorithms. The comparison of different algorithms used in sentiment analysis is also done in [7, 8]. Saif et al. [9] use a lexicon-based approach. This paper demonstrates the value of contextual semantics of words for gathering sentiments of tweets from three different datasets. It used Thelwall-Lexicon as a case study and SentiCircle approach to gather the contextual semantics, while Ding et al. [10] propose a holistic lexicon-based approach that deals with excerpts that affect the opinion based on their linguistic patterns. In paper [11], the model created for opinion mining is used to get results for higher order n-grams. Naïve Bayes and SVM classifiers are proposed. Feature-based extraction and opinion mining are performed in [12]. Lexicon-based, Statistical and Intelligent Feature selection approaches are discussed for defining the polarity of opinion word. Mishra et al. [13] use dictionarybased approach to accomplish the same. In the paper [14], Twitter Vigilance platform is designed, which is a tool for gathering and analyzing Twitter data, presenting sentiment analysis of textual content. Paper [15] presents an algorithm for mining of sentiments on different platforms. It has three propositions: sentiment classification,
Categorization and Classification of Uber Reviews
349
feature-based sentiment analysis, and comparative sentences and relation analysis. Munjal et al. [16–18] proposed some new strategies for sentiment analysis and opinion dynamics using natural phenomenon.
3 Why Choose UBER At the time of Uber’s foundation, the need of the market was affordable drivers to have easy contact with their passengers for a smooth sailing taxi service. Uber’s idea took the form of a mobile application named uberPOP. Through this application, passengers could receive fast transportation at a budget-friendly fare. The application’s purpose was to match drivers with their passengers. Uber now is one of the world’s largest global transportation service providers. This business model was successful due to the presence of some key elements. These elements served to provide a clear real-time connection between both app users, the passengers and the drivers. The reason why people could get inexpensive transportation is the display of fare upfront as the passenger is booking the taxi. This promoted the idea of a clear expenditure estimate in the mind of the customer. Furthermore, traffic control and pollution reduction increased as private cars were used efficiently. Uber was growing as a startup and becoming more and more diverse. The growth led to a lot of problems and the need for a mechanism for the brand to recognize the problems and the categories they fall into. Keeping the above factors this research paper chooses Uber for the study.
4 Data Sources Data plays an important role in any application. So the selection of data is important for the application to run with high accuracy. The data sources used for this paper are.
4.1 Twitter Tweets A lot of opinions are represented using tweets on Twitter. So the data from Twitter is extracted using Twitter API and then data cleaning and further processes are applied to make it usable. Tweepy is used to extract the tweets posted on Twitter. Tweepy is a python library which provides access to the Twitter API so we can get hold of any functionality that Twitter API offers. Tweepy gives access to Twitter through OAuth, which is the authentication system used by Twitter. The tweets are monitored using user_timeline() function.
350
M. Sharma et al.
4.2 Uber App Reviews The official app reviews form the most essential part of data. Uber app is the foremost place where reviews related to any problem are posted. Kaggle is used to cater to the need. It provides with the dataset from the Uber app. Kaggle provides the data extracted from Uber app using web scrapers. The data is represented in.csv format which is ideal for analysis.
5 Methodology This paper defines a step-by-step approach for achieving the desired results. Figure 1 shows the proposed workflow. First, the categories are decided, i.e., the classes on which the positive and the negative sentiments are to be found. This paper defines five such classes, namely, cancel, payment, price, safety, and service.
5.1 Data Loading and Data Cleaning Data loading means to load the unclean data onto the software on which the analysis is to be performed. Preprocessing of data needs to be done. First preprocess task is to clean the data, i.e., to remove all the redundancies and inconsistencies present in the original data. Cleaning of data is done by: • • • •
Representing the review in lower case. Removal of all symbols, digits, and everything except alphabets. Removal of extra spaces and truncation of sentences. Stemming of words.
The data is stemmed (or lemmatized in this case), so that the word is transformed to its root form which makes it easier to evaluate the data. The data cleaning process is done using regular expressions. The re library in python is used to do so. And the nltk library consists of the functions for stemming and lemmatizing of words. After data preprocessing, the main data mining techniques are to be applied.
5.2 Applying Data Mining Techniques For the main process, a data dictionary is created. The data dictionary contains synonyms for the words of the specified categories, i.e., cancel, payment, price, safety, and service. The synonyms for the determined concepts are gathered using WordNet corpus of nltk library.
Categorization and Classification of Uber Reviews Fig. 1 Implementation process
351
352
M. Sharma et al.
After the dictionary creation, an algorithm to group all the reviews together in their respective categories is applied. This is done using a complex comparison of all the words of the review with all the category synonyms and if a match occurs then the review is added to that category. A review can belong to one or more than one concept. Now each category consists of a set of reviews which are then classified according to sentiments. The main process of sentiment analysis, i.e., the judgment of the polarity of the review is performed using the Naïve Bayes classification algorithm which is a probabilistic approach for review classification. A bag of words model is created for the features. The Naïve Bayes classification classifies the reviews belonging to a particular category as positive or negative. The model is trained on the available dataset. The predicted sentiments are now compared with the attached data of sentiments. This forms the test set for the model.
5.3 Classifier Selection They are used to show the classifier type the algorithm is based on. Probabilistic, linear, decision-based classifiers are some of the classifiers available. The classification models tested in this paper are: • • • •
Naïve Bayes, KNN, Decision tree, and Random forest.
From the comparison shown in Table 1, it can be concluded that Naïve Bayes algorithm is plain sailing and easier to understand and apply as compared to others. But it can be seen that random forest classification model has the best accuracy on our chosen dataset. At the end, the accuracy of the system depends on factors like the chosen domain, sources of data, and even the cleaning methods involved for data preprocessing. Other factors like Precision and Recall are also considered for a good comparison and analysis of the different models of classification. Table 1 Comparison of classifiers Algorithm
Naïve Bayes
KNN
Decision tree
Random forest
Understanding complexity
Less
Very less
Moderate
Moderate
Theoretical accuracy
Moderate
Very less
Moderate
High
Theoretical training speed
High
Very less
Low
Low
Performance with small observations
High
Low
Low
Low
Accuracy
90.28
50
94.02
95.5
Categorization and Classification of Uber Reviews
353
5.4 Evaluation Parameters The dataset which was used was segmented into positive and negative classes. The four cases for the given reviews and classifiers are: true positive, true negative, false negative, and false positive. If the review is labeled positive and is classified as positive it is taken into account as true positive (TP) else if it is classified as negative it is counted false negative (FN). Similarly, if a document is labeled negative and is classified as negative it is counted as true negative (TN) else if it is classified as positive it is considered as false positive (FP). Based on these outcomes, a two by two confusion matrix can be drawn for a given test set. The following metrics can be derived from the confusion matrix (Table 2): • • • •
Accuracy, Precision, True positive rate/Recall, and F-measure.
Accuracy =
TN + TP TN + TP + FN + FP
(1)
TP TP + FN
(2)
Precision = Recall = F1 =
Table 2 Confusion matrix
TP TP + FN
(3)
2 ∗ Precision ∗ Recall Precision + Recall
(4)
#
Predicted positives
Predicted negatives
Actual positive cases
Number of true positive cases (TP)
Number of false negative cases (FN)
Actual negative cases
Number of false positive cases (FP)
Number of true negative cases (TN)
354
M. Sharma et al.
Fig. 2 Positive and negative reviews in each category
5.5 Knowledge Presentation The main process is now completed, i.e., the knowledge has been extracted and just needs to be presented in a suitable format for easy use and understanding. The final results are shown graphically. The bar graphs are used to display the positive and the negative comments for a particular category. Figure 2 shows the results obtained and its graphical representation.
6 Conclusion and Future Work In the paper, the comprehensive process for reviews and extraction of the meaning of these reviews has been discussed. Second, the paper shows a survey of diverse classifiers which shows that Naïve Bayes classifier best suits the working conditions. Moreover, this paper presents a comparison of the various techniques on the basis of our recognized parameters. The project has a huge and achievable future scope keeping in mind the time as well as economic constraints. The future scope includes using the technique of boosting to get more advanced and accurate results. Moreover, the project could be developed to support multilingualism or the reviews from different languages. Also, the various forms of writing need to be considered to handle the reviews with utmost accuracy, for example, the model should be able to detect sarcasm and the tone or context of the review.
Categorization and Classification of Uber Reviews
355
References 1. Baj-Rogowska, A. (2017). Sentiment analysis of Facebook posts: The Uber case. In 8th IEEE International Conference on Intelligent Computing and Information Systems (ICICIS) (pp. 2–5). 2. Kapil,P., & Sahoo, S. K. (2017). Message classification for Twitter data (pp. 2–7). IIT Patna, Bihar. 3. Patel, T., Undavia, J., & Patel, A. (2015). Sentiment analysis of parents feedback for educational institutes. International Journal of Innovative and Emerging Research in Engineering, 2(3), 2–3. 4. Akter, S., & Aziz, M. T. (2016). Sentiment analysis on Facebook group using lexicon based approach. In ICEEICT (pp. 1–3). 5. Bhuta, S., Doshi, A., Doshi, U., & Narvekar, M. (2014). A review of techniques for sentiment analysis of Twitter data. In Issues and Challenges in Intelligent Computing Techniques (ICICT) (pp. 583–591). 6. Dhivya Bino, D. V., & Saravanan, A. M. (2016). Opinion Mining from student feedback data using supervised learning algorithms. In 3rd MEC International Conference (pp. 3–5). 7. Desai, M., & Mehta, M. A. (2016). Techniques for sentiment analysis of Twitter data: A comprehensive survey. In International Conference on Computing and Automation (ICCCA) (pp. 1–5). 8. Jain, A. P., & Katkar, V. D. (2015). Sentiments analysis of Twitter data using data mining. In International Conference on Information Processing (ICIP) (pp. 1–4). 9. Saif, H., He, Y., Fernandez, M., & Alani, H. (2014). Adapting sentiment lexicons using contextual semantics for sentiment analysis of Twitter (pp. 3–7). Knowledge Media Institute, The Open University, United Kingdom. 10. Ding, X., Liu, B., Yu, P. S. (2008). A holistic lexicon-based approach to opinion mining (pp. 4– 7). Department of Computer Science University of Illinois at Chicago, Morgan Street Chicago. 11. Tripathi, G., & Naganna, S. (2015, June). Feature selection and classification approach for sentiment analysis. Machine Learning and Applications: An International Journal (MLAIJ), 2(2), 5–11. 12. Tribhuvan, P. P., Bhirud, S. G., Tribhuvan, A. P. (2014). A peer review of feature based opinion mining and summarization. International Journal of Computer Science and Information Technologies (IJCSIT), 5(1), 247–250. 13. Mishra, P., Rajnish, R., & Kumar, P. (2016). Sentiment analysis of Twitter data: Case study on digital India. In International Conference on Information Technology (InCITe) (pp. 3–5). 14. Cenni, D., Nesi, P., Pantaleo, G., & Zaza, I. (2017). Twitter vigilance: A multi-user platform for cross-domain Twitter data analytics, NLP and sentiment analysis (pp. 2–6). Department of Information Engineering (DINFO), University of Florence, Florence, Italy. 15. Kasture, N., & Bhilare, P. (2015). An approach for sentiment analysis on social networking sites. In Computing Communication Control and Automation (ICCUBEA) (pp. 390–395). 16. Munjal, P., Kumar, S., Kumar, L., & Banati, A. (2017). Opinion dynamics through natural phenomenon of grain growth and population migration. In Hybrid Intelligence for Social Networks (pp. 161–175). Springer, Cham. 17. Munjal, P., Narula, M., Kumar, S., & Banati, H. (2018). Twitter sentiments based suggestive framework to predict trends. Journal of Statistics and Management Systems, 21(4), 685–693. 18. Munjal, P., Kumar, L., Kumar, S., & Banati, H. (2019). Evidence of Ostwald Ripening in opinion driven dynamics of mutually competitive social networks. Physica A: Statistical Mechanics and its Applications.
Review Paper on Novel Approach Improvising Techniques for Image Detection Using Deep Learning N. Satyanarayana Murthy
Abstract Convolutional Neural Network (CNN) architecture is a class of deep learning or deep neural networks, used for analyzing visual information. Traditional CNN architecture has large datasets useful for image classification and recognition. But the datasets in CNN are limited and take time for scene recognition tasks. The time taken for recognizing images plays a crucial role in deep learning. As the datasets are large in number, the object should be compared with millions of images from the dataset, and the time for object recognition goes on increasing. Scene-centric data collection, semantic segmentation, feature selection, and use of residual learning framework to improve the object detection and recognition with respect to time and improve the dataset collection. Keywords Convolutional neural network deep learning · ImageNET
1 Introduction Deep learning to know is a subset of device learning in artificial intelligence that has networks capable of gaining knowledge of unsupervised from records; this is unstructured or unlabeled also known as deep neural learning; CNNs enable studying statistics-driven, relatively representative, layered hierarchical photo features from enough training data. This training data is available for object recognition containing a number of class sets. Some of them are ImageNET [1, 2], SUN Attribute database, SUN database, MIT Indoor67, and Places database [3]. ImageNet is a picture database prepared in step with WordNet hierarchy wherein each node of the hierarchy is depicted by masses and lots of snapshots. In SUN Attribute data, there are 397 subclasses, and in MITIndoor 67, there are 67 classes available. The places database is 60 times larger than the SUN database which helps in accurate recognition of the object. Scenecentric data collection, semantic segmentation, feature selection, and use of residual N. Satyanarayana Murthy (B) ECE Department, V R Siddhartha Engineering College, Vijayawada, India e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_32
357
358
N. Satyanarayana Murthy
learning framework to improve the object detection and recognition with respect to time and improve the dataset collection. CNN architecture is a large database and when combined with the abovementioned datasets, the results are more accurate. CNN [4] recognizes the objects either as object-centric or scene-centric [5]. Objectcentric focuses only on the images and does not contain the richness and diversity of visual information. Feature selection [6] is a technique which is used to reduce computational time of image recognition, improves prediction performance and better understanding of data in pattern recognition applications. Simultaneous Detection and Segmentation (SDS) [7] is a system which objectives to come across all times of a category in a photo and for each instance, it marks the pixels that belong to it. Residual network (ResNets) [8] is a network in which a deep network is split into three layer chunks and passing the enter into every chew instantly thru to the next chunk. ResNets breakdown a completely deep simple neural community by using skip or shortcut connections to shape bigger networks. Combining these photo reputation techniques, we can improve overall performance in correlation with time and for accuracy in object detection.
2 Problem Overview In traditional CNNs, we use object-centric which contains information only about a particular object. But in contrast, scene-centric gathers the information of scene along with the object. Object-centric versus scene-centric [9]. CNNs are specific iconic images of objects do now not contain the richness and variety of visual statistics that images of scenes and environments offer for learning to recognize them. The CNNs [10] require widely extensive stretches of preparing time to upgrade a huge number of parameters that parameterize the model. If there should be an occurrence of recordings, its trouble is additionally aggravated, when broadens the network of CNN design. The function of feature selection is to opt a subset of variables from the input while reducing effects from noise and still provide better prediction results. In the past years, pattern recognition domain applications have expanded from tens to hundreds of variables or features. The task in object detection is to mark out bounding containers round each item of a selected category in a picture. The expected bounding field [11] needs to overlap by greater than 50% with a floor fact box then only the object receives detected. The number of layers in deep convolutional neural networks [12, 5] is correlated to overall performance in photograph recognition obligations. Creation of deep neural networks is not as simple as adding layers. By creating deep networks, two problems may come into picture: (1) vanishing [13] or exploding gradients which hamper convergence and (2) degradation (saturation of accuracy). Vanishing gradient problem is a difficulty found in training artificial neural networks with backpropagation and gradient-based learning methods. A network is ready to be taught as soon as it has been based for a specific software. To start the process
Review Paper on Novel Approach Improvising Techniques …
359
of schooling, initial weights are selected randomly. The trouble is that the gradient will be vanishingly small, thereby stopping the load from converting its fee. While deeper networks are converged the degradation hassle arises. Because the depth of community increases the accuracy receives saturated, thereby degrading rapidly.
3 Feature Selection Characteristic selection [14] is a way which gets rid of undesirable variables so that you can enhance prediction overall performance and additionally to lessen the computing time. Some of the opposite areas in which feature choice is used are said below: • • • •
It enables the device learning algorithm to train quicker. It reduces the complexity of a model and makes it less complicated to interpret. It improves the accuracy of a version if the proper subset is chosen. It reduces overfitting. This technique involves methods like filter, wrapper, and embedded.
3.1 Filter Methods Filter methods as shown in Fig. 1 act as a preprocessing step to rank features [15]. The selection of features is independent of any deep learning algorithms. Instead, features are selected on the basis of their ranks in various statistical tests.
3.2 Wrapper Methods In wrapper methods as shown in Fig. 2, we extract a subset of functions to educate a version using them. Primarily based on the inferences, a decision is made to add or put off features from the subset.
Fig. 1 Flowchart involved in filter method
360
N. Satyanarayana Murthy
Fig. 2 Flowchart of wrapper methods
Fig. 3 Bounding boxes around different objects in a scene
4 Simultaneous Detection and Segmentation Bounding boxes are imaginary boxes that are around objects that are being compared with objects in the datasets as shown in Fig. 3. Simultaneous detection [16] means the detection of objects which overlap more than 50% with ground truth box with that of the bounding box. Semantic segmentation [17] assigns category label to all the pixels in an image. It also involves standard metric (it computes the intersection over union, IoU), which is used to evaluate algorithms. It easily marks out object pixels in the image, but not how many objects are present.
5 Residual Network These networks are used to overcome the problems of vanishing gradient and saturation of accuracy. ResNets [18, 19] breakdown the obvious networks into small chunks of networks connected thru quick connections or skip connections to form large networks A ResNet uses two varieties of blocks specifically (1) identification block and (2) convolution block. Those blocks are differentiated bases on the dimensions of the input and output.
Review Paper on Novel Approach Improvising Techniques …
361
5.1 Identity Block This block corresponds to the case where the input has the same dimensions as the output and it is a standard block in ResNets. This block makes use of two paths: (1) shortcut path and (2) main path.
5.2 Convolution Block The convolution layer is added in the shortcut path when the dimensions of the input do not match the output. A plain model can be converted to a residual version, with the help of skip and shortcut connections. When dimension increases there are two options: 1. To increase the dimensions, the shortcut still performs identity mapping with zero padding. 2. Utilizing 1 × 1 convolution, the shortcut can be used to match the dimensions. There are two kinds of residual connections as shown in Fig. 4: 1. When both input and output have similar dimensions, the block function used is as follows: y = F(x, {Wi }) + x.
(1)
2. When input and output have different dimensions, the block function is as follows: y = F(x, {Wi }) + Ws x.
Fig. 4 Building block of residual learning [20]
(2)
362
N. Satyanarayana Murthy
6 Conclusion In deep learning, scene-centric CNN recognitions are more useful than object-centric as it improves the relative information between the objects stored in datasets. Scene selection contains richness and diversity of visual information. Feature selection improves the prediction performance and reduces the computing time for the object to be detected. It also removes the unwanted variables which are below the threshold matching parameter. SDS improves state-of-the-art n object detection and semantic segmentation. The training of substantially deeper networks can be easily performed with the help of residual learning framework. By decreasing the width and increasing the depth of networks, it results in less extra parameters, thereby reducing the effect of vanishing gradient problem.
References 1. Deng, J., Dong, W., Socher, R., Li, L.-J., Li, K., & Fei-Fei, L. (2012). ImageNet: A large-scale hierarchical image database. 2. Krizhevsky, A.., Sutskever, I., & Hinton, G. E. (2012). ImageNet classification with deep convolutional neural networks. 3. Zhou, B., Lapedriza, A.., Xiao, J., Torralba, A.., & Oliva, A. (2014). Learning, deep features for scene recognition using places database. In NIPS. 4. Bengio, Y. (2009). Learning deep architectures for AI. Foundations and trends in Machine Learning. 5. Kalliatakis, G. E., Ehsan, S., Leonardis, A.., & McDonald-Maier, K. (2018). Exploring objectcentric and scene-centric CNN features and their complementarity for human rights violations recognition in images. 6. Chandrashekar, G., & Sahin, F. (2014). A survey on feature selection methods. Computers and Electrical Engineering, 40(1), 16–28. 7. Hariharan, B., Arbeláez, P., Girshick, R., & Malik, J. (2014). Simultaneous detection and segmentation. 8. He, K., Zhang, X., Ren, S., & Sun, J. (2015). Deep residual learning for image recognition. 9. Herranz, L., Jiang, S., & Li, X. (2018). Scene recognition with CNNs: Objects, scales and dataset bias. 10. Doersch, C., Gupta, A.., & Efros, A. A. (2013). Mid-level visual element discovery as discriminative mode seeking. In In Advances in Neural Information Processing Systems. 11. Ha, J., Haralick, R. M., & Phillips, I. T. (2002). Document page decomposition by the boundingbox project. 12. Bare, B., Li, K., & Yan, B. (2017). An accurate deep convolutional neural networks model for no-reference image quality assessment. 13. Walia, A. S. (2017). The vanishing gradient problem. https://medium.com/@anishsingh20/thevanishing-gradient-problem-48ae7f501257. 14. Cai, J., Luo, J., Wang, S., & Yang, S. (2018). Feature selection in machine learning: A new perspective. 15. Kaushik, S. (2016). Introduction to feature selection methods with an example. https://www. analyticsvidhya.com/blog. 16. Li, C., Dobler, G., & Song, Y. (2017). TrackNet: Simultaneous detection and tracking of multiple objects. 17. Chen, L.-C., Papandreou, G., Kokkinos, I., Murphy, K., & Yuille, A. L. (2018).
Review Paper on Novel Approach Improvising Techniques …
363
18. Brenner, M. (2017). Deep residual networks. wiki.tum.de/display/lfdv/Deep+Residual+ Networks. 19. Sahoo, S. Residual blocks—Building blocks of ResNet. https://towardsdatascience.com/ residual-blocks-building-blocks-of-resnet-fd90ca15d6ec. 20. Understanding and Implementing architectures of ResNet and ResNeXt for state-of-theart image classification: From Microsoft to Facebook. https://medium.com/@14prakash/ understanding-and-implementing-architectures-of-resnet-and-resnext-for-state-of-the-artimage-cf51669e1624. 21. Simonyan, K., & Zisserman, A. (2015). Very deep convolutional networks for large-scale image recognition. In ICLR.
Comparative Analysis of Selected Variant of Spider Monkey Optimization Algorithm Basudev Sharma, Vivek Kumar Sharma and Sandeep Kumar
Abstract Spider Monkey Optimization (SMO) algorithm is recently developed optimiser that is stimulated by the extraordinary social activities of spider monkeys known as fission–fusion social structure. The SMO is developed to find the solution of difficult optimization problems in real world, which are difficult to solve by the available deterministic strategies. Here, three modifications in SMO algorithm are selected for the purpose of comparison, namely, exponential SMO, chaotic SMO and sigmoidal SMO. These modifications suggested new strategies for selecting perturbation rate in local leader and local leader decision phase. These strategies replaced linear approach of perturbation by nonlinear functions. The proposed strategies are tested over a set of benchmark functions. Keywords Spider monkey optimization · Optimization · Fission–fusion social structure · Exponential SMO · Swarm intelligence · Nature-inspired algorithm · Chaotic SMO
1 Introduction Bansal et al. [2] developed SMO optimizer based on the extraordinary social movement of spider monkeys. SMO is getting popularity very fast due to applicability on a wide range of problems. Various modifications are done in SMO to improve performance of basic SMO for various types of problem in the last 5 years. Kumar et al. anticipated customised position update in SMO [10], self-adaptive spider monB. Sharma · V. K. Sharma Jagannath University, Jaipur, Rajasthan, India e-mail: [email protected] V. K. Sharma e-mail: [email protected] S. Kumar (B) Amity University, Jaipur, Rajasthan, India e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_33
365
366
B. Sharma et al.
key optimization [11] and improved SMO [16] with some modifications. Pal et al. solved multilevel thresholding problem using SMO [12] and based on experimental study conclude that SMO outperforms PSO for considered problem. A tournament selection-based probability computation strategy is introduced in SMO [3] to avoid premature convergence as it enhances the diversity of population. In basic SMO [2], solutions with higher fitness are considered more suitable for the next iteration that results in attraction of swarm in the proximity of highly fitted solution. Sometimes, solution with low fitness also contains useful information. In order to provide a chance to low fitted solution to update their position, a tournament selection strategy is introduced in SMO by Gupta et al. [3]. The SMO was expended by Sharma et al. [13] for optimization of parameters in PIDA controller. Another local search strategy incorporated by Sharma et al. [14] in SMO is based on limaçon local search. Gupta et al. [4] also added a local search step in SMO to get rid of unconstrained optimization problems using quadratic approximation. Some other variants of SMO are modified SMO [6] using metropolis principle, constrained SMO using Debs technique [5], hybrid of SMO and GA [1] and fitness-based position update in [7]. Detailed study of SMO is available in [15]. Here a new variant od SMO proposed with new strategy to decide perturbation rate ( pr ) using sigmoidal function and named as sigmoidal SMO (SSMO). The modified pr in SSMO shows better convergence accuracy, efficient global search and faster convergence rate. Rest of the paper is arranged as follows. Section 2 encapsulates SMO in brief. Section 3 discusses three recent variants of SMO. Comparative analysis of ESMO, CSMO and SSMO on different benchmarks along with statistical analyses has been discussed in Sect. 4. Section 5 concludes this paper.
2 SMO Algorithm Spider monkeys are mostly found in Mexico, Brazil and South America. They belong to the family of Ateles. It is from the class of genus, and it is an endangered species. Mostly spider monkeys live in a band of 40–50 monkeys but they divide the large group into small size groups to forage in morning and combine in a single group in the evening. Here, initially the group is headed by senior most female member (G L), and she is liable for all the activities of group. If food is not sufficient, then she has to decide about the division of group. Subsequently, all the subgroups are also headed by female leader (L L). This phenomenon is termed as fission–fusion social structure (FFSS). The SMO stimulates this FFSS organisation of spider monkeys and a mathematical model proposed by Bansal et al. [2]. The SMO comprises six phases as per the behaviour of spider monkeys in real life. Initially, all SM randomly initializes N spider monkeys that are analogous to solutions. Each individual is denoted by a vector S Mi j of D-dimension, where S Mi j represent ith individual in jth dimension. Initialization of S Mi j is defined by Eq. 1: S Mi j =S Mmin j + φ(0, 1) × (S Mmax j − S Mmin j )
(1)
Comparative Analysis of Selected Variant …
367
where S Mmin j and S Mmax j are bounds of S Mi in jth direction and φ(0, 1) denotes an arbitrary value between 0 and 1. Next subsections illustrate the phases of SMO.
2.1 Local Leader Phase (LLP) During LLP, every individual updates their position using Eq. (2) according to the intelligence and experience of members of group as well as local leader (L L). Greedy selection mechanism is used to update the position of individuals.
S Mi j = S Mi j + φ(0, 1) × (L L k j − S Mi j ) + φ(−1, 1) × (S Mr j − S Mi j )
(2)
Here, the position of local leader is denoted by L L k j and rth SM is denoted by S Mr j .
2.2 Global Leader Phase (GLP) During GLP, knowledge of global leader (G L) and participants of group employed to decide new position of individuals as shown in Eq. (3)
S Mi j = S Mi j + φ(0, 1) × (G L j − S Mi j ) + φ(−1, 1) × (S Mr j − S Mi j )
(3)
Additionally, selection of certain dimension during position update takes place using probability of selection ( pr obi ). Probability is computed with the help of fitness of solution using Eq. (4). f itnessi pr obi = N (4) f itnessi i=1
2.3 Global Leader Learning (GLL) Phase The GLL phase identifies a G L with highest fitness. It makes use of a global limit counter to track the changes in the position of global leader. The counter gets incremented if leader is not modernising their position and after a certain amount of iterations, new global leader is established in the location of non-performing.
2.4 Local Leader Learning (LLL) Phase Similar to GLL, this phase updates the location of the L L within group with best fitness value and the local limit counter is incremented by one if L L is not able to update itself.
368
B. Sharma et al.
2.5 Local Leader Decision (LLD) Phase During this phase, the L L randomly re-initializes every group members using Eq. (5) if its limit counter reaches to a pre-decided threshold.
S Mi j = S Mi j + φ(0, 1) × (G L j − S Mi j ) + φ(−1, 1) × (S Mr j − S Mi j ) 2.5.1
(5)
Global Leader Decision (GLD) Phase
During this phase, G L decides about division or merging of groups. If it reached to the limit of maximum number of groups (MG), then G L creates a large group by merging all subgroups and thus mimics the FFSS of spider monkeys. Algorithm 1 shows a basic SMO algorithm. Algorithm 1 SMO Algorithm [2] Initialization of parameters (Perturbation Rate ( pr ), Global Leader Limit, Local Leader Limit, Population Size. Evaluate each solution using fitness. Identify local and global leader. while Termination condition is not fulfilled do (I) Identify new location for each group member using LLP. (II) Select best fitted individuals. (III) Calculate probability ( pr obi ) for every individual using Eq. (4). (IV) The GLP identifies new positions for every group member based on pr obi . (V) All the L L and G L update their position using greedy approach. (VI) Each group member is channelised for foraging by LLD phase if L L is not modernising itself. (VII) If the G L is unable to update her position for M G, small size subgroups are devised by GLD phase. end while
3 Variant of SMO 3.1 ESMO In ESMO [9] , the parameter, perturbation rate, is increased exponentially as shown in Eq. (6). max_it prnew = ( prinit ) t (6) where t and max_it denote the current and the maximum number of iterations, respectively, and prinit is initial perturbation, initialized randomly in between 0 and 1.
Comparative Analysis of Selected Variant …
369
3.2 CSMO In CSMO [8], logistic mapping-based chaotic function has been used which behaves chaotically exceeding a particular value of ‘μ’. The logistic mapping can be expressed by Eq. (7). (7) z (t+1) = μ × z t × (1 − z t ) where z t denotes the chaotic number at tth iteration and lies ∈ [0, 1]. In the proposed method, the parameter, perturbation rate, is changed according to chaotic behaviour as shown in Eq. (8). max_it − t ×z (8) pr(t+1) = 1 − ( prt ) × max_it where the maximum number of iterations is denoted by max_it, t is the present iteration, and the value of pr is initialized randomly in between 0 and 1. Remaining steps of CSMO are similar to basic SMO.
3.3 ESMO In SSMO, the parameter, perturbation rate, is changed according to sigmoid increasing function as shown in Eq. (9). pr (t) = 1 −
1 (1 + α) + ex p
u = 10(log(maxit )−2)
2u(t−1) ( max −1 −u)
(9)
it
(10)
where max_it is the maximum number of iterations, t is the current iteration, and the value of α is randomly chosen in between 0 and 1. Remaining steps of SSMO are similar to basic SMO.
4 Result Analysis The performance of ESMO has been simulated on 12 standard benchmarks which are represented in Table 1 [8, 9] along with their corresponding optimal value and range of decision variables. The mean fitness values returned by the ESMO, CSMO and SSMO have been illustrated in Table 2. From Table 2, it has been observed that ESMO returns minimum
370
B. Sharma et al.
Table 1 Benchmark functions Sr. No. Equation 1 2 3 4 5 6
7
8
D 2 F1 (x) = i=1 xi d D F2 (x) = i=1 | xi | + i=1 | xi | F3 (x) = maxi {| xi |, 1 ≤ i ≤ D} D F4 (x) = i=1 ([ 21 + xi ])2 D F5 (x) = random[0, 1) + i=1 i xi4 F6 (x) = d cos(2π xi ) e + 20 − ex p d1 i=1 d xi2 − 20ex p −0.2 d1 i=1 d F7 (x) = i=1 u(xi , 5, 100, 4) + 2 0.1{sin (3π x ) + [1 + sin2 (3π xi + 1 d 1)] i=1 (xi − 1)2 + [1 + sin2 (2π xd )](xd − 1)2 }
2 11 x (b2 +bi x 2 ) F8 (x) = i=1 ai − b12 +bi x +x i
9 10
11 12
i 3
4
F9 (x) = 4x12 − 2.1x14 + 13 x16 + x1 x2 − 4x22 + 4x24 F10 (x) = [1 + (1 + x1 + x2 )2 (19 − 14x1 + 3x12 − 14x2 + 3x22 + 6x1 x2 )] × [30 + (2x1 − 3x2 )2 × (18 − 32x1 + 12x12 + 48x2 + 27x22 − 36x1 x2 )] F11 (x) = 4 − i=1 ai ex p(− 3j=1 bi j (x j − ci j )2 ) F12 (x) = 4 − i=1 ai ex p(− 6j=1 bi j (x j − ci j )2 )
Dimensions
Range
Optimal value
30 30 30 30 30 30
[−100,100] [−10,10] [−100,100] [−100,100] [−1.28,1.28] [−32,32]
0 0 0 0 0 0
30
[−50,50]
0
4
[−5,5]
0.0003
2
[−5,5]
−1.0316
2
[−2,2]
3
3
[1,3]
−3.86
6
[0,1]
−3.32
Table 2 Comparative analysis of ESMO, CSMO and SSMO Benchmarks ESMO CSMO F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12
3.52E − 32 1.31E − 22 2.67E − 12 0.5364 4.32E − 05 1.02E − 13 5.35E − 06 2.69E − 05 −1.0316 3.0000 −3.8625 −3.3612
3.32E − 30 1.21E − 21 2.39E − 11 0.5214 3.39E − 05 1.53E − 10 3.24E − 06 2.33E − 06 −1.0316 3.0000 −3.8636 −3.3223
SSMO 2.09E − 08 4.61E − 08 2.15E − 08 2.23E − 08 1.49E − 02 4.62E − 08 1.99E − 08 3.44E − 04 4.93E − 08 3.0000 −3.8628 −3.0425
Comparative Analysis of Selected Variant …
371
mean values for five benchmarks, CSMO returns minimum mean values for two benchmarks and SSMO returns minimum mean values for four benchmarks, while for f 10 all variants perform equally.
5 Conclusion This manuscript anticipated a new deviant of SMO that is named as sigmoidal SMO as it used as sigmoidal function to select perturbation rate. The nonlinear nature of sigmoidal function improves the balancing between exploration and exploitation processes. The outcomes of SSMO have been contrasted with DE, GSA, PSO and SMO algorithms. The statistical and experimental results prove that the SSMO method surpasses the existing nature-inspired algorithms. Additionally, the newly proposed system has been analysed for mean fitness value with DE, GSA, PSO and SMO. In future, SSMO can be used for real-world clustering and classification problems.
References 1. Agrawal, A., Farswan, P., Agrawal, V., Tiwari, D. C., & Bansal, J. C. (2017). On the hybridization of spider monkey optimization and genetic algorithms. In Proceedings of Sixth International Conference on Soft Computing for Problem Solving (pp. 185–196). Springer. 2. Bansal, J. C., Sharma, H., Jadon, S. S., & Clerc, M. (2014). Spider monkey optimization algorithm for numerical optimization. Memetic computing, 6(1), 31–47. 3. Gupta, K., & Deep, K. (2016). Tournament selection based probability scheme in spider monkey optimization algorithm. In Harmony Search Algorithm (pp. 239–250). Springer. 4. Gupta, K., Deep, K., & Bansal, J. C. (2017). Improving the local search ability of spider monkey optimization algorithm using quadratic approximation for unconstrained optimization. Computational Intelligence, 33(2), 210–240. 5. Gupta, K., Deep, K., & Bansal, J. C. (2017). Spider monkey optimization algorithm for constrained optimization problems. Soft Computing, 21(23), 6933–6962. 6. Hazrati, G., Sharma, H., Sharma, N., & Bansal, J. C. (2016). Modified spider monkey optimization. In International Workshop on Computational Intelligence (IWCI) (pp. 209–214). IEEE. 7. Kumar, S., Kumari, R., & Sharma, V. K. (2015). Fitness based position update in spider monkey optimization algorithm. Procedia Computer Science, 62, 442–449. 8. Kumar, S., Sharma, B., Sharma, V. K., & Poonia, R. C. (2018). Automated soil prediction using bag-of-features and chaotic spider monkey optimization algorithm. Evolutionary Intelligence (pp. 1–12). 9. Kumar, S., Sharma, B., Sharma, V. K., Sharma, H., & Bansal, J. C. (2018). Plant leaf disease identification using exponential spider monkey optimization. Sustainable Computing: Informatics and Systems. 10. Kumar, S., Sharma, V. K., & Kumari, R. (2014). Modified position update in spider monkey optimization algorithm. International Journal of Emerging Technologies in Computational and Applied Sciences, 2, 198–204. 11. Kumar, S., Sharma, V. K., & Kumari, R. (2014). Self-adaptive spider monkey optimization algorithm for engineering optimization problems. International Journal of Information Communication and Computing Technology, 2(2), 96–107.
372
B. Sharma et al.
12. Pal, S. S., Kumar, S., Kashyap, M., Choudhary, Y., & Bhattacharya, M. (2016) Multi-level thresholding segmentation approach based on spider monkey optimization algorithm. In Proceedings of the Second International Conference on Computer and Communication Technologies (pp. 273–287). Springer. 13. Sharma, A., Sharma, H., Bhargava, A., Sharma, N., & Bansal, J. C. (2016). Optimal power flow analysis using lévy flight spider monkey optimisation algorithm. International Journal of Artificial Intelligence and Soft Computing, 5(4), 320–352. 14. Sharma, A., Sharma, H., Bhargava, A. A., Sharma, N., & Bansal, J. C. (2017). Optimal placement and sizing of capacitor using limaçon inspired spider monkey optimization algorithm. Memetic Computing, 9(4), 311–331. 15. Sharma, H., Hazrati, G., & Bansal, J. C. (2019). Spider monkey optimization algorithm. In Evolutionary and Swarm Intelligence Algorithms (pp. 43–59). Springer. 16. Swami, V., Kumar, S., & Jain, S. (2018). An improved spider monkey optimization algorithm. In Soft Computing: Theories and Applications (pp. 73–81). Springer.
A Novel Method to Access Scientific Data from IRNSS/NaVIC Station Using Cloud Computing Gawas Santoshi Shyamsundar and Narayana Swamy Ramaiah
Abstract When data generated is in continuous form, no matter how small it is, there ought to be a provision to store it in a place where safety is ensured and storage capacity never runs out. Also since the data is very crucial and we cannot take a chance of data falling in wrong hands, permission to access the data is given only to the authorized persons, thereby ensuring safety of the data. These things can be achieved using cloud computing which is the best platform for maintaining, storing, and monitoring the data. Keywords Amazon web services · Simple storage service · Identity and access management · Virtual private cloud
1 Introduction Nowadays, the data generated by all sources like social media (Facebook, Instagram) as well as other sources like traveling sites, banking data, hospital data is so huge that it practically becomes impossible to store such large amount of data in a local storage or even if a datacenter is owned by anyone, it is not possible to store data generated in such large volume in just one data center. Considering the case wherein an individual has preferable amount of data like photos, documents, audio, video, and so on, and this data has been stored onto his local storage, that is, on his own computer. What if his data capacity exceeds the storage capacity of his computer? One option is to store the data onto an external disk, but how many of such disks he can maintain and also the cost of buying external disks will also come into picture. Another point to think about is what if his computer itself breaks down? Considering the case that an organization or an enterprise has owned more than two datacenters (Where data is being stored) to take care of the data, but what about processing and G. S. Shyamsundar · N. S. Ramaiah (B) SET, Jain deemed to be University, Karnataka 562112, India e-mail: [email protected] G. S. Shyamsundar e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_34
373
374
G. S. Shyamsundar and N. S. Ramaiah
managing such large amount of data. An organization working with such a setup will have to hire employees for managing the data in the data centers and if some minor mistake happens and the data gets lost, then there is no way to retrieve the data back, that is, data once lost is lost forever and it might hinder the organizations progress. So an organization will be focusing more on managing the data and there would not be sufficient time to focus on the applications that they are meant to be performing, also it has to pay to the group of people who are employed especially for this purpose. So they would not be able to meet their goals and the organization will always be lagging behind. Also if the analysis is to be done on such huge amount of data present in the data centers then for an individual or for a group of people it might take a long time to analyze the data and come to a conclusion. So a solution for all these problems is that instead of storing the data onto local storage or datacenters, folks need to think about storing their data onto the cloud. Also, the difficulties listed above will be solved if data is stored onto the cloud, that is, instead of having storage of his own, one can use the storage provided by the cloud providers. When data is stored onto the cloud, organization no longer needs additional employees to look after the data thereby saving the cost, and they can focus on their application and this is how a company can progress. Also with cloud redundancy is ensured, that is, instead of storing the data on just one server, the data is stored on many servers so that even if the data is lost from one server it can be retrieved back from other servers. Also with cloud analysis on the data becomes much easier and faster. There are many such cloud providers in the market, such as Microsoft Azure, VMWARE, IBM, Amazon Web Services, and GCP, to name a few (Google cloud platform). One can choose whichever provider he wants depending on the pricing; they offer, storage, compute capacity, and so on. One such cloud provider which is ruling the global cloud computing market is Amazon Web Services (AWS). AWS alone has global cloud computing market share of 31%. AWS has server capacity of 6X its competitors. Any enterprise will want flexibility in the pricing; if one is using AWS server, he will be charged for an hour; if he is using the server for 3 h, he will be charged for 3 h and not for the whole day. AWS is secure cloud services platform, offering compute power, database, storage, content delivery, and other functionality to help businesses scale and grow. Cloud computing models are divided into two types: (a) Service models and (b) Deployment models.
A Novel Method to Access Scientific Data …
375
2 Service Models 2.1 Infrastructure as a Service Iaas is wherein the cloud provider takes care of networking, virtualization, servers, and storage. An underlying structure is given to the user and user has the option to install the OS of their choice, and data, application, runtime, and middleware have to be managed by the user itself. So one can get a server on the cloud and he can install OS of his choice on it; he even has the option of making the server as web server or database server.
2.2 Platform as a Service Here, user does not have access to the operating system; he can only get access to the user interface. In PaaS, users only have to manage their data and applications; rest of the things are managed by the cloud providers. An example is Google app engine, where one can create his own application and put it on Google app engine so that others can also use it, so here one can make use of the platform to create his own application.
2.3 Software as a Service Here, one neither has access to the OS nor the user interface, he only has access to the software. Say user is renting a server onto the cloud and he gets Windows OS as we all know Windows OS is licensed, so here we are using Windows as SaaS. In SaaS, one only has access to the software and he has to pay only for the software that he is using. The software may be provided by a third party. For example, Gmail service that we use to send email or receive email is a SaaS; we do not have to worry about managing it or its security and everything is taken care of by Google [1].
3 Deployment Models 3.1 Public Cloud In public cloud, user can share his server with different people. Say suppose one launches a server in AWS; the fact that the server on which his OS is hosted is also giving OS to someone else or not known because, on one server, hundreds of
376
G. S. Shyamsundar and N. S. Ramaiah
Operating Systems might be there which are virtualized. If one is using Linux OS on his server and he has not specified whether he wants a standalone or private server, his server will be shared with many other people [2].
3.2 Private Cloud For some companies, the data is confidential, so they would not like to host it on public cloud and they prefer hosting it on private cloud. Another side of private cloud is to buy server of your own and deploy your application on it [3].
3.3 Hybrid Cloud Hybrid cloud is a combination of both public and private clouds. So if one has an application, where he is using both public and private clouds, it is termed as hybrid cloud. If user has a website, the website can be hosted on public cloud, but at the same time, if he has some confidential data then he can host it on his own servers that is private cloud.
4 Compute Domain 4.1 Elastic Cloud Compute (EC2) EC2 is like a raw server; it is like a new PC wherein the desired OS can be installed; also whatever applications are required by the user can also be installed. User can launch multiple servers of this type (many servers with the same configuration); also it can be resized as well, i.e., if client is using i3 processor on AWS, he can easily move to i5 processor; it is that flexible [4, 5].
4.2 Elastic Load Balancer It distributes the load across instances equally. Users will experience the same response time (five servers, load is balanced equally); if one person is using a website, another person is also using the same website response time should be equal [6].
A Novel Method to Access Scientific Data …
377
4.3 Auto-scaling This is used to scale up and scale down automatically without any manual intervention. Say suppose one has a website running and that website is running on five servers; then he can configure metric saying that whenever the combined CPU usage goes beyond 70% it will launch a new server and then the traffic will be distributed among six instances. So this work is done by load balancer, and hence auto-scaling and load balancer go hand in hand. If one is using auto-scaling, he has to use ELB also. He can also use metrics for scaling down, i.e., if combined CPU usage goes beyond 10%, one can configure auto-scaling to remove a server and again workload will be distributed.
5 Storage Domain 5.1 Simple Storage Service (S3) S3 is object-oriented file system, i.e., all files which one uploads in bucket will be treated as objects, buckets can be considered as folder and each of the objects will have a certain path, i.e., URL and one can access these objects using that URL.
5.2 Cloud Front It is a content delivery n/w. If the user is accessing a website which is far away from user’s location, then that website can be cached to the users’ nearest location and this is done so that the response time is less. Web server cached to users’ nearest location is called as edge location.
5.3 Elastic Block Storage EBS is a hard drive to EC2. EBS cannot be used independently; it has to be used with EC2 instance only. One EC2 instance can be connected to multiple EBS volumes but vice versa is not true.
378
G. S. Shyamsundar and N. S. Ramaiah
5.4 Amazon Glacier It is a data archiving service. When user intends to backup data from s3 or EC2 instance, data can be backed up on glacier because glacier contains magnetic disks and magnetic disks are cheaper, and hence data storage becomes cheaper. Data which is not frequently accessed like hospital data can be stored onto the Glacier. If a person returns, data can be retrieved back, but since it is cheaper, retrieval time will be more compared to s3 or EC2.
6 Networking Domain 6.1 Virtual Private Cloud (VPC) If one includes all AWS resources that he has launched into VPC, the resources become visible to each other or they can interact with each other once they are inside the VPC. Another use of VPC is that when one has a private datacenter and he is using AWS infrastructure as well and if he wants to use AWS resources as if they were in his own network, in that case, he has to establish a VPN connection to VPC and he can access all AWS resources as if they were on his own network, So VPC provides security, it makes communication between the AWS services easily, and it also helps to connect one’s private data center to AWS infrastructure [7].
6.2 Direct Connect Direct connect is a replacement to Internet connection, i.e., it is a direct line to the AWS infrastructure so if one feels the b/w of Internet is not enough for his data requirements or networking requirements, he can take a direct line to the AWS infrastructure by means of direct connect. So data can now flow from user’s own data center to AWS infrastructure.
6.3 Route53 Route53 is a domain name system, whatever URL one enters is to be directed to a DNS which converts the URL to IP address and the IP address is of the server on which his website is hosted [8].
A Novel Method to Access Scientific Data …
379
7 Management Domain 7.1 CloudWatch CloudWatch is used to monitor all the resources in AWS infrastructure, say one wants to monitor EC2 instance and would like to be notified when the CPU usage goes above 90%, then he can create an alarm using cloud watch so whenever usage goes above 90% it will trigger an alarm, and that alarm will send him notifications using email or any parameter that he has set.
7.2 OpsWorks AWS OpsWorks is a configuration management tool; it consists of stacks and layers. Layers are the different AWS services and when combined together these services form something called as stack; it is needed in applications which uses AWS services and if one wants to change something, then one way is to go to each and every service and change it one by one. Another way is if one has deployed his application using OpsWorks, he only has to make changes at the stack level and the changes will be reflected in all the layers automatically.
7.3 Trusted Advisor Trusted Advisor is like a personnel assistant to a user in the AWS infrastructure. It advises the user on his monthly expenditure, so it is a best practice for the user to deploy this service in his infrastructure. If user is not using IAM policies, it will advise him to use the IAM policies.
8 Security Domain 8.1 Identity and Access Management (IAM) Within enterprise users using masters AWS account to control the infrastructure, master can give them granular permissions on particular services using IAM.
380
G. S. Shyamsundar and N. S. Ramaiah
8.2 Key Management Service (KMS) Any instance one launches in AWS will have public and private keys, and public key is withheld with AWS and user needs to keep the private key safely. Whenever the user wants to connect to his instance, he has to upload his private key. AWS will match the public key to private key and if it matches, it will give access to the instance [9].
9 Results 9.1 Using Services S3 and IAM Create a bucket in s3. The bucket name is hello1.bucket (Figs. 1, 2, 3, and 4).
Fig. 1 Setting up name and region
Fig. 2 Setting permissions
A Novel Method to Access Scientific Data …
381
Fig. 3 Bucket named hello.1
Fig. 4 Uploading file to the bucket
Fig. 5 Error while accessing data using URL
Fig. 6 Changing public settings and making the bucket public
The contents in the bucket cannot be accessed because the bucket is not public an error like this will pop up when you try to access one of the objects using the URL specified for that particular object. The contents in the bucket can be accessed only after the bucket is made public (Figs. 5 and 6).
382
G. S. Shyamsundar and N. S. Ramaiah
Fig. 7 Read only access to the object inside the bucket
After editing public access settings, the user has to be given permission such that he/she can only read the contents inside the bucket, and he/she can neither upload any new objects nor delete the objects inside the bucket (Fig. 7). An IAM user is created who will be able to access s3 but not fully. The user will be granted only read access to the bucket. User can neither delete the bucket nor upload any objects to the bucket. Creating IAM user is shown in Fig. 8. The user can be added to any existing group or a new group. Advantage of adding user to the group is that if there are 50 users and all 50 users are to have the same permissions, then setting permissions to each and every user is a tedious task and may consume a lot of time. So an alternative for this is to add all 50 users to a group and then apply the necessary permissions to the group as a whole, which implies that all 50 users are having the same permissions. If a particular user in the group is to be given some special permissions, then that also can be done (Figs. 9, 10, and 11). The user is given read-only access to s3 so even if he tries to upload any object to the bucket it will fail. Also, he cannot delete any bucket from S3 (Fig. 12). Only the user can read the objects present in the bucket. If user tries to access the object using the URL, the file will get downloaded.
Fig. 8 IAM user details
A Novel Method to Access Scientific Data …
Fig. 9 Adding user to the group (optional)
Fig. 10 Permissions granted to the said user
Fig. 11 IAM user creation successful Fig. 12 User denied permission to upload data to the bucket
383
384
G. S. Shyamsundar and N. S. Ramaiah
10 Conclusion File has been successfully uploaded to S3 with security of the data being taken care of until and unless the bucket is made public; nobody can access the bucket because by default every bucket in S3 is private. Even after the bucket is made public still the objects inside the bucket cannot be accessed because each object inside the bucket has to be given permissions. IAM users account can also be secured by adding one more layer of security in addition to username and password; that security is Multifactor Authentication (MFA) and it is ensured using virtual MFA device.
References 1. Software as a service (SaaS). Cloud Taxonomy. Retrieved April, 24, 2011. 2. Cloud computing on Wikipedia. en.wikipedia.org/wiki/Cloudcomputing (2009, December 20). 3. Khorana, S., Verma, A. G. (2013, April–June). Comparison of Cloud Computing service models: SaaS PaaS IaaS. IJECT, 4. 4. Amazon elastic computing cloud. aws.amazon.com/ec2. 5. AWS storage services overview: A look at storage services offered by AWS (2016, December). 6. Eswaraprasad, R., & Raja, L. (2017). A review of virtual machine (VM) resource scheduling algorithms in cloud computing environment. Journal of Statistics and Management Systems, 20(4), 703–711. 7. Zhang, Q., Cheng, L., Boutaba, R. (2010). Cloud computing: State-of-the-art and research challenges. Journal of Internet Services and Applications. 8. Poonia, R. C., & Raja, L. (2018). On-demand routing protocols for vehicular cloud computing. In Vehicular Cloud Computing for Traffic Management and Systems (pp. 151–177). IGI Global. 9. Gupta, S., Poonia, R. C., Singh, V., & Raja, L. (2019). Tier application in multi-cloud databases to improve security and service availability. In Handbook of Research on Cloud Computing and Big Data Applications in IoT (pp. 82–93). IGI Global. 10. Amazon web services. aws.amazon.com. 11. Overview of amazon web services (2018, December).
Live Class Monitoring Using Machine Learning Anushka Krishna
and Harshita Tuli
Abstract Facial recognition is a propitious tool for consumers of social infrastructure electronics. Digital cameras and mobile phones are being successfully used in recent years for digital processing of facial imagery. In this research paper, we have presented a Live class monitoring system using a face recognition algorithm which is capable of (a) processing image of a student in real-time camera-input environment using OpenCV, (b) saving the details in the backend using SQLite, and (c) keep updating the presence and absence of the student on the basis of trained dataset in Live database using Firebase. A person with the authentication, i.e., person with a dedicated QR code, can also monitor the presence and absence of the students in a class through the mobile application developed using App Inventor which is Google’s open-source platform. The dedicated mobile application will show the image of the student if he/she is present in the class and will gray out the image of the student if the opposite happens, i.e., if the student is not present for a specified time period. OpenCV library is used to import some important functions for recognition. Haar classifier and local binary pattern histogram has been used to detect the face. To store the details, SQLite3 has been used. The algorithm is applied real-time condition. The language used is Python3. Keywords Facial recognition · Live class monitoring · LBPH · App inventor · OpenCV · Python3
A. Krishna (B) · H. Tuli Sri Guru Tegh Bahadur Institute of Management and Information Technology, New Delhi 110009, India e-mail: [email protected] H. Tuli e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_35
385
386
A. Krishna and H. Tuli
1 Introduction 1.1 Brief History The research on facial image recognition started in Japan 50 years ago in Sakai laboratory of Kyoto University. Later, Turk and Petland proposed Eigenface in the 90s. Since the initial researches in the algorithms to detect face were slow, Viola and Jones made a vast change by introducing real-time processing in the twenty-first century.
1.2 Current Scenario Face-to-face communication has become easier by several face recognition tools and techniques. Some major examples of real-time face recognition include gaming, security which further divided into home security, mobile phone security, etc. Although it still poses a variety of challenge because of different features and formations of human faces like skin color, pose change, etc.
1.3 Working This study helps to monitor the students sitting at a particular time in the classroom and ultimately helps to maintain discipline in the classroom using the advanced technique of face recognition. The area of focus in this paper is real-time face recognition and Live database. By the real time, it means that the camera installed the classroom will detect the faces immediately after encountering it. This research is overall done using Python3. It was developed by Guido van Rossum and was released in 1991. It is a high-level scripting language for general-purpose programming. It puts emphasis on code readability and significant use of whitespaces. It provides clear programming on both small and large scale [1]. The software used to create database is SQLite3 because of its ability to integrate with Python3 [2, 3]. The mobile application is developed using App Inventor. App Inventor is an open-source web application, provided by Google for Android-based devices. It was basically developed by MIT Media Lab and MIT AI Lab and is written in Java, Kawa, and Scheme [4]. The Live database is developed using Firebase database. Firebase database stores and syncs data with NoSQL cloud database. The last updated data remains available even when the app goes offline. It is stored as JSON and is synced in real time to every connected client [5, 6]. To detect the face in the image, we have used a frontal face detector based on Haar. In layman terms, Haar Cascade is a predefined XML file which needs to be imported in the source code. Technically, it is a classifier which is used to detect the object for which it is trained; in this case, the Haar is trained on the different
Live Class Monitoring Using Machine Learning
387
facial images captured by the real-time camera. One can also create their own Haar classifier [7, 8]. For face recognition, there are three methods provided by OpenCV: Eigenfaces, Fisherfaces, and Local Binary Pattern Histogram (LBPH). All these methods perform the recognition by comparing faces with an already trained dataset where we supply the algorithm faces and tell the system to which person it belongs. The algorithm, when asked to recognize an unknown face, uses the trained dataset to detect the face. Each of the three methods uses the training dataset in a different way. The LBPH method takes a different approach than the Eigenface method and is believed to be the most efficient way of recognition. Eigenfaces and Fisherfaces are considered to be less efficient since they both are affected by light conditions [9, 10]. LBPH recognizer is an improvement to overcome this drawback. LBPH compares each pixel with its neighboring pixels to find the local structure of an image.
2 Introduction 2.1 How LBPH Works? LBPH moves a 3 × 3 window on the image and compares the center pixel with the neighboring pixels at every move. The neighboring pixel is denoted by 1 if they have value less than or equal to the center pixel, else it is denoted by 0. These values are then read in a clockwise manner and a binary pattern like 11100001, as shown in the example, is generated. The same process is repeated on the whole image and a list of binary pattern is obtained [11, 12]. Once the list is obtained, the algorithm converts every binary pattern into decimal numbers (Fig. 1) and develops histograms out of those values (Fig. 2). It gets a list of local binary patterns; this is why this algorithm has local binary patterns in its name. A sample histogram looks like this. Thus, we get one histogram for each facial image in the training dataset which means if there are 200 images in the training dataset, LBPH will generate exactly 200 histograms, one for each image, after training for further recognition. A new histogram is generated when a new image is fed into the system. If the new histogram
Fig. 1 LBP labeling
388
A. Krishna and H. Tuli
Fig. 2 Sample histogram
matches with any of the existing histograms, then it returns the label associated with its best-matched histogram, i.e., ID, name, or any other detail associated with that person.
3 Conclusion and Future Work In the above study, Haar classifier and LBPH algorithm are used to detect faces in order to monitor and update the Live database and to monitor the same using the mobile application of students in a classroom. It can be observed that it has been achieved with minimal error. Further works can be combined with deep learning, which is based on an artificial neural network, in order to achieve more accuracy for recognizing the face.
References 1. van Rossum, G. (1995). Python tutorial. Technical Report CS-R9526, Centrum voor Wiskunde en Informatica (CWI). Amsterdam. 2. DataCamp Community. SQLite in Python. Retrieved February 6, 2019, from https://www. datacamp.com/community/tutorials/sqlite-in-python. 3. DB-API 2.0 interface for SQLite databases. Retrieved February 6, 2019, https://docs.python. org/3/library/sqlite3.html. 4. Pokress, S. C., & Veiga, J. J. D. (2013). MIT app inventor: Enabling personal mobile computing. 5. Khedkar, S., & Thube, S. (2017). Real time databases for applications. International Research Journal of Engineering and Technology (IRJET). 6. Khawas, C., & Shah, P. (2018). Application of firebase in android app development-a study. International Journal of Computer Applications, 179, 49–53. https://doi.org/10.5120/ ijca2018917200. 7. Padilla, R., Costa Filho, C. F. F., & Costa, M. G. F. (2012). Evaluation of haar cascade classifiers for face detection.
Live Class Monitoring Using Machine Learning
389
8. Garg, V., & Garg, K. (2016). Face recognition using haar cascade classifier. International Journal of Emerging Technologies and Innovative Research, 3(12), 140–142. 9. Ahmed, A., Guo, J., Ali, F., & Deeba, F. (2018). LBPH bases improved face recognition at low resolution. In International Conference on Artificial Intelligence and Big Data (ICAIBD). Chengdu, China. 10. Zhao, X. M., & Wei, C. B. (2017). A real-time face recognition system based on the improved LBPH algorithm. In IEEE 2nd International Conference on Signal and Image Processing (ICSIP). 11. Narang, S., Jain, K., Saxena, M., Arora, A. (2018). Comparison of face recognition algorithms using Opencv for attendance system. International Journal of Scientific and Research Publications, 8(2). 12. SuperData Science Webpage. Retrieved March 18, 2019, from https://www.superdatascience. com/opencv-face-recognition.
Deep Learning for Big Data Analytics Gourav Bathla, Himanshu Aggarwal and Rinkle Rani
Abstract Deep learning is extremely popular among data scientists and analysts due to its proven accuracy in recognizing speech, image processing, and Big Data analytics. Data is growing at exponential rate due to sensor networks and communications. It is analyzed that 90% data was generated during last 2 years and data will be increased at this pace in forthcoming years also. Deep learning has become more significant as it can be used for large scale of unlabeled data. The increase in number of hidden nodes with the sheer size of data resists learning. Deep learning with new algorithmic approaches is able to learn large-scale unlabeled data with less feature engineering. Big Data can be better analyzed by deep learning. In this paper, the focus is on new algorithms and techniques of deep learning which can provide better accuracy for large-scale complex and unstructured data. Keywords Deep learning · Big Data · Data mining · Big Data analytics
1 Introduction Deep learning is the most active research topic among data analyst, data scientist, and Big Data researchers and practitioners. It has become popular after 2006 when it was introduced to data mining community. It provides proven accuracy in image processing, speech recognition, object detection, and large-scale data analysis. Large scale of data is produced by sensor networks, social networks, and business organizations processes. It is characterized by 4V’s—Volume, Velocity, Variety, and Veracity. Although deep learning is most suitable for data analysis, yet large-scale deep learning is at the beginning level. Large-scale, heterogeneous, real-time, and streaming data need novel approaches to integrate it with deep learning. In this paper, deep G. Bathla (B) · H. Aggarwal Punjabi University, Patiala, India e-mail: [email protected] R. Rani Thapar University, Patiala, India © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_36
391
392
G. Bathla et al.
learning deployment on Big Data is reviewed and also large-scale deep learning model is proposed by partitioning on different nodes. Deep learning models are classified into different categories based on their application area. Stack auto-encoder, deep belief network, convolution neural network, and recurrent neural network are deep learning models. Many other models are available but these four categories cover all other models’ characteristics. Structured and unstructured data are Big Data characteristics. Simple text files with records are examples of structured data, whereas images, log files, and videos are examples of unstructured data. Typical approaches of data mining such as SVM and Naïve Bayes are able to extract information from labeled data with proven accuracy. It is due to the fact the feature engineering leverages label to analyze data. It is not suitable for unlabeled data due to fewer features. Deep learning can analyze unlabeled data effectively due to its hierarchical abstraction approach. Deep learning is most suitable for Big Data as it can harvest important information from complex data. It can discover intricate structures in high-dimensional data [1]. Conventional machine learning is limited in processing and analyzing raw data [1]. Feature extraction is required to recognize patterns from data using these techniques. The advantage of deep learning is that fewer features are required due to its hierarchical layers learning. Multi-core CPUs process large-scale data using parallel algorithms. Hierarchical representation learning algorithms cannot be deployed on multi-core CPUs. The reason is that the output of current abstraction layers is dependent on previous abstraction layer. Graphical processors (GPUs) are required which can leverage unprecedented power and complexity of large-scale data. In GPU hardware, multiprocessors are available and in these processors, stream processors (SPs) are present, where actual computations are performed [2]. GPUs are approximately 40 times faster than simple microprocessors for implementing Big Data learning algorithms [3]. The remaining paper is organized as follows. Section 2 describes deep learning and most popular models. Big Data and analytics of large-scale data are explained in Sect. 3. Big Data analytics with deep learning is demonstrated in Sect. 4. Finally, Sect. 5 concludes the paper with future directions.
2 Deep Learning Deep learning is based on hierarchical abstraction layers where abstraction layer gets input from previous abstraction layer. Several models are used in deep learning. The most commonly used models are deep belief network, stack auto-encoder, recurrent neural network, and convolutional neural network [4].
Deep Learning for Big Data Analytics
393
2.1 Deep Belief Network Deep belief network is first learning model that was trained efficiently [5]. Restricted Boltzmann machines (RBMs) combine to form deep belief network. RBMs are based on probabilistic model which learns from joint probability of training data with unlabeled data [6]. In this model, two-stage approach is followed to train model. Pretraining in unsupervised manner and fine-tuning in supervised manner with labels are applied in this model. Deep architecture is incorporated in deep belief network which is capable of learning from labeled as well as unlabeled data.
2.2 Stack Auto-Encoder Stack auto-encoder model builds several encoder layers that are based on feedforward learning. Encoding and decoding are steps in this model. Activation functions such as Sigmoid, tanh, and ReLu are applied, and input data is encoded in hidden layers. Decoding is extracting the output from hidden layers. Sigmoid function: tanh function: ReLu function:
f (x) = f (x) =
1 1 + e−x
ex − e−x ex + e−x
f (x) = max(0, x)
(1) (2) (3)
Stack auto-encoder is trained by unsupervised learning. Many auto-encoders are combined to form stack auto-encoder [4].
2.3 Recurrent Neural Network Recurrent neural network is a sequential learning model. The advantage of this model is that previous layer input is incorporated in the present layer. It is mainly used for time series data. For example, words in a sentence are correlated, finding the semantic of sentence is only possible if previous words and next words can be correlated with present word. In this scenario, feedforward model cannot be used. RNN can be composed of deep neural networks stacked together.
394
G. Bathla et al.
2.4 Convolutional Neural Network This model is most popularly used for image classification [4]. Large-scale images are recognized by this model using feature learning at subsampling layers. Convolutional and subsampling layers are combined to form hierarchical network. Filters maps are used in convolutional layers and dimensionality is reduced in subsampling layers. These pairs are repeated to form convolutional neural network.
3 Big Data Big Data is large scale of unstructured data which is produced by business organizations interactions, sensor networks, and social networking sites. Data is generated at large scale in the last 20 years and it is estimated that it will increase double every 2 years [7]. Apache termed Big Data as large-scale data which cannot be managed by general computers. It is characterized by unlabeled data where very few features are available. This is the reason it is very difficult to analyze Big Data which is heterogeneous. Big Data value chain is data generation, data collection, data storage, and analysis of data [7]. Big Data is represented by 4V’s—Volume, Variety, Velocity, and Veracity. Volume is large-scale data which is not in capability of traditional storage architectures. Big Data storages like New-SQL, NOSQL, and distributed storage are required for storing large scale of unstructured data. Variety is a different kind of data produced by social networking sites and others. Structured data is simple textual data, semi-structured data is log files, and unstructured data is images, audio, and video. Velocity is streaming data which is produced in continuous manner. Veracity is the noise present in data. In Big Data, less features and high complexity make it very difficult to analyze with current algorithms. There is need for new algorithms which can process and analyze complex structure. Figure 1 explains sources of high volume, high velocity, and high variety of Big Data.
3.1 Big Data Analytics Big Data analytics leverages complexity value of heterogeneous data through new techniques. Traditional data analytics employs statistics and state-of-the-art algorithms to refine and extract useful information from datasets. SVM, C4.5, Kmeans, decision tree, and Naïve Bayes are conventional algorithms designed for structured data. Complex and large-scale data analysis requires approaches which can reduce CPU time and improves accuracy. In [8], clustering algorithms are categorized and efficiency is validated empirically for Big Data. Clustering algorithm categories—partitioning-based, hierarchical-based, density-based, grid-based, and model-based—are explained and some algorithms are highlighted which can be
Deep Learning for Big Data Analytics
395
Fig. 1 Big data characteristics
implemented efficiently on Big Data. Kmeans is implemented on MapReduce to cluster large scale of data [9, 10]. Innovative aspects of new data management techniques enable organizations to extract valuable knowledge from data [11]. Bloom filter and parallel computing are techniques for Big Data analytics. Analysis of Big social data includes opinion mining, trend discovery, and social network analytics [12–14]. Analysis of Big Data has resulted in new innovative tools such as Hadoop, MapReduce, HDFS, and NoSQL [15]. Machine learning frameworks Apache Mahout, MlLib, and also business analytics framework Apache Nutch are available for processing Big Data [16].
4 Deep Learning for Big Data Analytics Deep learning is most suitable for analysis of Big Data. It provides good accuracy even for unlabeled and complex data as proven by many research works. Large scale of data learning can be efficiently performed by deep learning models as it provides many hierarchical abstraction layers. Deep learning is used in different ways for high volume, high variety, and high velocity of Big Data [17]. Large-scale deep learning models incorporate few hidden layers and large-scale neurons [4]. However, Big Data learning is not a trivial task for deep learning models [17]. Learning in large-scale data increases computational complexity [18]. Distributed approaches are innovated by researchers to incorporate deep learning with Big Data. In [19], deep stacking network (DSN) is proposed which facilitates learning in parallel and simple process architecture as stacking layers. Experiment analysis on MNIST datasets proves that DSN approach provides higher classification accuracy than deep neural
396
G. Bathla et al.
network (DNN). In [17], it is clearly mentioned that shallow architectures are suitable for less parameters so that over fitting is avoided. In contrast, deep learning is suitable for hidden neurons which are in large scale. Big Data learning is divided into three main categories—parallel learning, GPU-based approach, and optimized approaches. Deep learning for Big Data analytics requires CPUs and GPUs in clusters for high accuracy and speedup. Figure 2 demonstrates graphics processors which have streaming multiprocessors (SM) working in parallel along with multiprocessors (MP). Each SM has streaming processors (SP) which are working in parallel. The reason for high speed for GPUs as compared to CPUs is that multiprocessing is at two levels—memory level by MP (multiprocessors) and thread level by SP (streaming processors). DistBelief is proposed in [20], where it is proposed that deep learning models can be partitioned in several blocks as demonstrated in Fig. 3. Learning is performed in parallel on different blocks, and finally global learning is achieved which provides
Fig. 2 Graphics processors
Deep Learning for Big Data Analytics
397
Fig. 3 Blocks for parallel deep learning
accuracy and speed-up. Deep network which is 30x larger than previous approaches is trained in DistBelief. In [21], deep belief network learning from restricted Boltzmann machines (RBMs) with pre-training and fine-tuning is done using backpropagation. Sequential computations are completed after a lot of time, so there is need of distributed approach to reduce time. MapReduce, popular model for distributed computation, is used for backpropagation [22]. Deep learning is applied to financial sentiments to predict stock movement with better accuracy. Convolutional neural network is the best model which can be applied for stocks prediction on StockTwits dataset. Several deep learning technologies for Big Data analytics are used such as TensorFlow [23], Keras, PyTorch, and Apache MXNet.
5 Conclusion Big Data complexity and variety are highlighted in this paper. It is argued that conventional technologies and algorithms are not able to extract patterns from dataset due to less number of features. Deep learning is actively researched by data scientist due to its high accuracy with less feature engineering. Hierarchical abstraction layers can extract information even from complex dataset. In this paper, many techniques for Big Data analytics using deep learning are reviewed. GPU architecture is explained so that readers can identify multiprocessing and multithreading with streaming processors. Application of deep learning on specific big dataset is our future motivation. Product recommendation using deep feedforward model and RNN will be implemented and evaluated as future work on large-scale datasets.
398
G. Bathla et al.
References 1. LeCun, Y., Bengio, Y., & Hinton G. (2015). Deep learning. Nature, 521(7553), 436–444. 2. Raina, R., Madhavan, A., & Ng, A. Y. (2009). Large-scale deep unsupervised learning using graphics processors. In Proceedings of the 26th Annual International Conference on Machine Learning (pp. 873–880). 3. Cire¸san, D. C., Meier, U., Gambardella, L. M., & Schmidhuber, J. (2010). Deep, big, simple neural nets for handwritten digit recognition. Neural Computation, 22(12), 3207–3220. 4. Zhang, Q., Yang, L. T., Chen, Z., & Li, P. (2018). A survey on deep learning for big data. Information Fusion, 42, 146–157. 5. Hinton, G. E., & Salakhutdinov, R. R. (2006). Reducing the dimensionality of data with neural networks. Science, 313(5786), 504–507. 6. Hinton, G. E. (2012). A practical guide to training restricted Boltzmann machines. In Neural networks: Tricks of the trade (pp. 599–619). Springer, Berlin, Heidelberg. 7. Chen, M., Mao, S., & Liu, Y. (2014). Big data: A survey. Mobile Networks and Applications, 19(2), 171–209. 8. Fahad, A., Alshatri, N., Tari, Z., Alamri, A., Khalil, I., Zomaya, A. Y., et al. (2014). A survey of clustering algorithms for big data: Taxonomy and empirical analysis. IEEE Transactions on Emerging Topics in Computing, 2(3), 267–279. 9. Cui, X., Zhu, P., Yang, X., Li, K., & Ji, C. (2014). Optimized big data K-means clustering using MapReduce. The Journal of Supercomputing, 70(3), 1249–1259. 10. Sharma, K. P., Poonia, R. C., & Sunda, S. (2018). Real time location tracking map matching approaches for road navigation applications. Data Intensive Computing Applications for Big Data, 29, 414. 11. Gandomi, A., & Haider, M. (2015). Beyond the hype: Big data concepts, methods, and analytics. International Journal of Information Management, 35(2), 137–144. 12. Munjal, P., Kumar, S., Kumar, L., & Banati, A. (2017). Opinion dynamics through natural phenomenon of grain growth and population migration. In Hybrid intelligence for social networks (pp. 161–175). Springer, Cham. 13. Munjal, P., Kumar, L., Kumar, S., & Banati, H. (2019). Evidence of Ostwald Ripening in opinion driven dynamics of mutually competitive social networks. Physica A: Statistical Mechanics and Its Applications. 14. Cambria, E., Rajagopal, D., Olsher, D., & Das D. (2013). Big social data analysis. Big Data Computing, 13, 401–414. 15. Guellil, I., & Boukhalfa, K. (2015). Social big data mining: A survey focused on opinion mining and sentiments analysis. In International Symposium on Programming and Systems (ISPS) (pp. 1–10). IEEE. 16. Bello-Orgaz, G., Jung, J. J., & Camacho, D. (2016). Social big data: Recent achievements and new challenges. Information Fusion, 28, 45–59. 17. Chen, X. W., & Lin, X. (2014). Big data deep learning: Challenges and perspectives. IEEE Access, 2, 514–525. 18. Al-Jarrah, O. Y., Yoo, P. D., Muhaidat, S., Karagiannidis, G. K., & Taha, K. (2015). Efficient machine learning for big data: A review. Big Data Research, 2(3), 87–93. 19. Deng, L., Yu, D., & Platt, J. (2012). Scalable stacking and learning for building deep architectures. In Proceedings of IEEE ICASSP (pp. 2133–2136). 20. Dean, J., Corrado, G., Monga, R., Chen, K., Devin, M., Mao, M., et al. (2012). Large scale distributed deep networks. In Proceedings of Advances in Neural Information Processing Systems (pp. 1223–1231). MIT. 21. Zhang, K., & Chen, X. W. (2014). Large-scale deep belief nets with mapreduce. IEEE Access, 2, 395–403. 22. Sohangir, S., Wang, D., Pomeranets, A., & Khoshgoftaar, T. M. (2018). Big data: Deep learning for financial sentiment analysis. Journal of Big Data, 5(1), 3.
Deep Learning for Big Data Analytics
399
23. Abadi, M., Barham, P., Chen, J., Chen, Z., Davis, A., Dean, J., et al. (2016). Tensorflow: A system for large-scale machine learning. In 12th Symposium on Operating Systems Design and Implementation (pp. 265–283).
Gourav Bathla is pursuing Ph.D. from Punjabi University, Punjab, India. He has 12 years of teaching experience. He has completed M.E. from Delhi College of Engineering. He is GATE qualified with All India Rank 59. He is an active researcher and published 10 research papers in reputed journals and 5 research papers in international conferences. His areas of interest are Big Data, Machine Learning, Deep Learning, Data analytics, and Programming Languages. He may be contacted at [email protected]. Himanshu Aggarwal Ph.D. is currently serving as Professor in the Department of Computer Engineering at Punjabi University, Patiala. He has more than 23 years of teaching experience and served academic institutions such as Thapar Institute of Engineering and Technology, Patiala, Guru Nanak Dev Engineering College, Ludhiana and Technical Teacher’s Training Institute, Chandigarh. He is an active researcher who has supervised more than 30 M.Tech. dissertations and contributed 80 articles in various research journals. He is guiding Ph.D. to nine scholars and five has completed their Ph.D. He is on the Editorial Board of nine journals and Review Boards of five journals of repute. His areas of interest are Software Engineering, Computer Networks, Information Systems, ERP, and Parallel Computing. He can be contacted at [email protected]. Rinkle Rani is working as Associate Professor in Computer Science and Engineering Department, Thapar University, Patiala. She has done her postgraduation from BITS, Pilani and Ph.D. from Punjabi University, Patiala. She has more than 21 years of teaching experience. She has over 120 research papers, out of which 56 are in international journals and 64 are in conferences. She has guided 6 Ph.D. and 46 M.E. theses. Her areas of interest are Big Data Analytics and Machine Learning. She is member of professional bodies: ACM, IEEE, and CSI. She may be contacted at [email protected].
Text-Based Spam Tweets Detection Using Neural Networks Vanyashree Mardi, Anvaya Kini, V. M. Sukanya and S. Rachana
Abstract Social media platform plays a major role in everyone’s day-to-day life activities. Twitter is one of the vast growing platforms but it is also subjected to attacks such as Spamming and Combat Twitter attacks. The spamming is the use of the system to send an unsolicited message, especially the advertisement, sending messages repeatedly on same site which leads to major loss for customers and organization. In literature, the existing techniques for detecting the twitter spam text tweet suffer due to an issue such as limited work performance and data sets which leads to inefficiency of system. In order to solve these problems, we proposed a framework to detect the text-based spam tweets using Naive Bayes Classification algorithm and Artificial Neural Network. Performance study of these two algorithms shows that Artificial Neural Network performs better than Naive Bayes Classification algorithm. Keywords Naive Bayes Classifier · Artificial Neural Networks (ANN) · Tokenization · Stemming · Stop word removal
1 Introduction Nowadays Online Social Network (OSN) has become very popular among people. Twitter, Facebook, LinkedIn, and Instagram are some of the popular Online Social Networking sites. There are numerous social media sites like blogs, social networking V. Mardi (B) · A. Kini · V. M. Sukanya · S. Rachana Department of Information Science and Engineering, Alva’s Institution of Engineering and Technology, Mijar, Moodbidri, India e-mail: [email protected] A. Kini e-mail: [email protected] V. M. Sukanya e-mail: [email protected] S. Rachana e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_37
401
402
V. Mardi et al.
sites, instant messaging applications, photo sharing sites, video sharing sites, and many more. Many people across the world use social networking sites to share and make connections on a personal level. Founded in 2006, Twitter has become one of the most common microblogging websites for users to send and view tweet emails. Close to 200 million Twitter users produce more than 400 million fresh tweets per day [1]. Registered users can view and post tweets and unregistered users have limited access that is they can only view tweets. Because of the big number of customers and the enormous quantity of data being shared, online social networking sites increase safety and privacy issues. Spammers are misusing these OSN platforms, thereby spreading misinformation, rumors, fake news, etc. [2]. Detection of spam is a critical job for social media safety. Spam is defined by twitter as unsought recurred action that has negative impact on other users. Spammers can have several motives behind spamming such as to diffuse viruses or fishing, to disperse pornography or to propagate advertisement, and to generate high returns on sales [3]. The algorithms for Machine Learning are used to identify whether the tweet provided is spam or non-spam. In proposed system we used Naive Bayes Classifier and Artificial Neural Network (ANN) algorithms to detect text spam tweets.
2 Literature Survey In 2010, Lee et al. [4] Proposed system presented the design and real-world evaluation of a novel social honeypot-based approach to social spam detection. The propositioned system objective is to explore methods and create efficient instruments to detect and filter spammers that target social systems automatically. The suggested empirical assessment of the scheme over both MySpace and Twitter has shown the efficiency and adaptability of the honeypot-based social spam detection strategy. In 2011, Song et al. [5] proposed the scheme that suggested relies primarily on blacklists that sort spam URLs. Because of the time delay, it is not possible for blacklists to protect customers on time. The use of heuristics regulations to filter the twitter spam has recently been disclosed by academics to avoid the blacklist drawback. In 2015, Junnarkar [6] proposed a system for spam detection in which blacklists are often used for spam detection. The greatest issue with blacklists is that there is always a time lag between these polluters and the blacklists report. In 2015, Chen et al. [7] proposed system in which SVM algorithm, Naïve Bayesian algorithm worked very poor than other machine learning classifier on the dataset with ratio of 1:19 spam tweets to non-spam tweets. In 2015, Chen et al. [8] proposed a system to detect real world twitter spam but this method would lead to bias because of unbalanced tweets. Decrease in the performance because of the fact that later dataset changes in the distribution of features. In 2017, Mateen et al. [9] proposed a system in which they have used J48, Decorate, Naive Bayes classifiers. User-based feature does not play a significant role in the identification of spam users. It is found that the features used have very low false
Text-Based Spam Tweets Detection Using Neural Networks
403
negative value. In 2018, Madisetty et al. [10] proposed a system of neural network for detecting spam in twitter and proposed system found deep learning methods work more efficiently than the feature-based methods for HSspam 14 dataset. In 2018, Chen et al. [11] proposed a system which uses LDT, LHS, Lfun, and improved Lfun. It requires less time for the enhanced Lfun to execute only if old spams are deleted from its training samples. In 2018, Kamble and Sangve [12] proposed a solution to the real time evaluation of novel machine learning-based approach to social spam detection. The suggested system has developed a Lfun scheme to handle twitter spam that helps to reduce the effect of drift spam problems. In 2018, Alon et al. [13] built spam detection models that involved data collection, analysis, evaluation, and feature ranking. It is noted that the top characteristics identified by the method of selecting characteristics (i.e., gaining data) yield somewhat enhanced efficiency.
3 Proposed System In this study, the proposed work was carried out with a classification algorithm of machine learning techniques in order to predict spam text-based tweets using the SMS Spam Collection dataset from UCI Repository. A. Dataset Information In the proposed model, The SMS Spam Collection Dataset from UCI Repository was used for spam and non-spam classification of text tweets. It consists of 5574 instances and it has special characteristics like Multivariate, Text, and Domain Theory. B. Data Preprocessing The Fig. 1 illustrates System Design of the proposed framework which can detect the spam tweets. Preprocessing includes stopword removal, tokenization stemming, and vectorization. Initially tokenization is carried out, where the tweet message is broken into Words, symbols, sentences or other relevant components called tokens. Then Stopwords are removed from tokens to enhance the data. Then stemming is carried out, where inflection in words is reduced to their root forms such as mapping a group of words to the same stem. C. Classification Algorithms i. Naive Bayes Classifier Naive Bayes is a Bayes theorem-based classification method with an assumption of independence between predictors. Naive Bayes model is very simple to construct and is mostly helpful for very big information set. Bayes theorem helps in calculating posterior probability P(a|b) from P(a), P(b) and P(b|a) [14]. P(a|b) =
P(b|a) P(a) P(b)
(1)
404
V. Mardi et al.
Fig. 1 System design
P(a|b) P(a) P(b|a) P(b)
The posterior probability of class. The prior probability of class. The likelihood. The prior probability of predictor.
ii. Artificial Neural Network In fact, the Artificial Neural Network is a computer model which is based on Biological neural network structure and functions and it is also considered as a nonlinear modeling instrument for statistical data where the connection of complexity between inputs and outputs is modeled. Figure 2 illustrates the architecture of Artificial Neural Network which consists of Input, Hidden, and Output Layers.
4 Results and Discussion A. Hardware Requirements and Software Requirements The proposed system is implemented using the corei5 processor having 8GRAM. An operating system (i.e., windows10) of 64 Bit, x-64 based Processor is used. Anaconda Navigator is considered as the development and execution environment. Python is coding language and Jupyter notebook is tool used to develop proposed framework.
Text-Based Spam Tweets Detection Using Neural Networks
405
Fig. 2 Architecture of artificial neural network
B. Results and Comparisons The proposed system illustrates the spam and non-spam tweets are detected using the algorithms of the Naïve Bayes Classification and the Artificial Neural Network. Table 1 illustrates the comparison of the results which is carried out in order to compare the accuracy of algorithms that are Naïve Bayes classifier and Artificial Neural Network. The Artificial Neural Network provides high accuracy and that is considered as the best algorithm as shown in Fig. 3. Figure 4 illustrates the suggested model’s confusion matrix. If the predicted value is incorrect and the real value is also incorrect, it is called True Negative (TN). If Table 1 Comparison of results
Accuracy of different machine learning methods
Overall Accuracy
Naïve Bayes Classifier
Artificial Neural Network
0.88
0.92
Fig. 3 Accuracy and error representation of the proposed model
406
V. Mardi et al.
Fig. 4 Confusion matrix for the proposed model
the predicted value is correct and actual value is also correct then it is called True Positive (TP). If the predicted value is correct and actual value is incorrect then it cannot predict correct result, which comes under False Positive (FP). It is said to be Type-I Error. Similarly, if predicted value is incorrect and actual value is correct, then it is known as False Negative (FN). It is also known as Type-II Error. There are 1404 texts which are correctly classified as ham (non-spam) words and 146 texts that are correctly classified as spam words in Artificial Neural Network. Tables 2 and 3 illustrates the Precision value, Recall. and F1-score of Naïve Bayes Classifier and Artificial Neural Network, respectively. The fraction of spam text among the total number of text tweets is called precision. The recall is known as the percentage of spam messages in the appropriate text tweets. P r eci si on = Recall =
Table 2 Precision value, F1-score, and recall of Naive Bayes Classifier
Table 3 Precision value, F1-score, and recall of artificial neural network
0
TP T P + FP
(2)
TP T P + FN
(3)
Precision
Recall
F1-score
0.88
1.00
0.93
1
1.00
0.24
0.39
Average
0.90
0.88
0.85
Precision
Recall
F1-score
0.92
1.00
0.96
0 1
0.95
0.56
0.71
Average
0.93
0.93
0.92
Text-Based Spam Tweets Detection Using Neural Networks
F1−scor e =
2 ∗ (Recall ∗ P r eci si on) Recall + P r eci si on
407
(4)
5 Conclusion and Future Work The structure suggested is to identify whether the tweets provided are spam or nonspam using machine learning techniques, i.e., Naive Bayes Classifiers and Artificial Neural Network. The proposed system is capable of detecting only the English language text tweets and future work is to concentrate on designing the framework that detects different language text tweets and URLs. The observation shows that accuracy obtained from Artificial Neural Network is indeed better than Naive Bayes Classifiers algorithm.
References 1. Gupta, H., Jamal, M. S., Madisetty, S., & Desarkar, M. S. A framework for real-time spam detection in twitter. 2. Katpatal, R., et al. (2018). An efficient approach of spam detection in twitter. In Proceedings of the International Conference on Inventive Research in Computing Applications (ICIRCA 2018). IEEE Xplore Compliant Part Number: CFP18N67-ART. ISBN: 978-1-5386-2456-2. 3. Kaur, P., et al. (2016). Spam detection on twitter: A survey. In International Conference on Computing for Sustainable Global Development (INDIACom). 4. Lee, K., Caverlee, J., & Webb, S. (2010). Uncovering social spammers: Social honeypots + machine learning. In Proceedings of 33rd International ACM SIGIR Conference on Research and Development in Information Retrieval (pp. 435–442). 5. Song, J., Lee, S., & Kim, J. (2011). Spam ltering in twitter using sender-receiver relationship. In Proceedings of 14th International Conference Recent Advances Intrusion Detection (pp. 301– 317). 6. Junnarkar, A. (2018). An efficient approach of spam detection in twitter. In Proceedings of the International Conference on Inventive Research in Computing Applications (ICIRCA 2018). IEEE Xplore Compliant Part Number: CFP18N67-ART; ISBN: 978-1-5386-2456-2. 7. Chen, C., Zhang, J., Chen, X., Xiang, Y., & Zhou, W. (2015). 6 million spam tweets: A large ground truth for timely twitter spam detection. In IEEE ICC-Communication and Information System Security Symposium. 8. Chen, C., Zhang, J., Xie, Y., Xiang, Y., Zhou, W., Hassan, M. M., AlElaiwi, A., & Alrubaian, M. (2015). A performance evaluation of machine learning based streaming spam tweet detection. IEEE Transaction on Computational Social System, 2(3). 9. Mateen, M., Islam, M. A., & Iqbal, M. A. (2017). A hybrid approach for spam detection for twitter. In Proceedings of 2017 14th International Bhurban Conference on Applied Sciences & Technology (IBCAST). Islamabad, Pakistan, 10th–14th January. 10. Madisetty, S., & Desarkar, M. S. (2018). A neural network-based ensemble approach for spam detection in twitter. IEEE Transaction on Computational Social Systems. 11. Chen, W., et al. Real-time twitter content polluter detection based on direct features. 978-14673-8611-1/15/$31.00 ©2015. IEEE.
408
V. Mardi et al.
12. Kamble, S., & Sangve, S. M. (2018). Real time detection of drifted twitter spam based on statistical features. In IEEE International Conference on Information, Communication, Engineering and Technology (ICICET). 13. Alon, Z., et al. (2018). Detecting spam accounts on twitter. IEEE/ACM ASONAM 2018, Barcelona, Spain. 978-1-5386-6051-5/18/$31.00 ©2018 IEEE, August 28–31. 14. Hasan, K. M. A., Sabuj, M. S., & Afrin, Z. (2015). Opinion mining using Naive Bayes. In 2015 IEEE International WIE Conference on Electrical and Computer Engineering (WIECONECE). BUET, Dhaka, Bangladesh, 19–20 December.
Preserving IPR Using Reversible Digital Watermarking Geeta Sharma and Vinay Kumar
Abstract The spreading wings of the Internet are facing significant obstacles for preserving the intellectual property of individuals and organizations. Threats to digital data and the rights of its creator are always an issue of concern as copying of digital data is easy. The ease of dissemination of digital data leads to penetration in intellectual property rights. Here, rights mean financial and moral interests of the author. The authors have faced risk in protecting their unique ideas, products and/or services. It can be achieved by embedding some copyright information with digital data. Digital watermarking allows the authentication of the data over the intrusion of the attackers. In this paper, we will consider a reversible technique for digital watermarking where the original message or cover is recovered after the extraction of hidden data. A digest of the hidden data is created and embedded with the cover that can be extracted on the receiver end using the extracting algorithm. In addition, the use of private key increases the security level. The cover image can be retrieved in lossless manner and can be reused for further moderations. Keywords Histogram · Watermarking · Steganography · Algorithm
1 Introduction There are significant obstacles in preserving the intellectual property of individuals and organizations. The rights of the creator of a digital medium are always at risk. Intellectual property rights in India can be classified as patent, copyright, design, trademark, etc. Here, copyright refers to the right of creators on the work of art or literature. This includes books, movies, paintings, songs/music, computer programs, ads, maps, database, and technical drawings [1]. The digital data can be G. Sharma (B) JIMS, Sector – 5, Rohini, Delhi, India e-mail: [email protected] V. Kumar NIC, GOI, New Delhi, India e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_38
409
410
G. Sharma and V. Kumar
protected using Content Identification Technologies like digital fingerprinting and digital watermarking and Content Protection Technologies like digital rights management and condition access system. Content protection of the digital media can be failed by the intruders. In such cases, content identification helps to monitor and detect unauthorized copies of the data. It is also used in protecting data from digital manipulation and illegal reproduction. Digital watermarking is a well-known tool that supports Digital Rights Management in order to identify the ownership and data tampering. It is considered as a type of steganography. According to Cox et al. [2], Watermarking is the practice of imperceptibly altering a work to embed a message about that work. Steganography is the practice of undetectably altering a work to embed a secret message. The term steganography was first coined by Trithemius. The word is derived from Greek words steganos and graphia. Steganos means covered and graphia means writing. Digital watermarking and steganography are the methods of hiding a message; the difference lies in the purpose. When the hidden message or watermark is related to the cover work, it is called digital watermarking. Here, the watermark can be a binary bit sequence or text or any image. It is required for authenticating the user for the use and distribution of the data over the Internet. A watermark on a page can decrease the possibility of copy and paste. It also provides the solutions for avoiding the piracy, counterfeiting, and moderation of the cover. It is generally assumed that if you are getting 70% of the watermark, then the result is good. In digital watermarking, only a key remains secret and other information remains public. Other information includes databases, insertion algorithm„ etc. An intruder can impose any number of transformations to the cover object. Digital watermarking algorithms face various challenges like • • • • • • • • •
Imperceptibility: Indicates that watermark is not traceable. Security: Means watermark remains secure from unauthorized access. Robustness: Watermark cannot be destroyed by modifying the watermarked object. Data Payload: It is the maximum amount of information that can be embedded with the cover. The algorithm should be simple and quick on computation. Real-Time Application: Identifying the practical adaptation and uses of the method. The amount of memory required at the time of computation. Detection Technique: A challenge of detection exists in the blind and semi-blind watermarking techniques. Encoding method: It can be a symmetric and an asymmetric method. A symmetric key algorithm uses a private key only whereas an asymmetric key algorithm makes use of public and private key both. The public key is freely available and the private key is provided only to the intended receiver.
Watermarking is generally used to provide proof of ownership of digital data. It is generally achieved by embedding some copyright information with digital data. It can be used for automatic monitoring of the copy-write material on the World Wide Web. It helps in the automatic audit of radio transmission that can be tracked easily
Preserving IPR Using Reversible Digital Watermarking
411
Fig. 1 Sending data over insecure network
during its broadcast. Watermarking also helps in embedding additional information for the advantage of the public—data augmentation. In this, the secret message can be hidden in various types of covers or carriers. It can be digital images, sound files, video files, and the other type of files. A watermarkedimage is the result of embedding watermark that is cover-image with an undetectable secret message. The following figure can explain the concept (Fig. 1): • Cover: Medium that carries the secret message. • Watermark: The message to be embedded. It can be anything that can be represented as a bitstream and can be used to identify the cover like logo and name. • Result: The modified version of the cover message. • Embedding Function: A data hiding function that uses cover and watermark as parameters on the sender’s site and produces the watermarked image as a result. • Extracting Function: A function that extracts the watermark to identify the authentication of the cover and the original cover too.
2 Literature Review Watermark appears as a mark of water on the paper, probably this is why it is called watermark. The mark itself is “transparent” or unnoticeable for the human perception system [3]. It was first used in the 1270s by an Italian company for the manufacturing of paper. Then, in 1697, the Bank of England used it to avoid forgery [2]. The digital watermarking was knowingly first used by Szepanski; the watermark was added to the documents. The actual boom in the digital watermarking can be seen after the year 1996. A few organizations were also made to regularize the watermarking systems like Copy Protection Technical Working Group and Secure Digital Music Initiative. Since then, various techniques have been introduced. Here, we are considering a few good algorithms in the area of reversible digital watermarking using the histogram shifting technique. The idea of reversible data hiding using histogram was first proposed by Shi et al. in [4]. It is used as the base work for histogram shifting data hiding. In this method, a zero point and a peak point are computed where zero point is the smallest value of
412
G. Sharma and V. Kumar
the pixels. This gray scale zero value is not a part of the cover image as the intensity is so low. Here, the peak point is a value that has the maximum number of redundant pixels, in the cover image. The payload capacity of the cover image is dependent on the peak point and for increasing the payload capacity; a number of zero-peak pairs are used. The point in the histogram next to peak value is shifted one position to the right. All points next to the vacant position are also shifted toward the right. The point near zero point gets shifted into the zero point. Now the peak point and the vacant position near it are used for embedding the watermark bits. For embedding more data, this is repeated again and again. All the embedding algorithms that are listed below use multiple pairs of maximum and minimum points, i.e., multiple-zero-peak-points. Another algorithm by Ni et al. proposed in [5] is the case of three pairs of peak and zero points; a pseudocode-embedding algorithm is presented. It is designed to generate this code to reach the cases where any number of multiple pairs of peak and zero points are used. Embedding process and extracting process are the two processes of this algorithm. Tsai et al. proposed a scheme in [6]. It is based on the likeliness of neighboring pixels in the cover. By using the prediction technique and the residual histogram of the predicted errors of the host image, the secret data is embedded in the residual image by using a modified histogram-based approach. To increase the hiding capacity of the histogram-based scheme, the linear prediction technique is employed to process the image. Here, the pixels of the image are predicted from the residual image. Secret data are then embedded in the residual image by using a modified histogram-based approach. The proposed scheme consists of two procedures: the embedding procedure and the extraction and image restoration procedure [7]. This algorithm has been the base for many other algorithms. A data hiding scheme has been proposed by Ching-Chiuan Lin et al. in 2008. It embeds a message into an image using the two differences, between the first and the second pixels as well as between the second and the third pixels in a three-pixel block [7]. The histogram is not directly used in this method, rather its fundamental concepts have been indirectly applied, and that is using peak points, zero points and shifting the gray scale between these two values. In the cover image, an absolute difference between a pair of pixels is selected to embed the message. In the best case, a three-pixel block can embed two bits and only the central pixel needs to be increased or decreased by 1. First, an image is divided into nonoverlapping three-pixel blocks, where the maximum and minimum allowable pixel values are 255 and 0, respectively [7]. A recent method has been proposed by Zhe-Ming Lu et al. in 2015. It was made for JPEG 2000 format. The high-frequency sub-bands of the cover image are divided into blocks. Then the histogram shifting method is applied to the histogram of the block of the embedding data. Every coefficient that is associated with the peak point embeds two bits of data. A direction sign is used to shift the histogram from left of right [8].
Preserving IPR Using Reversible Digital Watermarking
413
3 Method Proposed An important characteristic of the mentioned histogram-shifting-based data hiding methods is that the existence of more histogram peaks implies a higher data hiding capacity [9]. We use an image “tulips” to illustrate the algorithm proposed. The following is the histogram of the image (Figs. 2 and 3):
3.1 The Proposed Method Will Have the Following Properties (i) (ii)
The watermarking embedding and extraction is blind in nature. The watermark can be detected using the watermarked cover only. One of the major problems with data hiding is that the cover image gets distorted to a great extent. In most of the cases, the extraction of watermark
Fig. 2 Tulips
Fig. 3 Histogram of tulips
414
G. Sharma and V. Kumar
and any moderation in the cover image leads to the loss of cover data. In medical imagery diagnosis, defense, and other areas like law enforcement, it is generally mandatory to retain the original cover data. The proposed method is reversible and ensures the retrieval of the original image. (iii) The hidden message or watermark can be text or image. In this proposed method, we have used .bmp images. The format of .bmp images was discussed in [10]. (iv) The cost of computation is low. (v) The result of watermarking is robust for most of the attacks like translation, flip, rotation, and resizing. (vi) The same method is applicable to colored images too. (vii) The quality of the watermarked image is at par. (viii) Different versions of the same algorithm can support various file sizes.
3.2 Embedding Algorithm Further, we described the pseudocode of the embedding and extraction of the watermark. The steps for embedding the watermark are as follows: 1. For the given image, first, we resize the gray scale image to the size 512 × 512 × 8. 2. Then generate the 4 × 4 size nonoverlapping blocks of the image. 3. We create the histogram of each block and store it in an output matrix. 4. The watermark can be text or image. We calculate the hash of it using MD5 hashing technique. The digest can be created using MATLAB functions, by writing some program code or online tools. It produces the result with the length of 128 bits. 5. The whole block is scanned row by row and column by column. It is further scanned in a sequential manner. 6. The max_level and min_level of the histogram are calculated and with the help of the key, we store the first bit of the hash in the first block of the image. 7. The process is followed recursively on the rest of the blocks until the whole hash is embedded in the cover.
3.3 Extraction Algorithm The steps for extracting the watermark are as follows: 1. For the given image, first, we resize the gray scale image to the size 512 × 512 × 8.
Preserving IPR Using Reversible Digital Watermarking
415
2. Then generate the 4 × 4 size nonoverlapping blocks of the image. 3. We create the histogram of each block and store it in an output matrix. 4. Now, the hidden bit of the hash is retrieved from the first block with the help of a private key. 5. The process is repeated on all the blocks and finally, the whole hash string is retrieved from it. 6. This 128-bit MD5 hash is reconstructed and the original watermark is retrieved. The reverse engineering of the digest to the image is done with online tools. 7. The original hidden message and cover image can be used separately.
4 Conclusion and Future Scope The proposed algorithm is capable of lossless retrieval of the hidden message. It is a lossless method that uses histogram-bin shifting technique. As a reliable method is used to create the digest of the watermark, the degree of robustness is increased. The length of the output is always 128-bit long irrespective of the size of the watermark. The method is used for text and image watermark only. The capacity of the cover can be increased by repeating the process in the same blocks while taking the second highest value. This method was applied for gray scale images only but can be easily applied to color images. In future, we are planning to work on color images and present the experimental result with stega-analysis.
References 1. What is intellectual property? World Intellectual Property Organization. Retrieved February 2, 2019, from http://www.wipo.int/about-ip/en/. 2. Cox, I., Miller, M., Bloom, J., Fridrich, J., & Kalker, T. (2007). Digital watermarking and steganography (2nd ed.). Kaufmann. 3. Sharma, G., & Kumar, V. (2015). Reversible information hiding and its application in watermarking. International Journal of Engineering Technology, Management and Applied Sciences, 3(Special Issue). ISSN 2349-4476. 4. Shi, Y.Q., Ni, Z., Zou, D., Liang, C., & Xuan, G. (2004). Lossless data hiding: fundamentals, algorithms and applications. In Proceedings IEEE International Symposium on Circuits and Systems (Vol. II, pp. 33–36). Vancouver, BC, Canada. 5. Ni, Z., Shi, Y.-Q., Ansari, N., & Su, W. (2006). Reversible data hiding. IEEE Transactions on Circuit and Systems for Video Technology, 16(3). 6. Tsai, P., Hu, Y.-C., & Yeh, H.-L. (2009). Reversible image hiding scheme using predictive coding and histogram shifting. Signal Processing, 89, 1129–1143. 7. Mehran, Y. Z., Nafari, M., Nafari, A., & Mehran, N. Z. (2011). Histogram shifting as a data hiding technique: an overview of recent developments. In DICTAP 2011, Part I, CCIS (Vol. 166, pp. 770–786). 8. Chaturvedi, R., Sharma, A., Dwivedi, U., Kumar, S., & Praveen, A. (2016) Security enhanced image watermarking using mid-band DCT coefficient in YCbCr space. International Journal of Control Theory and Applications, 9(23), 277–284.
416
G. Sharma and V. Kumar
9. Lee, C.-W., & Tsai, W.-H. (2011). A lossless large-volume data hiding method based on histogram shifting using an optimal hierarchical block division scheme. Journal of Information Science and Engineering, 27(4), 1265–1282. 10. Sharma, G., & Kumar, V. (2017). A novel technique for reversible information hiding. Advances in Computational Sciences and Technology, 10(7), 2069–2078. ISSN 0973-6107.
Analysis of Part of Speech Tags in Language Identification of Code-Mixed Text Mohd Zeeshan Ansari, Shazia Khan, Tamsil Amani, Aman Hamid and Syed Rizvi
Abstract Language identification is the detection of the language of a text in which it is written. The problem becomes challenging when the writer does not use the indigenous script of a language. Generally, this kind of text is generated by social media which is a mixture of English with the native language(s) of the writer. The users of social media platforms that belong to India write in code-mixed Hindi– English language. In this work, we study the word-level language identification as a classification problem to identify the language of a word written in Roman script. We employ POS tags in a transliteration-based approach to prepare the Hindi–English code-mixed corpus. We evaluate the corpus over itself and observe that notable results are obtained. Keywords Language identification · Code-mixed text · POS tagging · Transliteration
1 Introduction The social media has rapidly and extensively evolved due to technological developments and drastically facilitated its users to readily communicate secure messages and share rich information with one another. The progress and expansion of social M. Z. Ansari (B) · S. Khan · T. Amani · A. Hamid · S. Rizvi Department of Computer Engineering, Jamia Millia Islamia, New Delhi, India e-mail: [email protected] S. Khan e-mail: [email protected] T. Amani e-mail: [email protected] A. Hamid e-mail: [email protected] S. Rizvi e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_39
417
418
M. Z. Ansari et al.
media platforms such as blogs, microblogs, e.g. Twitter and WhatsApp, and chats, e.g. Facebook messages, have created numerous opportunities for information sharing and access, and on the other hand, introduced new challenges, making it one of the prime present-day research areas. Also, several challenges are encountered while building automated systems for processing the text predominantly because of carefree language being used by the users. On a social media platform, there exist multilingual orators and communicators who often switch between languages [1]. Due to multilingual nature of social media text, the automatic language identification becomes an essential and challenging task [2]. The multilingual speakers use multiple languages to write text on social media; moreover, they insert transliteration, phonetic typing and native words or phrases through anglicism or code-mixing. The Roman script is preferred over the native script for the convenience of phonetic typing which leads to code-mixing of English with native language [1, 3]. The word-level language identification of code-mixed data, especially for Hindi, the official language of India, is inherently difficult because of the conversion of the script from Devanagari to Roman script. Due to the lack of standardization in this conversion of text from one script to another, a single word can have multiple transliterations. Moreover, the Hindi words can also be transliterated into an English word, e.g. ‘is’ (this), ‘hi’ (an auxiliary verb) and ‘us’ (that). Parts of Speech (POS) tagging is one of the most significant phases of language processing when automating any task to comprehend the semantics and meaning of the text. In this work, we address the problem of identifying the language in the Hindi–English code-mixed text and exploit POS tags of each word from Hindi– English dictionary. For the work, we prepare a corpus and evaluate it over several machine learning algorithms.
2 Language Identification and Code-Mixed Text Language identification problem has been under investigation since long. Dunning (1994) applied Markov models over n-gram frequency profiles to the language identification task [4]. The dot products of word frequency vectors were evaluated by Darnashek [5]. Support vector machines using string kernels were proposed by Kruengkrai et al. [6]. Apart from statistical machine learning methods, the linguistically enhanced models have also been presented. Johnson (1993) recommended a model using stop word lists which checks the degree of overlap of the document with the list of various languages [7]. Subsequently, cross-language tokenization, correlation of word and part-of-speech and grammatical class models were other methods that were propounded [8–10]. Hammarstrom (2007) proposed the creation of a dictionary based on the affix table and tested the synthetic data derived from a parallel bible corpus [11]. Ceylan and Kim (2009) developed a method using decision trees to assimilate the outputs from other language identification methods [12]. Vatanen et al. (2010) utilized n-gram language modelling with Naïve Bayes classification over the data garnered from UDHR [13]. Carter et al. (2013) made use of the user’s
Analysis of Part of Speech Tags in Language …
419
previous messages on Twitter with language identification priors [14]. Tromp and Pechenizkiy (2011) initiated a method using graph structure and extended the standard bag of words for text to further incorporate information [15]. Goldszmidt et al. (2013) presented a bootstrapping method to obtain in-domain training data from Twitter [16]. Recently, it is observed that word-level language identification is given more prominence than document-level language identification [17, 18]. Nguyen et al. (2013), Ling et al. (2013) modelled the language identification problem to detect the language of each word in multilingual online communications [19, 20]. Baldwin and Lui (2010) utilized numerous models like the Nearest Neighbour and the Nearest Prototype model, Naïve Bayes and SVM. Moreover, the evaluation was accomplished by the cross-product of the options like the model, tokenization and n-grams [21]. Lui and Baldwin (2011) stressed on the importance of cross-domain learning for the language identification model and employed the Multinomial Naïve Bayes learner, linear kernel SVM learner. Information gain of particular n-gram features in multiple dimensions were considered and evaluated [22]. Code-mixing can be defined as the mingling of two or more languages in text or speech. Such kind of communication is prevalent among social media users, as a means for communicating with others in short spans of text and also for effectively expressing one’s opinion. Majority of such code-mixing is written in the same Romanized script as switching between different keyboard interfaces is difficult. Apparently, less attention has been received on automatic language identification for multilingual texts although notable work can be found in the literature. The investigation of the linguistic nature and conversational needs of code-mixing and compared inter-sentence, intra-sentence and intra-word code-mixing is carried out [22–25]. Many investigations have been initiated on the types of code-mixing. The frequency of code-mixing is aggravated during ‘vigorous emotional arousal’ [26]. Dey and Fung (2014) analysed the grammatical contexts and the motivations using Hindi–English code-mixed speech corpus from student interviews [27]. Work on detection of code-mixing in the text also has been investigated by many. Solorio and Liu (2008) initiated the prediction of the points in Spanish–English sentences where the orator transitions between the languages [28]. Code-mixing in short messages and information retrieval queries is explored in [29–31]. Word-level language identification was performed by King and Abney (2013) utilizing semi-supervised methods [18]. Nguyen and Dogruoz (2013) experimented on Turkish and Dutch forum data and used several language models, dictionaries, and probabilistic models such as Conditional Random Fields and Logistic Regression [19].
3 POS Tag Based Language Identification for Code-Mixed Text There have been considerable efforts for language identification of code-mixed text, however, utilization of Part of Speech as a feature for language identification has been very rare. Perhaps, using language labels for POS tagging has been found in [32–34].
420
M. Z. Ansari et al.
POS tagging is a significant process in corpus linguistics for marking up a word to a particular Part of Speech which is based on its relationship with adjacent and related words. A simplified version of POS tags is commonly used in the identification of words classes to marks them as nouns, verbs, adjectives, adverbs, etc. The preparation of evaluation corpus for the POS tag based language identification task involves the development of Hindi-labelled text and English-labelled text. The development of Hindi-labelled data involves the following subtasks (i) Collection of Devanagari text, (ii) POS tagging of Devanagari text, (iii) Transliteration of Devanagari text into Roman Hindi text keeping the POS tags intact and (iv) Annotation with Hindi language labels. The development of English-labelled text involves only POS tagging and annotation with English labels.
3.1 Transliteration For the preparation of transliterated Hindi text, we apply a simple algorithm which uses a manually drafted Hindi to English alphabet dictionary mapping. The algorithm reads character by character from the Hindi word and converts it into corresponding English characters based on the rules defined in the Transliteration_Algorithm. We evaluated this algorithm on 52 Devanagari words and found that the algorithm is 80.39% accurate while accepting an error of a single character.
Analysis of Part of Speech Tags in Language … Table 1 Corpus statistics
Language tagset
421 %
# words
English
67.22
4351
Hindi (Transliterated)
32.78
2122
Total
100
6473
3.2 Hindi–English POS Tagging and Language Labelling For our study, we exploit the POS tags of Hindi as well as English words as a significant feature for language identification. In order to develop the Hindi–English code-mixed POS-tagged corpus, we tag the words by using the POS tagger of Natural Language Toolkit [36]. Subsequently, we manually annotate the words with their language labels. To prepare the data for Hindi language labels, we considered 539 Devanagari POS-tagged sentences of Indian corpus NLTK. This text is then transliterated according to the Transliteration_Algorithm to produce corresponding Romanized Hindi text. Then we tokenize the text and transform it into a word-level POS-tagged corpus and mark their language class labels as Hindi. Subsequently, we obtain the Hindi labelled corpus of 2122 words. For English language labels, we considered top frequent 4351 words from word frequency data of the Corpus of Contemporary American English [35]. This set of words is POS tagged using the POS tagger based on [36] according to Universal set. Subsequently, these words are marked with class label English for classification. In this way, it leads to a substantial magnitude of the corpus for transliterated Hindi and English code-mixed text of total 6473 words as shown in Table 1.
4 Experiments for Task Evaluation The evaluation of language identification task using POS-tagged Hindi–English code-mixed corpus is successfully carried out over a range of classification algorithms. We use several combinations of features for comparative evaluation. The word (w) is considered as a generic feature; word along with POS tag (w + POS) and word, word length along with the POS tag (w + wl + POS) are considered for the assessment POS tags as features. We evaluate the prepared corpus over itself using Random Forest, Logistic Regression, Decision Tree and SVM for the evaluation. The Random Forest algorithm performs best for all feature sets. We perform 10-fold cross-validation for all the algorithms. We observe the best performance for Random Forest classifier followed by Logistic Regression as shown in Table 2. We also evaluate the class-wise performance on Random Forest classifier and obtain the results as presented in Table 3. It can be observed that the Hindi labels have quite low recall of 0.87 as compared to the recall 0.97 of English labels. The F-Score of English labels is also higher as compared to the F-Score of Hindi labels. This shows that the classifier performs better for English labels.
85.1
81.8
79.7
82.9
Decision Tree
SVM
85
80.3
80.4
78.4
85.0
81.5
80.0
79.8 91.8
88.2
92.3
91.8
P
Logistic Regression
w + POS tag F
P
R
w
Random Forest
Feature set
Table 2 Evaluation metrics for the language identification task
87.9
89.2
90.2
90.7
R
89.6
88.7
91.2
91.3
F
93.2
89.8
93.7
93.9
P
89.5
90.3
91.2
92.3
R
w + wl + POS tag
91.1
90.3
92.4
93.0
F
422 M. Z. Ansari et al.
Analysis of Part of Speech Tags in Language … Table 3 Class-wise results of 10-fold cross-validation on Random Forest
423
Class
Precision
Recall
F-Score
English
0.95
0.97
0.96
Hindi
0.92
0.87
0.89
5 Conclusion and Future Scope A mixed script Hindi–English POS-tagged and language labelled corpus is successfully prepared. We consider the POS tags of code-mixed text as a significant feature for language identification, and subsequently, utilize them to construct the classifications models. The prepared corpus is evaluated against itself across several machine learning algorithms and noteworthy results are obtained. There is much scope for future work, first, language-dependent features can be explored to generate a stronger learning model. Second, learning techniques may also be employed in transliteration algorithm in order to achieve more accurate Romanized Hindi. Third, domain-specific large-sized noisy corpus may be prepared from Twitter to develop a robust model. Modern deep learning techniques may be applied to construct more sophisticated models for language identification.
References 1. Barman, U., Das, A., Wagner, J., & Foster, J. (2014). Code Mixing: a challenge for language identification in the language of social media. In Proceedings of The First Workshop on Computational Approaches to Code Switching (EMNLP 2014), Qatar (pp. 13–23). 2. Hughes, B., Baldwin, T., Bird, S., Nicholson, J., & MacKinlay, A. (2006). Reconsidering language identification for written language resources. In Proceedings of 5th International Conference on Language Resources and Evaluation (LREC 2006), Genoa, Italy. 3. Gupta, P., Bali, K., Banchs, R. E., Choudhury, M., & Rosso, P. (2014). Query expansion for mixed-script information retrieval. In Proceedings of the 37th International ACM SIGIR Conference on Research & Development in Information Retrieval, Queensland pp. 677–686. 4. Dunning, T. (1994). Statistical identification of language. Technical Report MCCS 940-273, Computing Research Laboratory, New Mexico State University. 5. Darnashek, M. (1995). Gauging similarity with n-grams: language-independent categorization of text. Science, 267, 843–848. 6. Kruengkrai, C., Srichaivattana, P., Sornlertlamvanich, V., & Isahara, H. (2005). Language identification based on string kernels. In: Proceedings of the 5th International Symposium on Communications and Information Technologies (ISCIT-2005, Beijing, China (pp. 896–899). 7. Johnson, S. (1993). Solving the problem of language recognition. Technical Report, School of Computer Studies, University of Leeds. 8. Giguet, E. (1995). Categorisation according to language: a step toward combining linguistic knowledge and statistical learning. In Proceedings of the 4th International Workshop on Parsing Technologies (IWPT-1995), Prague, Czech Republic. 9. Grefenstette, G. (1995). Comparing two language identification schemes. In Proceedings of Analisi Statistica dei Dati Testuali (JADT), Rome, Italy (pp. 263–268). 10. Lins, R. D., Goncalves, P. (2004). Automatic language identification of written texts. In Proceedings of the 2004 ACM Symposium on Applied Computing (SAC 2004), Nicosia, Cyprus (pp. 1128–1133).
424
M. Z. Ansari et al.
11. Hammarstrom, H. (2007). A fine-grained model for language identification. In Proceedings of Improving Non English Web Searching (iNEWS07) (pp. 14–20). 12. Ceylan, H., & Kim, Y. (2009). Language identification of search engine queries. In Proceedings of the Joint Conference of the 47th Annual Meeting of the ACL and the 4th International Joint Conference on Natural Language Processing of the AFNLP, Singapore (pp. 1066–1074). 13. Vatanen, T., Vayrynen, J., & Virpioja, S. (2010). Language identification of short text segments with n-gram models. In: Proceedings of the 7th International Conference on Language Resources and Evaluation (LREC 2010) (pp. 3423–3430). 14. Carter, S., Weerkamp, W., & Tsagkias, M. (2013). Microblog language identification: overcoming the limitations of short, unedited and idiomatic text. Language Resources and Evaluation 1–21. 15. Tromp, E., & Pechenizkiy, M. (2011). Graph-based n-gram language identification on short texts. In: Proceedings of Benelearn 2011, The Hague, Netherlands (pp. 27–35). 16. Goldszmidt, M., Najork, M., & Paparizos, S. (2013). Boot-strapping language identifiers for short colloquial postings. In Proceedings of the European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases (ECMLPKDD 2013), Prague, Czech Republic. 17. Yamaguchi, H., & Ishii, K. T. (2012). Text segmentation by language using minimum description length. In Proceedings the 50th Annual Meeting of the Association for Computational Linguistics (Long Papers), (Vol. 1, pp. 969–978), Jeju Island, Korea. 18. King, B., & Abney, S. (2013). Labeling the languages of words in mixed-language documents using weakly supervised methods. In Proceedings of the 2013 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies (pp. 1110–1119), Atlanta, Georgia. 19. Nguyen, D., & Dogruoz, A. Z. (2013). Word level language identification in online multilingual communication. In Proceedings of the 2013 Conference on Empirical Methods in Natural Language Processing, Seattle, USA (pp. 857–862). 20. Ling, W., Xiang, G., Dyer, C., Black, A., & Trancoso, I. (2013). Microblogs as parallel corpora. In Proceedings of the 51st Annual Meeting of the Association for Computational Linguistics (Long Papers), (Vol. 1, pp. 176–186), Sofia, Bulgaria. 21. Baldwin, T., & Lui, M. (2010). Human Language Technologies: In: The 2010 Annual Conference of the North American Chapter of the ACL, Los Angeles, California (pp. 229–237). 22. Lui, M., & Baldwin, T. (2011) In: Proceedings of the 5th International Joint Conference on Natural Language Processing, Chiang Mai, Thailand (pp. 553–561). 23. Milroy, L., Muysken, P. (1995). One speaker, two languages: cross-disciplinary perspectives on code-switching. Cambridge University Press: Cambridge. 24. Alex, B. (2008). Automatic detection of English inclusions in mixed-lingual data with an application to parsing. Ph.D. thesis, School of Informatics, The University of Edinburgh: Edinburgh, UK. 25. Auer, P. (2013). Code-Switching in Conversation: Language, Interaction and Identity. London: Routledge. 26. Dewaele, J. M. (2010). Emotions in Multiple Languages. Palgrave Macmillan. 27. Dey, A., & Fung, P. (2014). A Hindi-English code-switching corpus. In Proceedings of the Ninth International Conference on Language Resources and Evaluation (LREC’14) (pp. 2410– 2413), Reykjavik, Iceland. European Language Resources Association (ELRA). 28. Solorio, T., & Liu, Y. (2008a). Learning to predict code-switching points. In Proceedings of the Conference on Empirical Methods in Natural Language Processing, Association for Computational Linguistics (pp. 973–981). 29. Gottron, T., & Lipka, N. (2010). A comparison of language identification approaches on short, query-style texts. In Advances in information retrieval (pp. 611–614). Springer. 30. Farrugia, P. J. (2004). TTS pre-processing issues for mixed language support. In Proceedings of CSAW’04, the Second Computer Science Annual Workshop (pp. 36–41). Department of Computer Science & A.I., University of Malta.
Analysis of Part of Speech Tags in Language …
425
31. Rosner, M., Farrugia, P. J. (2007). A tagging algorithm for mixed language identification in a noisy domain. In 8th Annual Conference of the International Speech Communication Association INTERSPEECH-2007 (pp. 190–193). ISCA Archive. 32. Jamatia, A., Gambach, B., & Das, A. (2015). Part-of-speech tagging for code-mixed EnglishHindi Twitter and Facebook chat messages. In Proceedings of Recent Advances in Natural Language Processing, Bulgaria (pp. 239–248). 33. AlGhamdi, F., et al. (2016.) Part of speech tagging for code switched data. In Proceedings of the Second Workshop on Computational Approaches to Code Switching, Austin (pp. 98–107). 34. Sequiera, R., Choudhury, M., Bali, K. (2015). POS tagging of Hindi-English code mixed text from social media: Some machine learning experiments. In Proceedings of the 12th International Conference on Natural Language Processing, Trivandrum, India (pp. 237–246). 35. https://www.english-corpora.org/. Accessed 26 Feb 2019. 36. Loper, E., & Bird, S. (2002). NLTK: The natural language toolkit. In Proceedings of the ACL-02 Workshop on Effective Tools and Methodologies for Teaching Natural Language Processing and Computational Linguistics.
Sentiment Analysis of Smartphone Product Reviews Using Weightage Calculation Jayantkumar A. Rathod, Shetty Vignesh, Aishwary J. Shetty, Pooja and Nikshitha
Abstract Sentiment analysis is extremely useful in monitoring the social media and the most popular tool for text classification, and analyzes the input and informs you if it is positive, negative, or neutral. It helps to collect large amount of data systematically and it extracts the subjective information from them. Humans have the indelible ability to determine sentiment which is time-consuming process, conflicting, and costly in a business context. It is not practical to have people individually read all the reviews of the customer and scores them for sentiment. So, to overcome this, sentimental analysis models has been developed. In our proposed system, we are using weightage classification model to analyze the tweets from Twitter API and classify based on their respective sentiment. Keywords Sentiment analysis · Weightage · Reviews · Tweets · Social media
1 Introduction For most of the industries nowadays, taking up feedback from customers has become a most essential task. From time to time, it has great impact on growth of the organization. So, opinion mining plays an immense role in going through the feedback J. A. Rathod (B) · S. Vignesh · A. J. Shetty · Pooja · Nikshitha Department of Information Science and Engineering, Alvas Institute of Engineering and Technology, Moodbidri 574225, Karnataka, India e-mail: [email protected] S. Vignesh e-mail: [email protected] A. J. Shetty e-mail: [email protected] Pooja e-mail: [email protected] Nikshitha e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_40
427
428
J. A. Rathod et al.
which the customer gives about the products on official sites of organization or on social media. Networking has improved the transparency between the seller and the buyer. Social media has provided platform for people to give their opinion and views regarding various aspects. These reviews which can be positive, negative, or neutral have helped organization to improve their products and reach consumer’s expectations. In this paper, we achieve this by using sentimental analysis through weightage calculation classification. Sentiment analysis is a contextual text mining in which subjective data is identified and extracted in source material. Huge amount of data is available in social media where people share their feelings, reviews, opinions, and ideas. These views are also linked to the user’s feeling that expresses the view. For this purpose, training models have been developed. Training the model is made up of five steps and they are analysis, design, development, execution, and evaluation by giving tweets as an input. Twitter is a service for microblogging. It allows users to tweet with a maximum duration of subject of 140 characters. Twitter has 500 million tweets sent each day, 326 million people use Twitter every month according to late 2017 survey, and 9% more people are using Twitter on daily basis. For organization, Twitter data is very useful. It can be used for views and reviews of customers in mining in many industries by analyzing feelings. Analysis of sentiment can be performed in three stages and they are level of document, level of phrase, and level of entity or aspect. The favorable, adverse, neutral emotions, or views can be analyzed using tweets about social media individuals. Classifiers like Naïve Bayes, KNN, and support vector machines were tested for the best accuracy.
2 Literature Survey Trupthi et al. [1] proposed sentimental analysis on Twitter streaming API for live tweets the system extracted SNS service information made using Twitter’s Streaming API and loaded into Hadoop. They scored less as they used unigram method to classify and to understand sarcasm and lexical affinity. Kumari et al. [2] proposed a system which works on applying sentimental analysis and technique of machine learning, i.e., support vector machine to achieve the high accuracy and study the relationship among the online reviews for smartphone product. Giatogolan et al. [3] proposed a system which classifies tweets on the basis of polarity of sentiments using various sentimental tools and scored less as they conducted sentimental analysis on the smaller dataset. Sharma and moh [4] explain the preceding works. The objective is to define the important difficulties in the assessment of sentiments and to explore how to enhance the outcomes of precision appropriate to the methods used. Mishra et al. [5] proposed a sentimental analysis to predict the election of India using tweets from Hindi Twitter and they have collected models including Max Entropy, Support Vector Machines (SVM), and Naive Bayes and have found that
Sentiment Analysis of Smartphone Product Reviews …
429
SVM has performed best among many others. The paper scored less as they did not consider emoticons which are also relevant and data was manually labeled. Hussein et al. [6] suggested the use of hybrid approach for the prediction of sentiment in which context sentiment coding used and sentiment information given by lexicon were combined and this was done to get more accuracy efficiency and process time. Shukri and Yaghi [7] proposed system which works on movie dataset and more importance is given to semantics and grammar for which they have taken labeled data so that they can check for accuracy and also used various algorithms and scored less in that it has less accuracy considered to human as sentiment perceptions and the feature extraction process is computationally expensive. Bhuvan et al. [8] proposed sentimental model using naïve-based algorithm to classify the polarity of trained dataset and to validate the model to get the percentage for three categories like positive, negative, or neutral for the automotive industry. Bar [9] proposed a sentimental model, considering sentiment analysis as an issue in classifying two distinct datasets (IMDB and Twitter). It was discovered that classifying Twitter information is more difficult than classifying IMDB information using word-based characteristics and precision of 0.8385 can be accomplished using SVMPOLY version. Liang and Dai [10] used the Twitter API for tweet collection. The tweets containing views have been filtered out. Model Unigram Naive Bayes was created to identify polarity. They used the extraction technique of mutual information and chi square function for elimination of unwanted features. Finally, this technique did not offer greater precision to the strategy of predicting the tweet feeling as positive or negative. In [11], Nguyen and Varghese extended the sentimental analysis strategy using machine learning to aggregate public opinions in UK using twitter datasets. The authors conducted a case study and proposed a structure for public sentimental analysis followed by the visualization of outcome in terms of sensible correlations of attributes. Mittal et al. [12] developed an effective strategy for identifying Hindi content sentiment. By incorporating more opinion phrases and improving the current Hindi SentiWordNet (HSWN), they constructed the Hindi language corpus. Their algorithm demonstrated 80 percent accuracy in the study course of action. Mukherjee and Malu [13] submitted a Sentiment Analysis System—TwiSent and discussed various issues linked to opinion mining such as spams, text-based structural anomalies, and text-based pragmatics. Pak and Paroubek [14] proposed a model for a positive and negative classification of tweets. They developed a Twitter corpus using Twitter API by gathering tweets and annotating those tweets automatically using emoticons. The multinomial Naive Bayes sentiment classification technique was created using this corpus, which utilizes certain characteristics like POS-Etiquette and N-gram. The training set used in the study was less effective because only tweets with emoticons were regarded. Gune et al. [15] implemented the Marathi language parsing and constructed a parser with a Chunker and Marathi POS tagger. Morphological analyzers provide
430
J. A. Rathod et al.
the ambiguity and suffixes for extracting characteristics in their described structure set. Yessonov and Misailovic [16] worked on film reviews assessment. For this type of issue, machine learning algorithms are quite common. Support vector machine was used to classify each blog post as favorable, negative, or neutral. Many versions have been used in this fundamental model. Munjal et al. [17–19] proposed a model which in a situation will determine the dominated view. The study of over 500 tweets taken from Twitter as feelings of three films before and after release. To perform lexical analysis on the data Text, blob API was used. This led in three kinds of opinions, i.e., positive, negative, and neutral for each tweet. The methodology was useful in developing real-time marketing policies based on user interactions on social networking sites.
3 Methodology In this proposed framework, the data has been fetched related to any brand name of mobile phones through Twitter API and stored into the database. Then these stored tweets are fetched from the database passed on to the preprocesser. The preprocesser processes the tweets and removes hyperlinks, special characters, and unnecessary words and extracts only keywords. These extracted keywords are stored in keywords database. Then each of these keywords is compared with the set of keywords stored in table under positive, negative, and neutral columns. Based on the weightage calculation algorithm, it allocates the weights to it. Based on the weights sentiment analysis, tweets are classified into different sentiments along with their actual tweets and the whole result can be displayed in the form of graph. In Fig. 1, tweets are extracted by given input keyword, i.e., specifically product names of mobile phones through Twitter API. We can do sentiment analysis for 100
Product Name
Twitter API
Fetches Tweets
Tweet
Tweets
Database
PreProcessing
Extraction of
Keyword
keywords
Database
Apply Classification Technique on
Stored Database
Results
Tweets Sentiment
Fig. 1 Proposed model of sentimental analysis
Sentiment analysis
weights
Weightage Calculation
Sentiment Analysis of Smartphone Product Reviews …
431
tweets at a time or we can extract tweets, both are stored in tweet database, and then we can do it for more than 100 tweets at a time. Once the tweets are extracted with respect to a particular input keyword name, it will be stored on to the database. Then for preprocessing, we need to extract from the tweet database and then it is passed on to the preprocessor. The preprocessor is fed with the tweets extracted from the tweets database and preprocessing is done by removing the hyperlinks, special characters, noun, etc., and hence does extraction of keywords and we can fetch the keywords from the tweets stored. These keywords are then stored into keywords database, from which keyword can be extracted and passed on to sentimental classifier, i.e., weightage calculation-based classifier. In the weightage classifier, we have stored database containing a table which has a set of positive, negative, neutral, and undecidable words. Once the keywords are passed on to the classifier, it will compare our extracted keyword with the words in the database and weightage is given to each keyword based on this comparison. Once each keyword in a tweet gets the weightage it will be calculated like how many keywords are positive, negative, neutral, or undecidable. At last, if weightage of positive word is more, then it will be classified as a positive tweet and so on. (1) Tweets Import Process In this module, we are going to communicate with Twitter Api based on access secret keys and consumer’s token key, if the Twitter account keys are valid, related tweets are picked up from the API for Twitter based on the college name given. Related mobile phone brand tweets are picked up from the Twitter API and imported to database (stored in database). Restriction 100 tweets → work in progress to get more tweets. Additional option → excel (no limit). (2) Tweets Preprocessing In this module, all the special characters, unnecessary words, and hyperlinks present in the imported tweets will be removed. This process is called preprocessing of tweets. All preprocessing is done using user-defined functions. Following algorithm describes preprocessing technique: 1. Preprocessing algorithm (pseudocode): Step1: Let n be the number of tweets. Step2: For i = 0 to n. Step3: Delete unnecessary words from tweet. Step4: Delete hyperlinks from tweet. Step5: Remove special figures. Step6: End for loop. Step7: Stop.
432
J. A. Rathod et al.
Removing Special Characters, Hyperlinks Special characters are removed using Regex—the Java Pattern class (java.util.regex.Pattern) which is the Java regular expression API’s primary access point, when system is given to work with the regular expressions in Java. We have two ways in which we can use Java Pattern class. The Pattern.matches() method which verifies rapidly whether a text (string) corresponds to a specified regular expression. Pattern instance can be compiled using Pattern. Another one is Pattern.compile() which can be used to match regular expression various times with multiple texts. Using regex the hyperlinks are removed, special characters are removed, and white spaces are collapsed. Removing Unnecessary Words Initially, we have one table containing set of unnecessary words, and that table is iterated and each word (keyword) is compared with each word in table, and if matched or found that word is removed. This is how all the unnecessary words are removed. Self-learning System In this module, we need to keep some trained data. Trained data is nothing but initialization of dictionary. The initialization is some positive words, negative words, neutral words, unnecessary words, and nouns are maintained priory. Sentiment Analysis (classification model—weightage calculation) In this module, words’ standardization will be done first, whether the filtered keyword is positive, neutral, or negative. If the sentiment of the word is checked, the count is incremented of that particular sentiment type, and the remaining words in the tweets expanded as expansion with sentiment type for the next iteration. Based on the sentiment type count, the tweet sentiment is decided. (1) Weightage calculation→ weights for each keyword in tweet (p, n, neu, undecidable). • We have maintained a database with set of initial keywords and appropriate sentiments. • Traverse filtered keywords in each tweet, and compare it with the set of keywords with appropriate sentiments stored in database. • There are three flags associated with each keyword, if the comparison results are positive sentiment then positive flag is set for that particular keyword, if the comparison results are negative sentiment then negative flag is set for that particular keyword, and if results are in neutral sentiment then neutral flag is set.
Sentiment Analysis of Smartphone Product Reviews …
433
• If that keyword is not present in the initial set of keywords, then it is considered as undecidable sentiment and it is stored in database for further learning called as self-learning. • At the end, calculation is being done to find the sentiment of a tweet. – If maximum count of sentiments for all keywords present in the tweet is positive, then that tweet is considered as positive tweet. – If maximum count of sentiments for all keywords present in the tweet is negative, then that tweet is considered as negative tweet. – If maximum count of sentiments for all keywords present in the tweet is neutral, then that tweet is considered as neutral tweet. Algorithm: Keyword Adaptive Sentiment Classification Step1: Let n be tweets. Step2: For i = 0 to n. Step3: Count positive = 0, negative = 0, neutral = 0. Step4: count = count + 1. Step5: Based on positive, negative, and neutral count. Step 6: Give sentiment process. Step 7: End for loop. Step 8: Stop. 2. Self-learning System The above classification model learns each time when a new dataset is inserted by calculating the probability of all undecidable keywords and giving them a threshold each time. – The threshold has been assigned based on its probability of incidence in different sentiment tweets (positive, neutral, or negative). – The threshold is updated each and every time a new dataset has been given to the system. Algorithm: Auto-inclusion of Sensitive Word (Self-learning) (pseudocode) Step1: Let n be tweets. Step2: Extract sensitive words. Step3: Initialize positive words, negative words, and neutral words. Step4: Repeat for i = 1 to n. Step 5: Repeat Step 2 and Step 3. Step 6: Stop.
434
J. A. Rathod et al.
4 Result and Discussion 4.1 Experimental Setup In our proposed framework, we extract our required tweets about mobile phone review using Twitter API. Figure 2 shows the tweet which is extracted using the mobile phone product name, i.e., Apple, so all data based on the apple keyword in Twitter API will be extracted. The process can be repeated for other mobile phones also. Here we maintain database for storing the tweets. For creating web pages, we have used JavaScript and CSS. The entire setup is done in J2EE environment.
4.2 Result Figure 3 shows the comparison of extracted keyword with the corresponding database keyword, in which weights are allocated to the keywords by the weight allocation algorithm. The resultant keywords are processed by the sentiment analysis module for further classification of keywords into respective tweets. In Fig. 4, it shows the graph of the sentiment analysis carried out on mobile phone reviews of Apple iPhone. Red specifies the favorable number of reviews, purple specifies the number of negative tweets, green specifies the number of neutral tweets, yellow specifies the undecidable tweets, and pink represents total number of tweets extracted using weightage calculation classifier undecidable and total count of the tweets extracted from the Twitter API.
Fig. 2 Tweets dataset extracted
Sentiment Analysis of Smartphone Product Reviews …
435
Fig. 3 Sentimental analysis for mobile phone review
Fig. 4 Percentage of sentiment, i.e., positive, negative, neutral, and undecided
5 Conclusion and Future Enhancement Sentiment analysis is extremely useful in monitoring the social media and is the most popular tool for text classification and analyzes the input and tells whether it is positive, negative, and neutral. Most of the organizations desire feedback in order to further enhance their products, and organizers usually evaluate the user
436
J. A. Rathod et al.
acknowledgement and reply to them on social media. So here is a challenge for analyzing or detecting worldwide sentiment and achieving it. The result showed that the mobile phone name given to weightage classifier has much percentage of positive, negative, neutral, undecidable, and total tweets for a given keyword which helps the user to make a decision while buying a product and organization to overcome their issues and reach consumer expectations. Our proposed system works based on weightage calculation algorithm, and the initial database maintained for comparison of the keywords from the preprocessor has limited initial keywords. In future, we are planning to implement this using Naïve Bayes algorithm.
References 1. Trupthi, M., Pabboju, S., & Narasimha, G. (2017). Sentiment Analysis on Twitter using Streaming API. In IEEE 7th International Advanced Computing Conference. 2. Kumari, U., Sharma, A. K., & Soni, D. (2017). Sentimental analysis of smartphone productreview using svm classification technique. In International Conference on Energy Communication, Data Analytics and Soft Computing. 3. Giatogolan, M. et al. (2016). Sentimental analysis leveraging emotions and word embeddings. Expert Systems with Applications International Journal. 4. Sharma, P., & Moh, T. S. (2016). Peridiction of india election using sentiment analysis on hindhi twitter. In International Conference on Bigdata. 5. Mishra, P., Rajnish, R., & Kumar, R. (2016). Sentiment analysis of twitter data : case study on digital India. In International Conference on Information Technology. 6. Hussein, D.-M. E. D. M. (2016). A survey on sentiment analysis challenges. Journal of King Saud University–Engineering Sciences. 7. Shukri, S. E. & Yaghi, R. I. (2015). Twitter sentiment analysis: case study in automotive industry. In IEEE Jordan Conference on Applied Electrical Engineering and Computing Technologies. 8. Bhuvan, M. S., Rao, V. D., Jain, S., Ashwin, T. S., & Guddeti, R. M. R. (2015). Semantic sentiment analysis using context specific grammar. In International Conference on Computing, Communication and Automation. 9. Bar, K. (2013). Sentiment analysis of movie reviews and twitter statuses. Israel: Tel Aviv U. 10. Liang, P. W., & Dai, B. R. (2013, June 3–6). Opinion mining on social media data. In IEEE 14th International Conference on Mobile Data Management, Milan, Italy. 11. Nguyen, V. D., & Varghese, B. (2013). Royal birth of 2013: analysing and visualising public sentiment in the UK using twitter. In Research Gate. 12. Mittal, N., Agarwal, B., Chouhan, G., Bania, N., & Pareek, P. (2013). Sentiment analysis of hindi review based on negation and discourse relation. In Proceedings of International Joint Conference on Natural Language Processing. 13. Mukherjee, S., & Malu, A. (2012). TwiSent: a multistage system for analyzing sentiment in twitter. In Proceedings of the 21st ACM international Conference on Information and Knowledge Management. 14. Pak, A., & Paroubek, P. (2010). Twitter as a corpus for sentiment analysis and opinion mining. In Proceedings of the Seventh Conference on International Language Resources and Evaluation. 15. Gune, H., Bapat, M., Khapra, M. M., & Bhattacharyya, P. (2010). Verbs are where all the action lies: experiences of shallow parsing of a morphologically rich language. In Proceedings of the 23rd International Conference on Computational Linguistics, pp. 347–355. 16. Yessenov, K., & Misailovic, S. (2009). Sentiment analysis of movie review comments. Methodology.
Sentiment Analysis of Smartphone Product Reviews …
437
17. Munjal, P., Kumar, L., Kumar, S., & Banati, H. (2019). Evidence of ostwaid ripening in opinion driven dynamics of mutually competitive social networks. Physica A, 522, 182–194. 18. Munjal, P., Kumar, S., Kumar, L., & Banati, A. (2017). Opinion dynamics through natural phenomenon of grain growth and population migration. In Hybrid Intelligence for Social Networks (pp. 161–175). Springer: Cham. 19. Munjal, P., Narula, M., Kumar, S., & Banati, H. (2018). Twitter sentiments based suggestive framework to predict trends. Journal of Statistics and Management Systems, 21(4), 685–693.
Personal Identity on Blockchain Deepti Patole , Yogita Borse , Jayesh Jain and Shreya Maher
Abstract The problem of fraud identity documents is a fatal problem. This severity is due to the method currently being employed to create and authenticate legitimate documents. Creation of identity document requires an individual to convince appropriate government authority by producing all supporting proofs of identity declaration. This process is vulnerable as it can result in the accumulation of power to the individual issuing the identity document. Also, the authentication process involves sharing the copy of already issued identity proof. Many a time, identity proofs are shared with individuals who cannot be trusted for their integrity. This can result in misuse of the identity documents for socially evil activities. Blockchain provides a decentralized trust-less network which nobody owns, but everyone can use. The proposed system provides solution to the identity management problem by putting personal identifiers on blockchain. Using blockchain technology, a system has been proposed to create, manage and confirm an individual’s identity and credentials in a much secure way. Sharing of relevant information would be possible only with the identity owner’s will. Hence, creation of false identity documents will be prevented. Keywords Security · Blockchain · Identity documents · Decentralized PKI
D. Patole (B) · Y. Borse · J. Jain · S. Maher K.J. Somaiya College of Engineering, Mumbai 400077, India e-mail: [email protected] Y. Borse e-mail: [email protected] J. Jain e-mail: [email protected] S. Maher e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_41
439
440
D. Patole et al.
1 Introduction The creation and storage of personal identifiers issued by the government for various purposes have a common concern that they are stored on a centralized database system and these databases contain demographic information and biometric data of over billions of individuals and hence could be a honeypot for hackers. With such tremendous amount of personal and private data stored on a centralized system, concerns related to security and threat are legitimate. Addressing these concerns, we have proposed a system for fraud prevention using blockchain technology. Instead of relying on government or central authorities to be the cryptographic foundation of trust, it makes use of a consensus algorithm that functions over numerous different machines which are duplicated by several entities in a decentralized network. This model has been verified by the bitcoin network by functioning for 9 years without a breach. Hence to mitigate the abovementioned problem, a solution was found by putting personal identifiers on blockchain. The proposed system aims to eradicate threats of forgery related to personal identity.
1.1 Objectives The proposed system will focus on achieving the following: • Tamper-proof private data for fraud prevention. • The authentication process without any centralized database or passwords. • Sharing of any personal identity document cannot be done without the document owner’s will.
2 Proposed System Blockchain is a very powerful, robust and distributed platform for transactions that require a uniform, transparent, resilient and consensus-based record-keeping system [1, 2]. We propose a system called “SmartDoc” that helps correctly map personal identity to a blockchain-based identity system. We propose the design of a blockchain-based system ‘SmartDoc’, with protocols to manage personal identity documents by an authorized source (such as the government). There are three major components of the system: creation of the identity documents, storing those documents and sharing of those documents.
2.1 Creation of Identity Documents Blockchain serves as a decentralized self-service registry for public keys. As a matter of fact, now each public key can have its individual identifiable address with
Personal Identity on Blockchain
441
blockchain. This identifiable address is called decentralized identifier (DID) [3]. On the blockchain, a DID is stored alongside a DID document which includes the public key of the DID and additional public credentials that the owner of the identity document desires to reveal. The user brings his public key to the issuer of the document, provides his details; the issuer then digitally signs it with his private key. The creation of the document can only be done by the government or the authorized issuer of the identity document. These immutable conditions are declared in the smart contract. A smart contract is a code that contains set of rules and it runs on top of a blockchain. They allow making transactions in a way that each transaction would be trackable and irreversible.
442
D. Patole et al.
The success of the protocol indicates that the document of the user has been put on the blockchain system. This identity document can further be accessed only by the individual, i.e. the owner of the document.
2.2 Storing of Documents Blockchain is a decentralized ledger that is supported and maintained by a group of miners [4]. New blocks can be added by the miners to blockchain through a consensus protocolby solving a computationally rigorous mathematical problem and then attributing proof of work to the newly created block. Anyone who receives the new chained block can simply validate and confirm the proof of work and determine if the new block is legit. If the majority of miners are honest, an attacker cannot tamper any records as the attacker needs to take over more than 50% of the total computational resources to achieve this.
2.3 Sharing of Documents With the user’s personal identity cryptographically stored directly on a blockchain, it could be possible that users would theoretically no longer need to provide sensitive data to any third party. For sharing of documents, an individual can send a zero-knowledge proof [5, 6], which tells the business (verifier) whether or not that individual (prover) meets their criteria, but does not reveal any information about the prover. For example, if you need to show proof that you are over 18, a business can request your age. You receive the request, approve it and send back a zero-knowledge proof from your governmentissued ID, stating only the information required to meet the criteria (Fig. 1).
3 Implementation Step 1: The identity partner or the personal identity document creator encrypts an individual’s (users) documents using his/her public key after verifying and authenticating the data. Step 2: In blockchain, the identity partner digitally signs each transaction. Step 3: Every transaction (singly or in blocks) has been chained to the preceding one through a digital hash. Step 4: Verified transactions are then replicated in all machines thus exploiting a consensus algorithm. In a Blockchain, since each transaction has a digital signature that needs a private key, it is a clear and strong choice to implement blockchain for storage of associated
Personal Identity on Blockchain
Fig. 1 Workflow diagram for sharing documents
443
444
D. Patole et al.
Fig. 2 Workflow diagram of the proposed system
public key or for the storage of any other cryptographic key over which the owner of the key has to prove his/her ownership. Step 5: The unique address of the document alongside the data is encrypted using the receiver’s public key and sent to the identity receiver. Step 6: The receiver decrypts the data by means of his private key. Step 7: From the sender’s signature, a receiver is able to verify the integrity of the sent data (that it was sent by a valid user). Step 8:The receiver equates hash of the sent data with the hash existing on blockchain for verification of authenticity (Fig. 2).
3.1 Method and Implementation Tools • MetaMask: It allows one to run Ethereum dApps right in the browser without running a full Ethereum node. MetaMask [2] also lets the user create and manage their own identities (via private keys, local client wallet), so when dApp wants to perform a transaction and write to blockchain, the user gets a secure interface to review the transaction, before approving or rejecting it. • Rinkeby Test Network: It is a ‘Proof-of-Authority’ network, which means that blocks are signed by well-known trusted community members. This prevents attackers from taking over the mining power on the network. • IPFS: It stands for Interplanetary File System. It is a file system which can store files and track versions over time. IPFS seeks to create a permanent and distributed web. (Decentralized database) • Smart Contract: They are programs that execute exactly as they are set up by their creators. They help in credible transactions of the documents without third party involvement.
Personal Identity on Blockchain
445
• Web3js: Web3.js is a collection of libraries which allow you to interact with a local or remote Ethereum node, using an HTTP or IPC, used to connect smart contract and HTTP.
4 Use Cases of Identity Management on Blockchain 1. Loan Approval While applying for a loan in the bank, an individual has to provide multiple identity documents for completing the manual process of verification. This process could possibly take weeks to process the loan or credit. However, with the proposed system of identity on blockchain, this entire process could be fastened by sharing relevant documents within seconds. There would be no need to maintain different ID and it would further reduce the cost and effort [3]. 2. Immigration There are multiple security checks and clearances at an airport that an individual travelling needs to go through along with carrying a passport and some other set of documents. If one possesses a decentralized identity, he/she would not have to undergo multiple processes; this would, in turn, benefit both the traveller and the authorities. 3. Legal Procedure While dealing with some legal procedure, an individual is asked to submit numerous types of identity proofs such as address, birth, age and occupation. With blockchain-based identity management system, one would not need to carry multiple documents wherever they go. Legal entities would also have ease of verifying an individual from a single blockchain-based system.
5 Conclusion It has been observed over the past few decades that with the advent of digital technology, it has become easier to break through the security measures of central repositories owned by government bodies. Also, the forged document creation has become more sophisticated. In conclusion, blockchain may be the way advancing for developing the proposed identity management system that gives complete control to users. It offers a universally available protocol for validating one’s record in an immutable chain of data. Using blockchain, the proposed system can create a secure and protected platform to validate users. The system will also allow us as users to determine the data we wish
446
D. Patole et al.
to share across on various mediums while also will help in protecting our identity from forgery and theft. The decentralized nature of blockchains and distributed ledgers can further give people proactive control over data and make it more challenging for unauthorized users to exploit it. There have been issues related to standardization, demographics and immutability that [7] blockchain has not been able to solve in the space of identity management. Even though there are concerns due to decentralized nature of blockchain in the area of Identity Management Systems, use of Blockchain instead of centralized systems is suggested by many researchers [8] for the purpose of Identity Management. Acknowledgements The author would like to acknowledge the management of K J Somaiya College of Engineering for supporting this research work.
References 1. Buchmann, N., Rathgeb, C., Baier, H., Busch, C., & Margraf, M. (2017). 2017 IEEE 41st Annual Computer Software and Applications Conference. Biometrics and Internet Security Research Group, Hochschule Darmstadt, Germany: B Enhancing Breeder Document Long-Term Security using Blockchain Technology. 2. Mudliar, K., Parekh, H., & Bhavathankar, P. (2018). 2018 International Conference on Communication, Information & Computing Technology (ICCICT), Feb. 2–3, Mumbai, India: A Comprehensive Integration of National Identity with Blockchain Technology. 3. Ofelia, H., & Ahmed. Digital identity white paper. Metaverse. 4. Baars, D. Towards self-sovereign identity using blockchain technology. RoboBank. 5. Dunphy, P., & Petitcolas, F. A. P. A first look at identity management schemes on the blockchain. Innovation Centre, VASCO Data Security. 6. Nabi, A. G. Comparative study on identity management methods using blockchain. University of Zurich. 7. ET Tech Article, By Saikat Basak https://tech.economictimes.indiatimes.com/news/technology/ how-can-blockchain-help-aadhaar-ensure-privacy-and-transparency/63028987. 8. Firstpost Article, By Soumen Goswami https://www.firstpost.com/tech/news-analysis/ blockchain-based-aadhaar-would-ensure-that-records-are-difficult-to-tamper-with-and-aremore-secure-4407253.html.
Investigation of Robust Control of Position Control System Divya Chauhan and S. K. Jha
Abstract The objective of this paper is to design the robust controller for position control system. Here, Sun Seeker System (SSS) has been taken as the position control system. On a space vehicle, Sun seeker is mounted so that we can take the maximum amount of current possible from Photovoltaic cells (PV). To study the robust control analysis of this system, fractional order PID (FOPID) controller with FOMCON toolbox is investigated for different performance criteria such as Integral Time Absolute Error (ITAE), Integral Square Error (ISE) and Integral Absolute Error (IAE). Now to find the robust controller for the position control system, comparison between the PID and FOPID controller with different performance criteria have been carried out when they are tuned by MATLAB toolbox and Genetic algorithm (GA). The simulation results show that the controllers with fractional order derivatives and integrals give better performance and robustness when compared to the conventional controllers. Keywords Sun Seeker System (SSS) · FOPID · PID · Genetic algorithm (GA) · Tuning · ISE · IAE · ITAE · FOMCON toolbox · MATLAB toolbox
1 Introduction The use of renewable energy becomes mandatory for modern researchers and scientists due to increasing concern of ecology and environment conditions. The major source of pollution in urban areas is due to the emission of the internal combustion engine of the motor cars which causes greenhouse effect resulting in global warming [1, 2]. Under the risk, deteriorating condition and risk of fossil fuels, governments all over the world are trying to maximize the use of renewable energy sources in D. Chauhan (B) · S. K. Jha Division of Instrumentation and Control Engineering, Netaji Subhas Institute of Technology (NSIT), Dwarka Sector 3, New Delhi 110078, India e-mail: [email protected] S. K. Jha e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_42
447
448
D. Chauhan and S. K. Jha
every aspect of our day-to-day life. Here, Sun Seeker System (SSS) has been taken as position control system. Sun seeker is a position control system which designs the robust controller for position control system. On a space vehicle, Sun seeker is mounted so that we can take maximum amount of current possible from Photovoltaic cells (PV). If a designed system remains insensitive to the parametric uncertainties, then the particular system is said to be robust. For accomplishing this task, various Controllers are used. Due to simplicity of the designs and easy implementation of PID controllers, we can easily solve most of the control problems these days. Mostly, problems can be solved by PID controllers but with fractional order controller we can solve them very accurately and precisely as it has more degree of freedom [3– 5]. In 1999, Podlubny introduced FOPID. He is the first person to introduce this. Fractional order PID (FOPID) controller is formed when conventional Proportional Integral Differentiator is generalized by fractional calculus. This is the major use of fractional calculus. This was first proposed by Podlubny [6]. The FOPID controller basically contains two elements whose order is in fraction denoted by λ for integrator and for differentiator by μ [6]. The controllers that use fractional order derivatives and integrals basically achieve better performance and robustness results when compared to the conventional integer order controllers [3, 7, 8]. The paper is organized in various sections. The next section contains, determination of transfer function of the Sun Seeker System. Section 3 discusses the design of a basic PID controller and FOPID controller. Section 4 will discuss the various techniques (autotuning using MATLAB toolbox and GA) for tuning the PID, FOPID controllers and determining their proportional band, integral time and derivative time, lambda and mu. By those values, one can determine the parameters of proportional constant, integral constant, derivative constant. For design and implementation, a fractional order PID controller and classical PID control scheme are used. For optimization of the performance of controller Genetic algorithm with different objective functions has been used. These performance indices have been compared with each other to find robustness of the controller in each case [9]. The curves for those controllers will be plotted and comparisons of controller are presented. Based on the achieved results, a conclusion is drawn and the effective controller is highlighted.
2 Sun Seeker System (SSS) Modelling On a space vehicle, Sun seeker is mounted so that we can take the maximum amount of current possible from Photovoltaic cells (PV). With respect to reference axis, rotations of the system are measured. θr (t) represents the angle between the solar axis or the line from the output gear to the Sun and the reference axis. θ0 (t) denotes the angle between the vehicle axis and the reference axis. The aim of the control system is to minimize the error. Here, we have to make the error between θr (t) and θ0 (t) as close to zero as possible [2]. The various parameters of the system are given as follows (Fig. 1):
Investigation of Robust Control of Position Control System Error Discriminator
Operational Amplifier
α
0
DC Motor
Servo Amplifier
Controller
( )
449
u
1
K
−
(
+
1
0
)
Back EMF
Fig. 1 Simulation model of Sun Seeker System
R F = 10, 000 Ra = 6.25 K b = 0.0125 V/rad/sec K i = 0.0125 N − m/A K s = 0.1 A/rad K=1 B=0 J = 10−6 Kg − m 2 n = 800 The system transfer function can be found from the above diagram as G P (s) =
K S R f K i K /n θ (s) = A(s) Ra J s 2 + K i K b s
(1)
where θ (s) and A(s) are the Laplace transforms of θ0 (t) and α(t), respectively. Substituting the numerical values of these parameters in the system transfer function, we get G P (s) =
2500K θ0 (s) = 2 A(s) s + 25s
(2)
Here, the schemes used are conventional PID control, fractional order PID control and finally, an optimization technique called GA which has been used for the tuning of PID and FOPID and implemented for various servo amplifier gain K.
450
D. Chauhan and S. K. Jha
3 Control Schemes 3.1 PID Controllers In process industries, the commonly used controller is the PID controller or Proportional–Integral–Derivative (PID) controllers. Due to its low cost, functional simplicity and wide range of operating conditions for robust performance, it is widely accepted in all fields. It has three basic coefficients proportional, integral and derivative. Proportional gain decreases the steady-state error and reduces the rise time, denoted by (K p ). Integral control (K i ) often makes the transient response worst because it eliminates the steady-state error. Derivative control (K d ) increases the stability of the system, reduces the overshoot and improves the transient response. The transfer function of a PID controller is given as Kp +
K p s + Ki + Kd s2 Ki + Kd = s s
(3)
The Simulink model of the classical PID controller with SSS is provided in Fig. 2.
Fig. 2 Simulink model of SSS with PID controller
3.2 FOPID Controllers Fractional order PID controller consists of five parameters in which three parameters K p , K i and K d are the same as that of PID and μ and λ are two fractional parameters. The range of lambda and mu is 0–1. Due to this range, FOPID shows better results as compared to PID (Fig. 3). The FOPID is represented as P I λ D μ . In this, for the design of controllers, the fractional calculus is used. The use of fractional integration and derivative operator in the calculation allows industrial controllers which are already widespread to be launched in a new and more sophisticated way [10–12]. Since a general equation P I λ D μ has the continuous transfer function:
Investigation of Robust Control of Position Control System
451
Fig. 3 FOPID controller
P I λ Dμ = K p +
Ki + Kd sμ Sλ
(4)
Here, λ and μ are fractional order integral and derivative constant whose values can be arbitrary real numbers in the range 0–1 in (4), K p is amplification or proportional gain, K i is integration constant and K d is differentiation constant. In this, when we put λ = 1 and μ = 1, a classical PID controller is obtained. Figure 4 shows the variation of fractional integral and derivative represented by a rectangle. It is limited to a region of three points, i.e., PID, PI and PD. Thus the P I λ D μ controller allows real-time processes to be controlled with greater accuracy, adds more flexibility to the design of the controller but increases the complexity in its implementation. Fig. 4 FOPID parameters region
µ PD PID 1 PI 0
1
λ
452
D. Chauhan and S. K. Jha
4 Optimization of Controller Parameter There are various optimization techniques available nowadays. In this paper, we are using the Genetic Algorithmic technique in order to optimize the various parameters of the PID and FOPID controller. Genetic algorithm is a stochastic global search method that is inspired by evolutionary biology techniques such as inheritance, crossover, mutation and selection. It is categorized as a global search heuristic. Usually, the evaluation starts with the random generated individuals (any possible solution) and happens in generations. The population size is taken as 50. In the population, the fitness level which is provided by the programmer is evaluated for each individual of every generation and score is given based on their performance. Based on the fitness from the current population, the number of individuals is selected then recombined or possibly mutated (modified) to create new population. In the next iteration, the new population is used. This process continues until the termination conditions. The Genetic algorithm terminates due to two reasons: 1. The population has reached to the satisfactory fitness level 2. The number of generations has reached to the maximum level; in this case, the algorithm may or may not be reached to the desired solution. Here, GA is used for the tuning of fractional order proportion integral derivative and Proportional Integral Derivative with various objective functions to minimize the different types of errors. The commonly used indices are given by the following equation: ∞ ITAE =
t|e(t)|dt
(5)
0
∞ ISE =
e2 dt
(6)
∞ IAE = |e|dt
(7)
0
0
Performance criterion J() is defined as J(k) = (IAE)
(8)
J(k) = (ISE)
(9)
J(k) = (ITAE)
(10)
Investigation of Robust Control of Position Control System
453
where is [K p , K i , λ and K d , ] for tuning of FOPID and is [K p , K i and K d ] for tuning of PID. The parameters of both the controllers are optimized for various types of errors by considering these errors as the objective function for the position control system. To minimize the cost function, we take the reciprocal of the objective function.
5 Simulations and Result Discussions In this section, the results are obtained for the SSS system and presented with various controllers. In order to check the robustness, we change the value of servo amplifier gain K and check how the SSS behaves with controllers. Figure 5 shows the Simulink model for the FOPID controller with K = 1. Figure 6 shows the open loop response of sun seeker system (SSS) for various values of K which depicts that the system is unstable. In order to stabilize this system, we have to make it closed loop and to make it a robust stable system; we will apply PID and Fractional Order PID on the SSS system; the response of the system with controllers such as PID and FOPID are presented and compared for different values of servo amplifier gain K.
Fig. 5 Simulink model of SSS with FOPID controller
Fig. 6 Open-loop response of SSS
454
D. Chauhan and S. K. Jha
Figure 7 shows that the FOPID has less rise time, less overshoot and less settling time whereas the PID has a larger rise time, larger overshoot and more settling time. Figure 8 shows the response of SSS with the PID controller for different values of K. In this, we have used Ziegler–Nichols (ZN) tuning method. The values of gains for the PID controller are K p = 1.26, K i = 14.49 and K d = 0.0175 [1] autotuned by MATLAB toolbox (Fig. 9).
Fig. 7 Respose of FOPID and PID controller
Fig. 8 Response with PID controller for different values of K
455
SS axis Position (rad.)
Investigation of Robust Control of Position Control System
Time (sec) Fig. 9 FOPID controller for K = 1 K using MATLAB toolbox
Figure 10 is the Simulink model of PID where the PID is tuned using the Genetic Algorithm with performance measure ITAE. Figure 11 shows the response of SSS with PID where GA is applied to minimize the error. From this, we can see that it has less rise time and settling time as compared to normal PID. When we use the performance measure ITAE to optimize the PID parameter, it shows overshoots, but its rise time and settling time are better than the previous result (Fig. 12). All the comparative results have been put in Table 2 from Figs. 14, 15 and 16 through Fig. 13 and the values of five parameters of FOPID are shown in Table 1. FOPID and PID Controllers have been used to control the position control system. The robustness of these controllers has been simulated using MATLAB simulation. The controller parameters have been optimized using Genetic Algorithm with various objective functions. From the graph and table observation, it is clear that the parameters optimized using GA make the FOPID controller robust. Table 2 shows the
Fig. 10 Simulink model for GA PID
456
D. Chauhan and S. K. Jha
Fig. 11 Response using GA PID controller and for ITAE
Fig. 12 SSS response with GA PID controller for IAE and ISE
Fig. 13 Simulink model of GA FOPID
values of peak overshoot, settling time, rise time and steady-state error for different controllers used with different values of servo amplifier gain K. The robustness of the position control system can be seen from the simulation results of MATLAB.
Investigation of Robust Control of Position Control System
457
Fig. 14 SSS response with GA FOPID ITAE
Fig. 15 SSS response of GA FOPID ISE
6 Conclusions The optimal tuning of classical PID and FOPID controller using Genetic algorithm has been performed. For different values of servo amplifier with a different type of errors, the system is optimized using Genetic algorithm. It has been observed that the performance of the controller used depends on the choice of integral performance indices used and on the type of process to be controlled. Among the two controllers
458
D. Chauhan and S. K. Jha
Fig. 16 SSS response of GA FOPID IAE Table 1 Tuning parameters of FOPID Controller
Kp
Ki
Lambda
Kd
mu
FOPID
1.7386
0.8733
1
3.7880
1
FOPID-ITAE
1.3737
0.9993
0.2377
1.7569
0.7936
FOPID-IAE
1.4838
1.2562
0
8.2082
0.9754
FOPID-ISE
1.0290
0.8372
0.4923
7.3512
1
Table 2 Performance measures of PID and FOPID Controller
Gain (K)
Settling time (s)
Rise time (s)
Overshoot (%)
Steady-state error (%)
PID
0.5
0.165 s
0.035 s
40.141
0.0
1
0.15 s
0.027 s
30.921
0.0
2
0.149 s
0.022 s
18.452
0.0
0.5
0.0767 s
0.00281 s
10.484
0.0
1
0.0651 s
0.00191 s
11.552
0.0
2
0.0611 s
0.00132 s
17.679
0.0
0.5
0.24 s
0.155 s
0.0
0.0
1
0.15 s
0.101 s
0.212
0.0
2
0.121 s
0.078 s
0.166
0.0
0.5
572.410 μs
410.161 μs
0.457
0.0
1
247.041 μs
182.620 μs
0.469
0.0
2
72.538 μs
73.706 μs
0.505
0.0
GA PID
FOPID
GA FOPID
Investigation of Robust Control of Position Control System
459
with different objective functions, the one with IAE is the most robust. But when the tuning is done with GA, the GA FOPID outperforms all the controllers and gives the most robust result. As we know that the system is robust, it performs well irrespective of the uncertainty in the system. So FOPID and PID controllers are designed under uncertainty conditions, i.e., changes in servo amplifier gain. The simulation results show that the GA FOPID outperformed all the controllers which we have used with various techniques. GA FOPID with IAE as objective function performed well as compared to others which have better time response characteristics. Hence, we can say that the controllers which are using fractional order integrals and derivatives could give better robustness and performance than the conventional controllers.
References 1. Jha, S. K., Yadav, A. K., Gaur, P., Parthsarathy, H., & Gupta, J.R.P. (2014) Robust and optimal control analysis of sun seeker system. Journal of Control Engineering and Applied Informatics, 16(1), 70–79 (2014). 2. Dass, A., & Jha, S. K. (2014) A comparative study of lead, lag, lead-lag and robust controllers for a position control system. In International Conference on Reliability, Optimization and Information Technology ICROIT 2014, India. 3. Shekher, V., Rai, P., & Prakash, O., (2012) Tuning and analysis of fractional order PID controller. International Journal of Electronic and Electrical Engineering, 5(1), 11–21. ISSN 0974-2174. 4. Suri babu, A. G. et al. (2016) Implementation of fractional order PID controller for AVR system using GA and ACO optimization techniques. IFAC-PapersOnLine, 49(1) 456–461. 5. Joseph, S. B., & Dada, E. G. (2018) Automatic tuning of proportional–integral–derivative controller using genetic algorithm. The Pacific Journal of Science and Technology, 19(2). 6. Podlubny, I. (1999) Fractional-order systems and PIλ Dμ controller. IEEE Transactions on Automatic Control, 44(1) 208–214. 7. Suresh Kumar, M., & Smitha, K. V. (2014) Design of tuning methods for fractional order PI λ Dμ controller using PSO algorithm. International Journal for Research in Applied Science & Engineering Technology (IJRASET), 2(12) (2014). 8. Ismail, H. N., Youssef, I. K. & Rageh, T. M. (2017) Numerical Optimization of Fractional Order PID Controller. International Journal of Mathematics and Statistics Invention (IJMSI), 5(2) 15–20. 9. Hussain, K. M. (2014) Comparison of PID controller tuning methods with genetic algorithm for FOPTD system. International Journal of Engineering Research and Applications, 4(2) Version 1, 308–314. 10. Singh, R., Kumar, A., & Sharma, R. (2016) Fractional order PID control using ant colony optimization. In 1st IEEE international conference on power electronics; intelligent control and energy systems (ICPEICES-2016). 11. Luo, Y., & Chen, Y. (2009) Fractional-order [Proportional Derivative] controller for robust motion control: tuning procedure and validation. In American control conference. 12. de Castro, F.A., Bernardes, N.D., de SL Cuadros, M.A., & de Almeida, G.M. (2016) Comparison of fractional and integer PID controllers tuned by genetic algorithm. In 12th IEEE International conference on industry applications (INDUSCON).
460
D. Chauhan and S. K. Jha
Divya Chauhan did her B.Tech in Electronics, Instrumentation and Control Engineering from YMCA University of Science and Technology, Faridabad, India in the year 2015. She is pursuing her M.Tech in Process Control (2017–2019) from Netaji Subhas Institute of Technology (NSIT), University of Delhi, New Delhi, India. She has secured AIR 121 in Graduate Aptitude Test in Engineering (GATE-2018) with 98.98 percentile. Her research interests include artificial intelligence, robust control etc. Email Id [email protected] and [email protected]. S. K. Jha did his B.Tech in Electrical Engineering from Bhagalpur College of Engineering in the year 1994 and subsequently M.Tech and Ph.D. from University of Delhi. Currently he is a Professor in the Instrumentation and Control Engineering Department at N.S.I.T, Delhi University, New Delhi, India. He is a Life member of the Indian Society of Technical Education (ISTE). He is also a life member of Institution of Engineers, Fellows IETE and Swadeshi Science movement of India. His research interests include optimal control, robust control, bioinspired control and electric drives etc. Email Id [email protected].
Real-Time Hand Hygiene Dispenser System Using Internet of Things Sayali Salunkhe and Mahadev Patil
Abstract The hand hygiene monitoring system can be used in public health institutions, such as a hospital. As for hospitals, the healthcare workers treat the patients, while treating the patients there are chances of spreading of healthcare-associated infections between patients healthcare workers. So for this reason, a system is designed which monitors hand hygiene activity of the healthcare workers by using RFID tag, soap dispenser and faucet control unit. Microcontroller PIC16F877A is used to detect users attempt on soap usage and water usage by using an infrared sensor. The EM-18 RFID reader is used for user identification and the infrared sensor is used for hand detection. The level sensing circuit is used to sense top and bottom levels of soap and water. The hand hygiene activities related data and time are stored on a server database. Hence, the system is used to give records of total hand hygiene activities and time duration of the healthcare workers in the hospital. Keywords PIC16F877A · Hand hygiene · RFID
1 Introduction Hand hygiene is one of the crucial factors to avoid the spread of infections in all healthcare settings, because most of the deaths that occurr in hospitals are due to the infections. So for this reason, hand hygiene monitoring is needed. Currently, direct observation and self-reporting methods are used in public health institutions. Direct observation method can be carried out by using surveys and self-reporting methods involve the human effort, while indirect observation methods involve less human effort.
S. Salunkhe · M. Patil (B) Rajarambapu Institute of Technology, Rajaramnagar 415409, India e-mail: [email protected] S. Salunkhe e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_43
461
462
S. Salunkhe and M. Patil
The system presented in this paper is a hand hygiene monitoring system. This system will monitor hand hygiene activities of healthcare workers by using RFID tag, soap dispenser and faucet control unit. The server application is designed in this system by using HTML and PHP languages. The record of hand hygiene activities and their time duration is stored on a server database. Hence, the system will count hand hygiene events and time duration.
2 Literature Review Mert Bal and Reza Abrishambaf had described the hand hygiene compliance monitoring system, in which they had presented a prototype model of the system by using the Internet of Things technology. The proposed design of the system had been placed in the patient’s room for monitoring hand hygiene activity [1]. Al Salman, Hani, de Marcellis-Warin, Sister Fatima Isa, had discussed the system for monitoring hand hygiene in the hospital, in which the system is installed in the coronary care unit and hand hygiene activity of the healthcare worker is monitored for 28 days. They have noted observed data during the monitoring period of 28 days [2]. Malak Beslyman, Raoufeh Rezaee, Daniel Amyot, Alain Mouttham, Rana Chreyh, Glen Geiger had presented notification-based hand hygiene monitoring system. They have proposed a new prototype model of the system for monitoring the healthcare worker by using real-time location system. The system is used to give real-time notifications of hand hygiene activities of health-care worker [3]. Amrith Poonacha, Bharath, Chandraprakash, Mahesh Kulkarni, Rakshith Gowda had discussed automatic liquid dispenser system based on user quantitative demand. They have proposed a system such that, depending upon the quantity of fluid, the price of the product is calculated and the equivalent amount of liquid is released from the dispenser. For controlling the entire operation, they had used a microcontroller Arduino Uno ATmega328p. And solenoid valve had been used for dispensing liquid from the tank [4].
3 Design and Implementation Figure 1 shows the manufactured PCB of the circuit in which PIC16F877A is present. In this hardware IR sensor, RFID reader and level sensing wires are used for hand detection, user identification and detection of water and soap level in the tank, respectively [5].
Real-Time Hand Hygiene Dispenser System …
463
Fig. 1 Manufactured PCB of a circuit
3.1 Interfacing with Sensor and Display IR module consists of transmitter, receiver and operational amplifier. The operational amplifier acts as a comparator. IR module used in this system is MH sensor series flying fish for detecting the presence of a hand in front of the sensor. The potentiometer is used for adjusting detection range. When the object is sensed at the IR sensor, it will give a high signal [6].
3.2 Interfacing with RFID Reader EM-18 RFID reader module is used in this system for user identification. This RFID reader is interfaced with PIC16F877A microcontroller by using UART module. When an RFID tag is shown to the RFID reader, it will read its tag ID number of the user.
464
S. Salunkhe and M. Patil
3.3 Interfacing with Level-Sensing Circuit The level sensing circuit consists of two wires which are placed in the tank. When the quantity of soap and water is above the threshold level, two wires will be short and it will display the normal level [7]. And when the quantity of soap and water is below the threshold level, two wires will be open and it will display low level.
4 Block Diagram The system will monitor hand hygiene activities of the healthcare worker by using RFID tag, soap dispenser and faucet control unit. Figure 2 shows a proposed block diagram of the hand hygiene monitoring system. In the soap dispenser unit, the controller detects the utilization of soap by a user by using an infrared sensor. In the faucet control unit, the controller detects the utilization of water by a user by using an infrared sensor. The main objective of the block diagram is to develop the hand hygiene monitoring system. The process itself starts with the user, who has an RFID tag. So when a user approaches the dispenser unit, the user RFID tag information is scanned by RFID reader. The RFID reader registers the user and passes scanned tag ID information to the PIC microcontroller to process the soap dispenser activity. The PIC microcontroller detects hand hygiene activity through IR sensor and it will register hand hygiene entry of the user by adding the serial number of the dispenser and ID of the user for registration of attempted hand hygiene process. After some time delay, the faucet control unit will be activated. In the faucet control unit, it will detect utilization of water by the user by using an infrared sensor. The faucet control unit will register hand hygiene activity of the user by adding the dispenser unit number and ID of the user to a server application. The level sensing circuit is used to sense top and bottom levels of soap and water. When the quantity of soap and water is below the threshold level, the buzzer buzzes [8]. The server application is designed in this system by using HTML and PHP languages. The record of hand hygiene activities of healthcare worker and their time duration is stored on server database. Hence, the system will count hand hygiene events and time duration.
Real-Time Hand Hygiene Dispenser System …
465
LCD display Supply RFID Tag
RFID Reader
Controller
IR sensor 1
IR sensor 2
Level sensing for soap and water
Wi-Fi module
Buzzer
Valve 1
Soap Dispenser
Valve 2
Faucet control
Relay circuit
Fig. 2 Proposed block diagram
5 Results Figure 3 shows the output of the RFID, which is displayed on an LCD display. EM-18 RFID reader module is used in this system. This RFID reader is interfaced with PIC16F877A microcontroller by using UART module. As an RFID tag is shown to the RFID reader, it will read the tag ID number of the user and the tag ID number is displayed on the LCD. The LCD display also displays the low-level output. The level sensing circuit consists of two wires which are placed in the tank. When the quantity of soap and
466
S. Salunkhe and M. Patil
Fig. 3 RFID output
water is below the threshold level, two wires will be open and it will display low level. Table 1 shows the compliance rate of a healthcare worker, doctor and others who are considered according to monitoring of the hand hygiene monitoring before and after. From the above table, we can see that after monitoring the hand hygiene activity, there is good compliance rate as compared to that before monitoring. Figure 4 shows the graph of the compliance rate in percentage versus the hand hygiene activity of the health professional. This graph is drawn by using observations in Table 1. After monitoring the hand hygiene activities of the health professional such as healthcare worker, doctor and others, the compliance rate in percentage is good as compared to before monitoring. And before monitoring the hand hygiene activity, the compliance rate is poor. Table 1 Health profession versus compliance rate
Health profession
Before monitoring
After monitoring
HCW
25
85
Doctor
30
80
Others
20
70
Real-Time Hand Hygiene Dispenser System … Fig. 4 Graph of the health professional versus compliance rate
467
100 80 60
Before monitoring
40
After monitoring
20 0 HCW
Doctor
Other
6 Conclusion The paper shows working of the hand hygiene monitoring system using PIC16F877A. Here, the hand hygiene dispenser system is designed by using the IoT technology. This system can be placed in public health institutions, such as hospitals. And the hand hygiene activity of the healthcare worker is monitored by using RFID tag, soap dispenser and faucet control unit. Also, the level sensing circuit is designed to sense top and bottom levels of soap and water. And the record of hand hygiene activities of the healthcare worker is stored on a server database. Acknowledgements The author would like to recognize Dr. M. S. Patil, Department of Electronics and Telecommunication Engineering, for his supervision and help for writing this paper.
References 1. Bal, M., & Abrishambaf, R. (2017). A system for monitoring hand hygiene compliance based on internet of things. In Proceedings of the International Conference on Industrial Technology (pp. 1348–1353). IEEE. 2. Al Salman, J. M., Hani, S., de Marcellis-Warin, N., & Isa, S. F. (2015). Effectiveness of an electronic hand hygiene monitoring system on healthcare workers compliance to guidelines. International Journal of Infection and Public Health, 117–126. 3. Baslyman, M., Rezaee, R., Amyot, D., Mouttham, A., Chreyh, R., & Geiger, G. (2014). Towards an RTLS-based hand hygiene notification system. In Proceedings of the 4th International Conference on Current and Future Trends of Information and Communication Technologies in Healthcare (pp. 261–265). Elsevier. 4. Amrith Poonacha, M., Bharath, M. G., Chandraprakash, P., Kulkarni, M., & Rakshith Gowda, H. (2017). Automatic liquid dispenser based on user quantitative demand. International Journal of Science, Engineering and Technology. 5. Muhammad Sidik, M. H., & Che Ghani, S. A. (2017). Volume measuring system using arduino for automatic liquid filling machine. International Journal of Applied Engineering Research, 12, 14505–14509.
468
S. Salunkhe and M. Patil
6. Beltran, A. A. Jr., Clavero, A.R., De Vera, J. M. B., Lopez, P. A. P., Mueca, C. A., Pempena IX, N. A., & Roxas, A. Z. D. (2015). Arduino based food and water dispenser for pets with GSM technology control. International Journal of Scientific Engineering and Technology, 4, 231–234. 7. Dellosa, R., Hernandez, J. E., Mangay, R., Robles, R. (2014). Microcontroller based wastewater management system. International Journal of Scientific and Technology Research, 3, 32–36. 8. Poonia, R. C. (2018). Internet of Things (IoT) security challenges. In Handbook of e-business security (pp. 191–223). Auerbach Publications.
Modeling the Factors Affecting Crime Against Women: Using ISM Technique Bhajneet Kaur, Laxmi Ahuja and Vinay Kumar
Abstract Crime or violence against women acts like a big hurdle in the development of any country or state. The main objective of this research paper is to propose an idea for developing a conceptual model by using interpretive structural modeling technique (ISM). ISM is the step-by-step mathematical procedure and has been proposed to be applied on items or factors, which affect the big societal issue that is crime against women. Various studies and research works have been done to control and prevent crime against women but the idea of developing a conceptual model through ISM will be helping various criminal and crime organizations to make decisions. Mainly, this approach focuses on the brainstorming sessions and the expert opinion and a few items and factors are the basic input to construct the final model. Keywords Interpretive structural modeling · Crime against women · Reachability matrix · Conical matrix · Dependence power · Driving power
1 Introduction Crime against women includes rape, sexual assaults and brutality, kidnapping, female infanticide, mob violence, marriage by abduction, crime related to dowry, forced abortion, trafficking in women, sexual harassment, forced prostitution, etc. Crime against women (CAW) resulted in physical, psychological, sexual or economic harm of the women which impact on the whole society. All the crimes against women are affecting by some factors. There are various factors which are affecting on it. Identification of various factors is the main job for further implementations. This B. Kaur (B) · L. Ahuja AIIT, Amity University, Noida, UP, India e-mail: [email protected] L. Ahuja e-mail: [email protected] V. Kumar Ex Scientist & Professor, Vice Chairman (Cum Chairman Elec), CSI Delhi Chapter, Delhi, India e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_44
469
470
B. Kaur et al.
paper identifies a well-established mathematical approach to deploy the factors into a hierarchical structure namely the interpretive structural modeling technique. This is a well-defined and well-settled method which takes factors or items as its basic input related to the issue. The interpretive structural approach is the step-by-step procedure which can give deep knowledge of various factors and their influences on the related issue. This technique can clearly show how one factor is depending on another factor and helps in driving others. Hence, every factor can be measured in terms of their driving power and dependence power which can further help to take or implement decisions by the public and private organizations.
2 Past Study Various factors have been identified from the literature review which can act as the basic input of the ISM method. The first factor is lack of safe spaces for women and girls. Most of the sexual assaults and crimes happen due to unsafe places. There is a lack of safe spaces like public place, around schools, colleges, workplaces, parks, and public transports which are the major cause of crime against women. The factor Gender Discrimination gets high impact on crime against women. Gender discrimination called gender inequality arises differences in the psychology, cultural norms or policies and biology. This factor produces various societal issues like male ego, Kaur et al. [27], Larivière et al. [38], Chabaya [12], and Bailey [7]. The factor Conflict and tension within intimate partners relationship has its major contribution toward crime against women. This affects health of the society which includes physical injury, leading to suicide, depression, etc. It has been said by a WHO report that 35% of the girls and women worldwide are the victims of sexual or physical violence by their intimate partners, relationships or by marriage due to their conflicts, Cardoso [13], National Research Council [36], Kaur et al. [27], and WHO (2017). Wrong or misuse of electronic media and social media factor has good impact on the social issue crime against women. Media has its very important role in the criminal activities in the country but when it is used wrongly, it creates problems for the society and can be converted into crime, Kaur et al. [27]. The objectification of the women character main factor can contribute toward crime against women. Sometimes on TV and the silver screen, women are characterized in the wrong way which can lead a few men to do criminal activities against women, Kaur et al. [27]. Poverty has a very important role and impact on crime against women. When income declines, most of the criminal activities happen in a country. Poverty is the multi-faced concept which may include economic, political, and social causes. Many crimes against women are happening due to poverty factor, Kaur et al. [27], Iyer and Topalova [23], Bharadwaj [8]. Male ego is a highly impacted factor toward crime and criminal behaviors against women. It is the behavioral issue in a few males which can make them think they are always right, Kaur et al. [27], Stanko [46]. Lack of punishment can be the most influencing factor toward crime against women, Kaur et al. [27]. The factor lack of knowledge about acts gives high impact on the issue, crime
Modeling the Factors Affecting Crime Against Women …
471
against women. If awareness about acts or laws increases among the people, crime and criminal activities can be controlled, Kaur et al. [27]. Poor upbringing is another very important factor which is contributing toward crime against women. Most of the criminal records have been seen as a result of less education, alcohol and drug consumption in family, and occasional work or long-term unemployment, Christoffersen [11], Kaur et al. [27]. Lack of implementations of government initiatives explains as some initiatives and schemes are written in the government policies but somehow there is a lack in their implementation part. If it is monitored periodically, then crime and criminal activities can be controlled.
3 Proposed Model The proposed modeling technique has been described in various steps, starting from the factor identification and ending with the final model.
3.1 Factor Identification Related to the Problem and Contextual Relationship Between Them Factor identification is the first step of interpretive structural modeling technique. Various factors or causes or dimensions have been found relating to this issue. Lack of safe space is one of the factors which may highly impact on the issue. Other factors are inappropriate presentation of women characters on TV or silver screen, conflict and tension with intimate partner, relationship and marriage, gender discrimination, poor upbringing, misuse of electronic media and social media, poverty, lack of implementations of government initiatives, lack of knowledge about acts, lack of punishment, and male ego. To find the contextual relationship between the factors, first of all leads to relationship need to be checked between all the factors. This is also called contextual relationship between factors. It is pair-wise influence or effect of one factor over the other. The output of the contextual relationship of the various items is depicted in a matrix known as Structural Self-Interaction Matrix (SSIM). The formation of SSIM matrix based on some rules are mentioned below. • • • •
V used when factor “i” leads to “j”. A used when factor “j” leads to factor “i”. X used when both the factors have their influence on one another. O used when both factors are totally unrelated to each other.
To form the conceptual model for crime against women, at first there is a need to be apply the above rules on the factors affecting crime against women for finding their contextual relationship. For example, if one factor, namely male ego leads to another, i.e., “poverty” and vice versa, it means “poverty” and “male ego” both lead each other which results in the existence of contextual relationship. Hence, symbol X must be
472
B. Kaur et al.
Table 1 An example of the contextual relationship between male ego and lack of safe spaces for women and girls Factors
Male ego (j)
Symbol used in SSIM
Contextual relationship
Poverty (i)
ij
V
When only poverty of women and girls leads to male ego but male ego does not lead to poverty of women and girls
Poverty (i)
ji
A
When poverty of women and girls does not lead or influence male ego, only male ego leads to poverty
Poverty (i)
ij ji
X
Both poverty and male ego lead to each other
Poverty (i)
i j
O
There is no relationship between poverty and male ego
j i
put between factors “poverty” and “male ego” with the formation of Structural SelfInteraction Matrix as shown in Table 1. Symbol V can be put when only the first factor, poverty leads to male ego but vice versa is not possible. Symbol A describes that poverty does not have any impact on male ego but male ego has some impact on poverty. As discussed, when poverty is not related to male ego, symbol O will be used in SSIM.
3.2 Initial and Final Reachability Matrix Reachability matrix is the second step of the interpretive structural modeling process. It works on the SSIM and converts the symbols into digits. The factors are related to other factors only if any contextual matrix relationship exists between the factors. There are some certain fixed rules to establish the reachability matrix into a binary form. Those rules have been shown in Table 2 by taking the example of two factors “poverty” and “male ego”. Every factor is reachable with itself by default. As Table 2 describes, 1 is written from i i or from j j like male ego always leads to male ego (itself) so 1 has been put here. In the case of symbol V, 1 has occurred from poverty to male ego but 0 placed from male ego to poverty. In case of symbol A, male ego is reachable to poverty but poverty is not reachable to male ego. So, 0 has been placed from i to j and 1 placed from j to i. In case of X, it has been assigned 1 from poverty to male ego and vice versa because both the factors are reachable to one another. In case of O, both the factors are unrelated to one another so there is 0 from poverty to male ego and from male ego to poverty. From the reachability matrix, reachable property or the leads to property is become very clear.
Modeling the Factors Affecting Crime Against Women … Table 2 An example of the initial reachability matrix between the two factors, i.e., male ego and poverty
Factors
473
Poverty (i)
Male ego (j)
Reachability
Poverty (i)
1
1
Put 1 from i to j
Male ego (j)
0
1
Put 0 from j to i
Poverty (i)
1
0
Put 0 from i to j
Male ego (j)
1
1
Put 1 from j to i
Poverty (i)
1
1
Put 1 from i to j
Male ego (j)
1
1
Put 1 from j to i
Poverty (i)
1
0
Put 0 from i to j
Male ego (j)
0
1
Put 0 from j to i
(For symbol V )
(For symbol A)
(For symbol X)
(For symbol O)
To analyze the relationship between the factors influencing crime against women more deeply, the next step is to formulate the final reachability matrix. The main aim of the final reachability is to find all the indirect links or leads to a relationship between the factors. A rule knows as transitivity must be incorporated to know about the indirect relationship. If factor i (poverty) leads to factor j (male ego) and further factor j (male ego) leads to one more factor k (lack of punishment), then there must hold a relationship between factor i (poverty) and factor k (lack of punishment). Through the incorporation of transitivity, the indirect relationship is found. Transitivity can be shown by the symbol 1*.
3.3 Assignment of Levels After establishing the direct or indirect link between the factors, the next goal is to find the level of every factor. For crime against women, it is very important to decide whether a particular factor has achieved the higher level or the lower level so that the decision can be taken accordingly. There are three sets that can be formed to find the level of every factor. They are reachability set, antecedent set, and intersection set. These sets must be formed from the final reachability matrix. The reachability set must be formed from the factor itself and the other factors which shown digit 1 in the particular row of the final reachability matrix. For example, factor male ego is the factor which leads to itself only when it has been found from the final reachability matrix 1 only for a single factor in the entire row. The antecedent set is formed with
474
B. Kaur et al.
Table 3 Level partitioning of factors Factor
Reachability set
Antecedent set
Intersection set
Level
Male ego
1
1,2,3,4,5,6,7,8,9,10,11
1
I
every 1 in the column of the particular factor. The intersection set has been formed by taking the common elements from the reachability set and the antecedent set. Decision rule for level Assignment: The main rule to assign the level is the equality of the reachability set and the intersection set. As Table 3 shows, the only single element found under the reachability and intersection sets and has the same elements so it has been clear that both the sets are equal. So, level 1 is assigned to factor 1. This process will continue for every factor. Once the factor assigns the level, it must be excluded from the rest of the iterations for the level assignment process.
3.4 Construction of Conical Matrix Conical matrix (CM) provides good clarity for the contribution of the factors regarding the issue. Total of 11 factors has been found for the issue regarding crime against women. Some factors may have high impact on the issue and some must have lower impact. To find the contribution of each factor, the driving power and the dependence power must be found for every factor. Driving power of each factor is calculated by the number of ones in each row and dependence power of the factor is derived from the number of ones in the particular column. If driving power of the factor male ego is found as 3, it means male ego is helping to drive or giving its impact on the other two factors and on itself. If the dependence power of male ego is found as 3, then this factor is driven by the other two factors and by itself. So the calculation of the driving and dependence powers can provide the outcome of each factor or variable in a clear way.
3.5 Formation of Digraph and Model A digraph is nothing but the formation of level assignment and driving and dependence power for each factor. Every factor will be put as per its place of assigned level and as per the driving and dependence power, the arrows must be drawn. In a digraph, arrows show the direct or indirect link of every factor with other factors. A digraph gives the well-defined picture of the conceptual model related to the issue. In the final model, the number of factors must be replaced by the factor name for more clarity on the model.
Modeling the Factors Affecting Crime Against Women …
475
4 Conclusion and Future Scope As concluded, the ISM technique has very good implications toward crime and criminal organizations if the conceptual model is developed on its basis. The researchers of the area can get a detailed view of every factor affecting the issue with its contribution as per their driving and dependence power. The crime against women can be controlled or prevented by applying this mathematical approach to factors. Some factors are identified in this paper, which are affecting the crime against women. After continuing with every step of the entire process of the interpretive structural modeling technique, the final model can get some results. As per the interpretation of the final model, factors must be divided on the basis of three categories: independent factors, dependent factors, and operational factors. Further, MICMAC analysis can be done to segregate the factors into various clusters. The decision can be taken on the basis of the combined results of ISM and MICMAC analysis to reform the policies and laws related to crime against women. In future, the actual conceptual model can be developed with the help of the current article and further MICMAC can be done.
References 1. Agarwal, A., Shankar, R., & Tiwari, M. K. (2007). Modelling agility of supply chain. Industrial Marketing Management, 36(4), 443–457. 2. Agarwal, A., & Vrat, P. (2015). A TISM based bionic model of organizational excellence. Global Journal of Flexible Systems Management, 16(4), 361–376. 3. Agarwal, A., & Vrat, P. (2015). Line and staff functions in organizations revisited: A bionic system analogy using ISM. Vision, 19(2), 89–103. 4. Anantatmula, V. S., & Kanungo, S. (2010). Modelling enablers for successful KM implementation. Journal of Knowledge Management, 14(1), 100–113. 5. Bolanos, R., Fontela, E., Nenclares, A., & Pastor, P. (2005). Using interpretive structural modelling in strategic decision-making groups. Management Decision, 43(6), 877–895. 6. Burke, J. D., Loeber, R., Lahey, B. B., & Rathouz, P. J. (2005). Developmental transitions among affective and behavioral disorders in adolescent boys. Journal of Child Psychology and Psychiatry, 46(11), 1200–1210. 7. Bailey, W. C., & Peterson, R. D. (1995). Gender inequality and violence against women. Crime Inequality, 174–205. 8. Bharadwaj, A. (2014). Is poverty the mother of crime? empirical evidence of the impact of socioeconomic factors on crime in India. Atlantic Review of Economics, 1. 9. Chawla, N., & Solinas-Saunders, M. (2011). Supporting military parent and child adjustment to deployments and separations with filial therapy. The American Journal of Family Therapy, 39(3), 179–192. 10. Centers for Disease Control and Prevention (CDC). (2008). Smoking-attributable mortality, years of potential life lost, and productivity losses-United States, 2000–2004. MMWR Morb Mortal Wkly Rep, 57, 1226–1228. 11. Christoffersen, M. N., Francis, B., & Soothill, K. (2003). An upbringing to violence? identifying the likelihood of violent crime among the 1966 birth cohort in Denmark. Journal of Forensic Psychiatry & Psychology, 14(2), 367–381. 12. Chabaya, O., Rembe, S., & Wadesango, N. (2009). The persistence of gender inequality in Zimbabwe: Factors that impede the advancement of women into leadership positions in primary schools. South African Journal of Education, 29(2).
476
B. Kaur et al.
13. Cardoso, L. F., Gupta, J., Shuman, S., Cole, H., Kpebo, D., & Falb, K. L. (2016). What factors contribute to intimate partner violence against women in urban, conflict-affected settings? qualitative findings from Abidjan Côte d’Ivoire. Journal of Urban Health, 93(2), 364–378. 14. Devries, K. M., Mak, J. Y., García-Moreno, C., Petzold, M., Child, J. C., Falder, G., et al. (2013). The global prevalence of intimate partner violence against women. Science, 340(6140), 1527– 1528. 15. Ending violence against Women and Girls: Programming essentials. (2013). http://www. endvawnow.org/uploads/modules/pdf/1372349234.pdf. 16. Garcia-Moreno, C., Jansen, H. A., Ellsberg, M., Heise, L., & Watts, C. H. (2006). Prevalence of intimate partner violence: Findings from the WHO multi-country study on women’s health and domestic violence. The Lancet, 368(9543), 1260–1269. 17. Haleem, A., Sushil Qadri, M.A., & Kumar, S. (2012). Analysis of critical success factors of world-class manufacturing practices: An application of interpretative structural modelling and interpretative ranking process. Production Planning & Control, 23(10–11), 722–734. 18. Hidron, A. I., Edwards, J. R., Patel, J., Horan, T. C., Sievert, D. M., Pollock, D. A., et al. (2008). Antimicrobial-resistant pathogens associated with healthcare-associated infections: Annual summary of data reported to the national healthcare safety network at the centers for disease control and prevention, 2006–2007. Infection Control & Hospital Epidemiology, 29(11), 996–1011. 19. Heilman, B., Hebert, L., & Paul-Gera, N. (2014). The making of sexual violence. How does a boy grow up to commit rape? Evidence from five IMAGES countries. 20. Hill, K. G., Lui, C., & Hawkins, J. D. (2001). Early precursors of gang membership: A study of seattle youth. Washington, DC: US Department of Justice, Office of Justice Programs, Office of Juvenile Justice and Delinquency Prevention 21. Heilman, M. E., & Wallen, A. S. (2010). Wimpy and undeserving of respect: Penalties for men’s gender-inconsistent success. Journal of Experimental Social Psychology, 46(4), 664–667. 22. Ingoldsby, E. M., & Shaw, D. S. (2002). Neighborhood contextual factors and early-starting antisocial pathways. Clinical Child and Family Psychology Review, 5(1), 21–55. 23. Iyer, L., & Topalova, P. B. (2014). Poverty and crime: Evidence from rainfall and trade shocks in India. Harvard Business School BGIE Unit Working Paper (14–67). 24. Janes, F. R. (1988). Interpretive structural modelling: A methodology for structuring complex issues. Transactions of the Institute of Measurement and Control, 10(3), 145–154. 25. Kiss, L., Schraiber, L. B., Heise, L., Zimmerman, C., Gouveia, N., & Watts, C. (2012). Genderbased violence and socioeconomic inequalities: Does living in more deprived neighbourhoods increase women’s risk of intimate partner violence? Social Science & Medicine, 74(8), 1172– 1179. 26. Kaur, I., Shri, C., & Mital, K. M. (2016). Modelling enhancement of team emotional intelligence. Vision, 20(3), 184–198. 27. Kaur, B., Ahuja, L., & Kumar, V. (2018). Factors affecting crime against women using regression and K-means clustering techniques. In Proceedings of the International Conference on Industry Interactive Innovations in Science, Engineering and Technology (pp. 149–162). Singapore: Springer. 28. Kismödi, E., Cottingham, J., Gruskin, S., & Miller, A. M. (2015). Advancing sexual health through human rights: The role of the law. Global Public Health, 10(2), 252–267. 29. Loeber, R., Pardini, D., Homish, D. L., Wei, E. H., Crawford, A. M., Farrington, D. P., et al. (2005). The prediction of violence and homicide in young men. Journal of Consulting and Clinical Psychology, 73(6), 1074. 30. Lipsey, M. W., & Derzon, J. H. (1998). Predictors of violent or serious delinquency in adolescence and early adulthood: A synthesis of longitudinal research. 31. Mandal, A., & Deshmukh, S. G. (1994). Vendor selection using interpretive structural modelling (ISM). International Journal of Operations & Production Management, 14(6), 52–59. 32. Malone, D. W. (1975). An introduction to the application of interpretive structural modelling. In Proceedings of the IEEE, 63(3), 397–404.
Modeling the Factors Affecting Crime Against Women …
477
33. Muduli, K., Govindan, K., Barve, A., Kannan, D., & Geng, Y. (2013). Role of behavioural factors in green supply chain management implementation in Indian mining industries. Resources, Conservation and Recycling, 76, 50–60. 34. Nishat Faisal, M., Banwet, D. K., & Shankar, R. (2006). Supply chain risk mitigation: Modelling the enablers. Business Process Management Journal, 12(4), 535–552. 35. Nwabunike, C., & Tenkorang, E. Y. (2017). Domestic and marital violence among three ethnic groups in Nigeria. Journal of Interpersonal Violence, 32(18), 2751–2776. 36. National Research Council. (1996). Causes and consequences of violence against women. In Understanding violence against women. Washington, DC: National Academy Press. 37. National crime record bureau report. (2015–2016), chapter-5 Crime against women, http:// ncrb.nic.in/StatPublications/CII/CII2015/FILES/Compendium-15.11.16.pdf. 38. Larivière, V., Ni, C., Gingras, Y., Cronin, B., & Sugimoto, C. R. (2013). Bibliometrics: Global gender disparities in science. Nature News, 504(7479), 211. 39. Raj, T., Shankar, R., & Suhaib, M. (2008). An ISM approach for modelling the enablers of flexible manufacturing system: The case for India. International Journal of Production Research, 46(24), 6883–6912. 40. Roess, A. A., & Aranda, E. L. (2013). Justification of intimate partner violence in Egypt. 41. Raj, T., Attri, R., & Jain, V. (2012). Modelling the factors affecting flexibility in FMS. International Journal of Industrial and Systems Engineering, 11(4), 350–374. 42. Raj, T., & Attri, R. (2011). Identification and modelling of barriers in the implementation of TQM. International Journal of Productivity and Quality Management, 8(2), 153–179. 43. Ramesh, A., Banwet, D. K., & Shankar, R. (2008). Modelling the enablers of supply chain collaboration. International Journal of Logistics Systems and Management, 4(6), 617–633. 44. Ravi, V., & Shankar, R. (2005). Analysis of interactions among the barriers of reverse logistics. Technological Forecasting and Social Change, 72(8), 1011–1029. 45. Sage, A. P. (1977). Methodology for large-scale systems. 46. Stanko, S. (2017). Assault on men: Masculinity and male victimization. In Crime, Criminal Justice and Masculinities (pp. 133–148). Routledge. 47. Saxena, J. P., & Vrat, P. (1990). Impact of indirect relationships in classification of variables— a micmac analysis for energy conservation. Systems Research and Behavioral Science, 7(4), 245–253. 48. Sachdeva, N., Singh, O., & Kapur, P. K. (2015). Modelling critical success factors for adoption of big data analytics project: An ISM-MICMAC based analysis. Communications in Dependability and Quality Management, 18(4), 93–110. 49. Saxena, J. P., Sushil, & Vrat, P. (2006). Policy and strategy formulation: An application of flexible systems methodology. GIFT Pub. 50. Sharma, B. P, Singh, M. D., & Kumar A. (2012). Knowledge sharing barriers: An integrated approach of ISM and AHP. In Proceedings of the International Conference on Information and Knowledge Management (ICIKM 2012) (Vol. 45, pp. 227–232). 51. Singh, M. D., & Kant, R. (2008). Knowledge management barriers: An interpretive structural modelling approach. International Journal of Management Science and Engineering Management, 3(2), 141–150. 52. Solinas-Saunders, M. (2007). Male intimate partner abuse: Drawing upon three theoretical perspectives (Doctoral dissertation, University of Pittsburgh). 53. Singh, M. D., Shankar, R., Narain, R., & Agarwal, A. (2003). An interpretive structural modelling of knowledge management in engineering industries. Journal of Advances in Management Research, 1(1), 28–40. 54. Sushil, S. (2012). Interpreting the interpretive structural model. Global Journal of Flexible Systems Management, 13(2), 87–106. 55. Singh, A. K., Sushil. (2013). Modelling enablers of TQM to improve airline performance. International Journal of Productivity and Performance Management, 62(3), 250–275. 56. Soler, H., Vinayak, P., & Quadagno, D. (2000). Biosocial aspects of domestic violence. Psychoneuroendocrinology, 25(7), 721–739.
478
B. Kaur et al.
57. Toufique, M. M. K., & Razzaque, M. A. (2007). Domestic violence against women: Its determinants and implications for gender resource allocation (No. 2007/80). Research Paper, UNUWIDER, United Nations University (UNU). 58. Toriizuka, T. (2001). Application of performance shaping factor (PSF) for work improvement in industrial plant maintenance tasks. International Journal of Industrial Ergonomics, 28(3–4), 225–236. 59. Tolan, P. H., Gorman-Smith, D., & Henry, D. B. (2003). The developmental ecology of urban males’ youth violence. Developmental Psychology, 39(2), 274. 60. Tenkorang, E. Y., Owusu, A. Y., Yeboah, E. H., & Bannerman, R. (2013). Factors influencing domestic and marital violence against women in Ghana. Journal of Family Violence, 28(8), 771–781. 61. Warfield, J. (1974). Developing interconnected matrices in structural modelling. IEEE Transactions on Systems Men and Cybernetics, 4(1), 51–81. 62. World Health Organization. (2013). Prevalence & health effects of intimate partner violence and non-partner sexual violence. Italy: WHO publication. World Health Organization Report. 63. Webster-Stratton, C., & Taylor, T. (2001). Nipping early risk factors in the bud: Preventing substance abuse, delinquency, and violence in adolescence through interventions targeted at young children (0–8 years). Prevention Science, 2(3), 165–192.
Impact of Business Analytics for Smart Education System and Management Functions Suplab Kanti Podder, Debabrata Samanta and R. Gurunath
Abstract Business analytics is the advanced technology-driven system with combined efforts of performing various marketing, finance, human resource management, production and operations management functions and maintaining records, classifying, analyzing the data, and preparing report for managerial decision-making. Smart education system is indicated by the education that builds character and ensures the independent working ability. This calls for creating a learning environment wherein all stakeholders are encouraged to improve their knowledge and ability. Sustainable development is one that can avoid a destructive force so that human society can continue its long journey toward perfection. Quality of higher education leads to the overall development of a nation and innovative entrepreneurship ensures the extra value to achieve the goals in a systematic manner. Effective higher education system in India has shown a massive growth which is producing skilled individuals for the growth of Indian Economy. The research methodology consisted of identification of key categories of roles of Business Analytics and subsequently the constituent roles under each category through three iterations Delphi Technique, wherein the Delphi panel consisted 10 experts having diverse background. Taking these inputs and purposeful contemplation on the part of the researcher, the constructs necessary for the questionnaire were formulated. The respondents were asked to rate the level of importance of each question on five-point Likert scales. The study helped to identify the recent trends, requirements, and challenges faced by professionals, especially in Indian Education Institutions when interacting with the roles of Business Analytics in Quality Education and attracting wider stakeholder groups. Majority of the respondents accredited high importance toward role of Business Analytics in Effective Higher Education. A majority of the respondents agreed that the effective higher education is well suited and reflect any organizational performance with benchmark. S. K. Podder (B) · D. Samanta · R. Gurunath Dayananda Sagar College of Arts, Science and Commerce, Bangalore, India e-mail: [email protected] D. Samanta e-mail: [email protected] R. Gurunath e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_45
479
480
S. K. Podder et al.
Keywords Business analytics · Information technology · Smart education system · Sustainable development · Management functions
1 Introduction Quality education is specified by the education that constructs character and guarantees the independent working ability. Business Analytics plays important role for ensuring quality education and build confidence among potential human resources. The main motive behind the research paper was to create a learning atmosphere wherein all stakeholders are encouraged to improve their knowledge and ability. The present education system needs to be activity oriented with the upgraded technology. The Institutions of Higher Education create the education system which facilitates a creative environment to learn and implement the knowledge for the personal and social development. The education system cannot be performed through one or a small group of personnel which requires a large number of human efforts, their skills, knowledge, ability, and more important of their involvement and contribution. Business Analytics is the complete solution for confirming quality education and real-time report preparation system for the managerial decision-making.
2 Review of Literature Several authors and scholars have given their own view related to Information Technology, Business Analytics, Sustainability, and Quality Education. The review of literature contains the details about few research papers and articles. Marcos and Trkman [1] analyzed in the research article “Business analytics in supply chains—The contingent effect of business process maturity” that the Business Analytics assists for systematic and realistic supply chain management. The present supply chain management needs proper record system with the facilities of professional report preparation time to time. Chvatalová et al. (2011) describes in the research article “Institution Sustainability and Measuring Institution Performance” that the measurement of social responsibility system, especially in e-governance system should have transparency and valid. The same report should disclose among the stakeholders of the organization that creates the good reputation of the Institution sector. Effective reporting system, especially in data warehouse, analyzes and report preparation builds confidence among the stakeholders of an organization and facilitates to get competitive advantages and better response from the society. Guangming and Duan [2] analyzed in the article “Linking Business Analytics to Decision Making Effectiveness: A Path Model Analysis” that the Business Analytics creates link between stakeholders and organizations and practicing transparency of recoding and disclosing information. Aras and Crowther [3] explained in the research article “Institution Sustainability: A Study in Disingenuity?” that the Education Institutions are bound
Impact of Business Analytics …
481
to focus on Institution social responsibility. The systematic reporting of Institution social performance is an important role for an organization that differentiates its reputation from other organizations. The Education Institutions should consider the sustainable recording and reporting system with reliable information. Hedberg and Malmborg [4] analyzed in the article “The Global Education and Institution sustainability in Swedish companies” that the sustainable recording and reporting became the mandatory responsibility for the Education Institutions like the quality standardization of products or services. The authorized organizations verify the quality and reliability of reporting system and certify the same. The certification helps to communicate the stakeholders in the right way and builds the standard industrial relations. The Education Institutions should take initiative to follow the standard system of preparing and maintaining the Higher Education for the long-run survival of the organization with good response from society. Clyde and Lee-Post [5] defined in the article “A unified foundation for business analytics” that the Business Analytics is the latest data security and reporting mechanism that helps an organization to collect and record data systematically and assist for managerial decision-making.
3 Statement of the Problems (i)
Business Analytics is the technology-based report preparation and decisionmaking system that requires technical support and infrastructure. The major problems of ensuring quality education are inadequate infrastructure and experts to operate the Business Analytics system. (ii) Business Analytics helps to identify the categories of students based on the future plan and maintains the database that creates link between institution and industrial practices. But incomplete Business Analytics practices cannot ensure the proper assistance for managerial decision-making. (iii) The problems also include the diversity of performance, lack of cooperation in teamwork, and negligence of social issues which lead to ineffective business decisions and implementations.
4 Objectives of the Study With the curiosity of the researcher and the consideration of research title, the following objectives were derived: • To identify the impact of Business Analytics for smart education system and management functions. • To find out the mechanism for Business Analytics to ensure smart education system and management functions.
482
S. K. Podder et al.
• To find out the challenges faced by the professionals while executing Business Analytics in an organization. • Based on the study, to list the relevant suggestions for future implications.
5 Hypotheses for the Study Based on the objectives of the study, following hypotheses were formulated to facilitate the purposeful research methodology: H01: There is no significant level of difficulties in changing the impact of Business Analytics for smart education system and management functions. Or, Mathematically, H01: [the level of difficulties in changing the impact of Business Analytics for smart education system and management functions] = 0. H02: There is no significant level of difficulties in altering the mechanism for Business Analytics to ensure smart education system and management functions. Or, Mathematically, H02: [the level of difficulties in altering the mechanism for Business Analytics to ensure smart education system and management functions] = 0.
6 Limitations of the Study The research study is having few limitations which are given below: (i)
The study is restricted to the services organizations in Karnataka state only but can be considered in other states also. (ii) The data collection is restricted to five big cities like Bangalore, Mysore, Davanagere, Tumkur, and Mangalore but can be selected from some other cities also where the organizations execute Business Analytics for impact of Business Analytics for smart education system and management functions. (iii) It is limited to few Indian services organizations but can be considered for some foreign organizations related to implementation of Business Analytics for ensuring smart education and management functions. (iv) The present study is constrained by the limitation of time and availability of suitable responses.
Impact of Business Analytics …
483
7 Research Methodology The present study makes an attempt to identify the impact of Business Analytics for smart education system and management functions. The requisite data is collected both from primary and secondary sources. A set of questionnaire and consequent semi-structured interview schedules were employed to collect the primary data. The secondary data sources included web literature, journals, periodicals, and newspaper reports to get a picture about the prevailing context. The CV analysis and frequency distribution methods were employed for data analysis, and finally interpretations take place with the consideration of summary of results.
8 Data Analysis The collected data were arranged systematically with required tables. The arranged data were analyzed by employing the statistical techniques of CV analysis and frequency of distribution to obtain the hidden patterns with respect to impact of Business Analytics for smart education system and management functions for establishing hypotheses and achieving objectives of the research.
8.1 Analyzing the Level of Difficulties in Changing the Impact of Business Analytics for Smart Education System and Management Functions The analysis is related to the levels of difficulties in changing the impact of Business Analytics for smart education system and management functions from the viewpoint of concerned stakeholders. The degree of difficulties levels encountered in changing the existing behavior of Regular Employees, Decision-makers, and Other Stakeholders (Students, Parents, and Guardians). The results of Table 1 point out the comparison of basic statistics among different categories of respondents with respect to Role of Business Analytics that influence Quality Education and Advancements in Management. H01: There is no significant level of difficulties in changing the impact of Business Analytics for smart education system and management functions. Or, Mathematically, H01: [the level of difficulties in changing the impact of Business Analytics for smart education system and management functions] = 0. The above hypothesis (H01) is based on the CV value. More CV value is the indication of more difficulties to change. If the CV value is less than 0.25, then there is no significant level of difficulties in changing the impact of Business Analytics for
5.677
Artificial intelligence
Robotics support
1.590 1.663
1.538
Source compiled by the researcher (Clyde and Lee-Post [5]
5.390
5.502
Data warehouse 0.293
0.280
0.295
0.289
CV
6.285
5.790
5.440
5.605
0.910
0.799
0.954
0.490
SD
0.145
0.138
0.175
0.087
CV
Mean
1.492
SD
Mean
5.160
Decision-makers (N 2 = 200)
Regular employees (N 1 = 400)
Business analytics infrastructure
Factor
6.395
6.010
6.020
5.855
Mean
0.918
1.012
1.080
1.086
SD
0.144
0.168
0.179
0.186
CV
Other stakeholders (N 3 = 200)
Table 1 Comparison of basic statistics among different categories of respondents related to level of difficulties in altering the mechanism for business analytics to ensure smart education system and management functions
484 S. K. Podder et al.
Impact of Business Analytics …
485
smart education system and management functions. In case the CV value is more than 0.25, then there is a significant level of difficulties in changing the impact of Business Analytics for smart education system and management functions. The CV values of various impacts of Business Analytics for smart education system and management functions, i.e., Personalize the Learning Experience, Follow the Global Education Standards, Understanding of Business Performance, and Faster and Better Decision-Making were less than 0.25 in the Regular Employees’ point of view. The results from Table 1 indicate there is no significant level of difficulties in changing the impact of Business Analytics for smart education system and management functions. So, the Null Hypothesis is not rejected. On the other hand, the CV values of various impacts of Business Analytics for smart education system and management functions, i.e., Allows a teacher to measure, monitor, and respond; Conducting Competitor Analysis; Conducting Customer Analysis; and Conducting Market Analysis were more than 0.25 in the Regular Employees’ point of view. The results from Table 1 indicate there is no significant level of difficulties in changing the impact of Business Analytics for smart education system and management functions. So, the Null Hypothesis is not rejected. The CV values of impact of Business Analytics for smart education system and management functions, i.e., Personalize the Learning Experience; Follow the Global Education Standards; Allows a teacher to measure, monitor, and respond; Understanding of Business Performance; Conducting Competitor Analysis; Conducting Customer Analysis; Conducting Market Analysis; and Faster and Better Decision-Making are less than 0.25 in the Other Stakeholders’ point of view. The results from Table 1 indicate there is no significant level of difficulties in changing the impact of Business Analytics for smart education system and management functions. So, the Null Hypothesis is not rejected.
8.2 Analyzing the Level of Difficulties in Altering the Mechanism for Business Analytics to Ensure Smart Education System and Management Functions The analysis related to the levels of difficulties in changing the mechanism for Business Analytics to ensure smart education system and management functions from the viewpoint of concerned stakeholders. The degree of difficulties levels is encountered in changing the existing behavior of Regular Employees, Decision-makers, and Other Stakeholders. Table 2 indicates the comparison of basic statistics among different categories of respondents with respect to the mechanism for Business Analytics to ensure smart education system and management functions. H02: There is no significant level of difficulties in altering the mechanism for Business Analytics to ensure smart education system and management functions. Or, Mathematically, H02: [the level of difficulties in altering the mechanism for Business Analytics to ensure smart education system and management functions] = 0.
486
S. K. Podder et al.
Table 2 The challenges faced by the professionals while executing business analytics in an organization Sl. no.
Challenges faced by professionals while executing business analytics in an organization
Frequency of occurrence in %
1
Lack of infrastructure
27
2
Poor data quality
21
3
Complexity in implementation of data
18
4
Inadequate funding for operations
14
5
Lack of training program
12
6
Accuracy in analyzing the relevant data
08
Source compiled by the researcher (Guangming and Duan [2]
The above hypothesis (H02) is based on the CV value. More CV value is the indication of more difficulties to change. If the CV value is less than 0.25, then there is no significant level of difficulties in changing the mechanism for Business Analytics to ensure smart education system and management functions. In case, the CV value is more than 0.25, then there is a significant level of difficulties in changing the mechanism for Business Analytics to ensure smart education system and management functions. The CV values of mechanism for Business Analytics to ensure smart education system and management functions, i.e., ICT Infrastructure, Data Warehouse, Artificial intelligence, and Robotics Support are more than 0.25 in the Regular Employees’ point of view. The results from Table 1 indicate there is significant level of difficulties in changing the mechanism for Business Analytics to ensure smart education system and management functions. So, the Null Hypothesis is rejected. The CV values of mechanism for Business Analytics to ensure smart education system and management functions, i.e., Business Analytics Infrastructure, Data Warehouse, Artificial intelligence, and Robotics Support are less than 0.25 in the Other Stakeholders’ point of view. The results from Table 2 consider there is no significant level of difficulties in changing the mechanism for Business Analytics to ensure smart education system and management functions. So, the Null Hypothesis is not rejected.
8.3 Analysis Regarding the Challenges Faced by the Professionals While Executing Business Analytics in an Organization Various challenges were extracted by talking to Institution experts like Business Analyst, Economist, Managing Director, HR Director, etc. Based on the semi-structured interview schedule, the most frequent response was the Lack of Infrastructure around
Impact of Business Analytics …
487
27%. Around 21% of respondents agreed that the Poor Data Quality is the major challenge for executing Business Analytics in smart education system and management functions. Among the respondents, 18% of frequency repetition regarding complexity in implementation of data. Around 14% of respondents agreed that the Inadequate Funding for Operations was another challenge for executing Business Analytics in smart education system and management functions. Similarly, Lack of Training Program considered 12 and 8% frequency on accuracy in analyzing the relevant data.
9 Conclusions The research study was concentrated on role of Business Analytics for quality education and advancements in management. Business Analytics assists in the proper data collection, classification, analysis, and reporting system. Quality education necessitates the modern tools including Business Analytics and ICT infrastructure that lead to management functions like marketing, finance, HR, and operations. The advancements in management operations finally lead to sustainable development.
References 1. Marcos, P., Trkman, P. (2012). Business analytics in supply chains—The contingent effect of business process maturity. Expert Systems with Applications, 39(5), 5488–5498. 2. Guangming, C., & Duan, Y. (2015). Linking business analytics to decision making effectiveness: A path model analysis. IEEE Transactions on Engineering Management, 62(3), 384–395. 3. Aras, G., & Crowther, D. (2009). Institution sustainability: A study in disingenuity. Journal of Business Ethics, 13(2), 634–652. 4. Hedberg, C., & Malmborg, F. (2003). The global education and institution sustainability reporting in Swedish companies. Institution Social Responsibility and Environmental Management, 24(2), 153–164. 5. Clyde, H., & Lee-Post, A. (2014). A unified foundation for business analytics. Decision Support Systems, 64(3), 130–141. 6. Abreu, R., & David, F. (2004). Institution social responsibility: Exploration inside experience and practice at the european level. In D. Crowther & L. Rayman-Bacchus (Eds.), Perspectives on institution social responsibility (pp. 109–139). Aldershot: Ashgate. 7. Amba-Rao, S. C. (2008). Multinational institution social responsibility, ethics, interactions and third world governments: An agenda for the 1990s. Journal of Business Ethics, 12(3), 553–572. 8. Carroll, A. (2005). Impact of institution social responsibility and higher education. Journal of Business and Society, 38(3), 268–295. 9. Crowther, D. (2008). The social and environmental accounting and its applicability. The Financial Times, Prentice Hall, pp. 234-254. 10. Crowder, D. (2009). The roles of institution reporting, stakeholders and the internet: Mapping the new institution landscape. Journal of Urban Studies, 37(10), 1837–1848. 11. Daly, H. (1999). The allocation, distribution and scale towards an economics that is efficient, just and sustainable. Journal of Ecological Economics, 6(3), 185–193. 12. Dyllick, T., & Hockerts, K. (2002). Beyond the business case for institution sustainability. Journal of Business Strategy and the Environment, 11(2), 130–141.
488
S. K. Podder et al.
13. Elliot, S. R. (2005). Sustainability: An economic perspective, resources conservations and recycling. Journal of Economics, 44(1), 263–277. 14. Paul, M., Samanta, D., & Sanyal, G. (2011). Dynamic job scheduling in cloud computing based on horizontal load balancing. International Journal of Computer Technology and Applications (IJCTA), 2(5), 1552–1556. 15. Hart, S. L. (1997). Beyond greening: Strategies for a sustainable world. Harvard Business Review, 75(1), 66–76. 16. Hart, S. L., & Milstein, M. B. (2003). Creating sustainable value. Academy of Management Executive, 17(2), 56–67.
A Review on Security and Privacy Issues in Internet of Things Amit Kumar Tyagi , Kavita Agarwal, Deepti Goyal and N. Sreenath
Abstract In India, building smart cities is most necessary project for current government, with respect to the getting the status of developed country. But, smart cities are not just built in months, they took years to build because several components need to work together perfectly (which are comes under an ecosystem). To fulfil such goal/smart cities, Internet of Things is mostly used devices to communication with other Internet-connected devices or to do necessary task (for smart city). In near future, most of the things (around the world) will be connected with technology, for example, smart homes, smart cities, smart transportation systems, smart grids, etc., are the applications of advancement in technology (due to integration of Internet of Things together). But, connecting of Internet of Things (IoTs) devices together raised several critical issues like security, privacy, and trust in an ecosystem. In general, Internet of Things (IoTs) are the devices which are connected to do other devices and communicating through sensors and Radio-Frequency Identification (RFID) tags (in the physical world), also through Internet infrastructure. Such issues and challenges need to be listed/investigated for future research. Hence, this article identifies such issues and discusses all of them in detail (from every possible point of view). Together this, this paper also discusses the several benefits or applications of Internet of Things in detail. Keywords Internet of things · Security · Privacy · Smart things · IoTs applications A. K. Tyagi (B) · K. Agarwal · D. Goyal Department of Computer Science and Engineering, Lingaya’s Vidyapeeth, Faridabad 121002, Haryana, India e-mail: [email protected] K. Agarwal e-mail: [email protected] D. Goyal e-mail: [email protected] N. Sreenath Pondicherry Engineering College, Puducherry 605014, India e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_46
489
490
A. K. Tyagi et al.
1 Introduction—Internet of Things Internet of Things is ‘a world in which all electronic devices (smart devices) are networked and every object, whether it is physical or electronic, is electronically tagged with information pertinent to that object’. Note that ‘Internet of Things’ term was first time coined by the cofounder and Executive Director of MIT’s Auto-ID lab, Kevin Ashton in the mid-1990s [1]. Several technologies drive the IoT’s vision. This is the age of all pervasive connectivity—the ‘Internet of Things’ (abbreviated as IoT). With the rise of connected devices (with Internet of Things) and connected individuals (systems/devices with sensor), we received combination of four terms (i.e. big data, cloud, social media, and mobile devices and things) or technologies (technology pillars) which works as fuel to industries and helps IoTs to reshape, which has been discussed in [2]. In technical words, connecting devices/things with Internet used three main technology components (i.e. physical devices with sensors/connected things, connection and infrastructure, and analytics and applications), which can be included as follows: • Physical devices and sensors: They (IoTs) gather and sense multidimensional information and evidence of the objective condition of an event automatically (according to fixed events). It also captures information with embedded intelligent. The context of the environment is updated and the device will respond accordingly. Note that this is a continuous cyclic process. • Connection and infrastructure: Cloud and its security, storage, privacy and processing make an interconnection together (for a real-time data and information flow and feedback) with connecting with the IoTs. • Analytics and applications: The data generated by the sensor (enabled/embedded in Internet-connected devices) is gathered by the user. With the help of appropriate or efficient tools, it is transformed into information, which can be used for the purpose of analysis. Further, the following enabling technologies with Internet-connected things/IoT are used, i.e. Radio-Frequency Identification (RFID), Wireless Sensor Networks (WSN), Addressing Schemes, Data Storage and Analytics, and Visualization. An Internetconnected/IoT device can be classified further into two categories: • Physical objects: These can be smartphone, camera, sensor, vehicle, drone and so on. • Virtual objects: These include electronic ticket, agenda, book, wallet and so on. In the past decade, several security vulnerabilities are being found in Internet of Things/cyber-physical systems like robotics/electronic power grid, intelligent transportation systems, medical devices and so on [3]. Hence, remaining paper/work can be organized as follows: Sect. 2 discusses several applications of Internet of Things (in near future). Further, Sect. 3 discusses several security issues with Internet of Thing’s devices (with suggested countermeasures). Further, Sect. 4 also discusses some serious issues like privacy, security (hardware, network, etc.) in IoTs ecosystem
A Review on Security and Privacy Issues in Internet of Things
491
in detail. Later, Sect. 5 discusses some challenges in IoTs and limitations of IoTs. In last, this work is concluded as Sect. 6.
2 Applications of the Internet of Things in Near Future Some applications of the Internet of Things or Internet-connected things are everywhere in human being’s life. Some of them are being discussed in this subsection. In [4, 5], the main IoT applications have been identified by several authors which are smart energy, smart health, smart buildings, smart transport, smart living and smart city (see Fig. 1). Successful realization of the vision of a pervasive IoT would require unification of these diverse vertical application domains into a single, unified, horizontal domain, often referred to as ‘smart life’. Based on inputs from experts, surveys and reports, the European Research Cluster (ERC) on the Internet of Things (IoTs) identified the Internet-Connected Things application domains. In [4], authors present an updated enumeration of the application domains. Hence, the uses of IoTs device can be discussed via several applications/domains: • Cities Smart Parking: In this domain, IoTs can be used to monitor parking spaces availability in the city, monitor vibrations and material conditions in buildings,
Fig. 1 Multiple application scenarios of Internet of Things
492
•
•
•
•
A. K. Tyagi et al.
bridges and historical monuments (i.e. Structural health), to monitor real-time sounds in centric zones (or Noise Urban Maps), monitor vehicles and pedestrian levels to optimize driving and walking routes (i.e. to reduce traffic over road network), to make intelligent and weather adaptive street lighting (i.e. for Smart Lightning), to detect rubbish levels in containers to optimize the trash collection routes (or for Waste Management) and in Intelligent Transportation Systems (i.e. smart roads and intelligent highways with warning messages and diversions according to climate conditions and unexpected events like accidents or traffic jams). Environment and Water: In this domain, IoTs can be used to monitor flaming gases and pre-emptive fire conditions to define alert zones (to detect fire in Forest), to control carbon dioxide emissions of factories, pollution emitted by cars and toxic gases generated in farms (i.e. in reducing Air Pollution), to monitor soil moisture, vibrations and earth density to detect dangerous patterns in land conditions (i.e. Landslide and Avalanche Prevention), detect early earthquakes via distributed control in specific places of tremors, study water suitability in rivers and the sea for fauna and eligibility for drinkable use (i.e. for improving Water Quality), detect presence of liquid outside of the tanks and pressure variations along pipes (i.e. to reduce Water Leakages), to monitoring water-level fluctuating in rivers, dams and reservoirs (River Floods). Energy Smart Grid, Smart Metering: In this domain, IoTs can be used in several applications like in monitoring water, in storing oil and gas levels in tanks and cisterns (i.e. with containing a Tank level), to monitor and manage the energy consumption (i.e. for Smart Grid applications), to monitor and optimize the performance of solar energy plants, to measuring water pressure with checking emptiness level (in pipelines systems, i.e. Photovoltaic Installations), also to calculate weight of the goods (i.e. to measure Silos Stock Calculation). Security and Emergencies: Internet-Connected Things/IoTs are also used for various other uses like to access the control on restricted areas and detection of people in non-authorized areas (i.e. as Perimeter Access Control), for liquid detection in data centres or warehouses/sensitive building grounds for preventing any damages/break downs or corrosion. Also, it is used to measure the radiation levels in nuclear power stations via generating leakage alerts (i.e. with providing Radiation Levels). In last on a large scale, it is also used for detecting gas levels/leakages in industrial environments (around chemical factories and inside mines) to find Explosive and Hazardous Gases. Retail and Logistics: Moreover, above uses, IoT devices are also used in some other applications like retail and logistics. It (IoT devices) is used to monitor storage conditions along the supply chain and product tracking for traceability purposes (i.e. in summary as Supply Chain Control), for payment processing in applications like public transport, gyms, etc., (based on location/activity), also for receiving useful advice from the sale (like customer habits, preferences, presence of allergic components, etc.,), i.e. it may help in creating Intelligent Shopping Applications/Smart Product Management. In last, IoTs are also used for monitoring vibrations/strokes/container openings (or cold chain maintenance for
A Review on Security and Privacy Issues in Internet of Things
•
•
•
•
493
insurance purposes), also for searching of individual items in big areas like warehouses (with giving warning emission on containers which store inflammable goods/explosives). Industrial Control: IoTs used in some other domains like in machine auto-diagnosis and assets control, for monitoring toxic gas and oxygen levels (inside chemical plants to ensure workers’ and goods’ safety). Also, IoTs are used to control temperature inside industrial and medical fridges with sensitive merchandise with temperature monitoring, to monitoring the ozone levels during the drying meat process in food factories (ozone presence). Hence, in summary, IoTs are used to check indoor air quality, also in collecting information (from buses/transport devices) with sending real-time alarms (in case of emergencies), i.e. to provide suitable/best advice to drivers. Agriculture and Animal Farming: As the best usage of IoTs, it is implemented in agriculture and animal farming nowadays. With IoT devices, we can monitor soil moisture and trunk diameter in vineyards (i.e. to control sugar content in grapes and grapevine health), to increase production of fruits and vegetables and its quality (with decreasing impact of Green Houses or with controlling microclimate conditions. Also, IoTs can be used in studying weather conditions in fields to forecast ice formation, rain, drought, snow or wind changes with controlling humidity and temperature levels in alfalfa, hay, straw, etc. (preventing soil from fungus and other microbial contaminants). In last, IoTs are also used in controlling growing conditions of the offspring (in animal farms), i.e. ensuring its survival and health, also used in Animal Tracking (which are grazing in open areas). Domotic and Home Automation: In this domain, IoTs can be used to monitor energy and water supply consumption to obtain advice on how to save cost and resources (i.e. to find total energy and water use for a time span), switch on and off remotely appliances to avoid accidents and save energy (i.e. in Remote Control Appliances), detect window and door openings and violations to prevent unknown users/intruders (i.e. Intrusion Detection Systems), to monitoring conditions inside museums and art warehouses (i.e. in Preservation of Art and Goods). e-Healthcare: In this domain, Internet-Connected Things can be used to assist elderly/disabled people living independently, control conditions inside freezers storing vaccines, medicines and organic elements (i.e. as Medical Fridges), monitor conditions of patients inside hospitals and in old people’s home (i.e. having surveillance of Patients), measure ultraviolet (UV) sun rays to warn people not to be exposed in certain hours.
Hence, IoTs are used in several applications like: to control the routes followed for delicate goods like medical drugs, jewels or dangerous merchandises as Fleet Tracking, in increasing agriculture cycle/ irrigation in dry zones with finding (requiring) actual water resources (with a measurement) or compared to green areas, to monitor vital signs in high-performance centres and fields, to study air quality in surrounding areas/farms and detection of harmful gases from excrements, i.e. to know level of Toxic Gases, etc. This section discusses several applications of Internet of Things
494
A. K. Tyagi et al.
with respect to real-world problems. Now, next section will discuss several issues raised in IoTs (with suggested countermeasures/solutions) devices in detail.
3 Popular Security Issues with Internet of Thing’s Devices (with Suggested Countermeasures) Taking many devices under a user’s control (via several security attacks like DoS, eavesdropping, DDoS, etc.) for his financial gain raised issues of security. Also, tracking user’s every step (i.e. an issue of privacy) is the biggest issue among available issues in IoT devices. In general, IoT devices have made human life better and better (in terms of living standards). But, when these devices integrate with several other IoT devices and used by many users (in parallel mode), then they create (collect/capture) a lot of data which may leak to malicious/unknown/ and can be stolen by any hacker. This is also a critical issue to overcome. Hence, in IoT, issues like not having proper standards for hardware used with IoT to make a communication, poor system security, server security, data security, leaking of user’s personal information, etc., need to be overcome (attention from research community) in near future.
3.1 Insecure Web Interface Internet of Things or Internet-Connected Things/devices having a web interface which allows a user to interact with the device (person to device communication). But at the same time, it (smart devices) could also allow an attacker/malicious user to gain unauthorized access to the connected smart devices. Some of the issues which may arise due to security vulnerabilities are Account Enumeration, Weak Default Credentials, Credentials Exposed in Network Traffic, Cross-site Scripting (XSS), SQL-Injection, Session Management and Weak Account Lockout Settings [6]. As solution, these security vulnerabilities can be avoided by using countermeasures like the default passwords and usernames should be changed during the initial setup only (with ensuing a reliable, secured password recovery mechanism). Here, no weak passwords are allowed, especially a combination of letter, number and special character needs to be considered for a strong password mechanism. The account should be lockout after 3–5 login attempts and to ensure that web interface is not susceptible to XSS, SQLi or CSRF.
A Review on Security and Privacy Issues in Internet of Things
495
3.2 Unsatisfactory Authentication/Authorization Some ineffective or insufficient mechanisms exist to authenticate the IoT user interface. It is a part of poor authorization mechanisms, i.e. where a user can gain higher levels of access, where he is allowed only for few. Some security vulnerabilities can create this issue which are Lack of Password Complexity, Poorly Protected Credentials, Lack of Two-Factor Authentication, Insecure Password Recovery, Privilege Escalation and Lack of Role Based Access Control [6]. Hence, these security vulnerabilities can be avoided by using countermeasures like first assure that the password is strong (enough), and then ensure access control wherever and when it (password) is necessary. Further, assure that the credentials are properly protected with a strong encryption mechanism. We can apply two-factor authentications wherever possible to provide higher security. Later, we can ensure that the mechanism for password recovery is also secure. Note that we need to ensure also re-authentication for some sensitive features, i.e. options for configuring password controls (if the user forgets the password).
3.3 Insecure Network Services In this, a user wants to access the IoT device, then the device might allow him/an intruder to gain unauthorized access to the device or its associated data. Some security vulnerabilities that can create this issue are Vulnerable Services, Buffer Overflow, Open Ports via UPnP (Universal Plug and Play), Exploitable UDP (User Datagram Protocol) Services and Denial of Service/DoS via Network Device Fuzzing. Hence, these security vulnerabilities can be avoided by countermeasures like ensure that only necessary ports are available, and given services to devices are not malicious to perform any DoS attack, overflow and fuzzing attacks. Also, we need to ensure that available network ports/services are not exposed to the Internet (via UPnP) or to a third party (to unknown user).
3.4 Lack of Transport Encryption Exchanged data with the IoT device can be available or transfer to other devices in an unencrypted format. This could easily lead to an attacker/intruder sniffing the data and either capturing this data for later use or compromising the device itself. Some security vulnerabilities that can create this issue are Unencrypted Services via the Internet, Unencrypted Services via the Local Network, Poorly Implemented SSL/TLS and Misconfigured SSL/TLS. Hence, these security vulnerabilities can be avoided by solution like ensuring data/information is encrypted using efficient protocols (Secure Sockets Layer (SSL), Transport Layer Security (TLS)) or any
496
A. K. Tyagi et al.
another standard encryption algorithms/security protocols (if SSL and TLS are not available) while transiting in network to other network or from a device to another device. Hence, we need to ensure that only accepted or standard encryption standards have been used (to avoid any kind of attacks) in IoT devices.
3.5 Privacy Issues Privacy issues are raised in generated of personal data [7, 8] by millions of IoT devices. Today, we are lacking in protection of this data (properly and with higher security). Privacy issues can be found in IoTs by analysing the data (collected when a user makes set up and use the respective smart device for communication). Several automated tools or feature of smart devices are being used to look or track specific patterns of user. This continuous tracking of a user produces a lot of data that may contain some sensitive information of user. Some security vulnerabilities that can create this privacy issue are collection of irrelevant personal information, sharing personal information of user with malicious devices/users, etc. Hence, these privacy issues/vulnerabilities (in a network) can be avoided by using mechanism like ensuring that data collected by devices is general, and is not sensitive/personal data (also should be de-identified or anonymized). Also, ensure that (always) data is collected through proper mechanism/encryption schemes and only authorized/known users need to access/permitted to use this data/personal information. In last, we need to ensure that end users are provided with ‘Notice and Choice’ if data collection is more (in storage) than what would be expected from the devices/products. Note that always we need to ensure that smart devices (or IoTs) and its components are storing, retrieving and protecting its data properly.
3.6 Insecure Cloud Interface Today, several security issues are raising related to the cloud interface (which is in interaction with IoT devices). It may provide poor authentication controls/data travelling in an unencrypted format, i.e. allowing an attacker access to the device or the underlying data. Some security vulnerabilities that can create this issue are Account Enumeration, No Account Lockout and Credentials Exposed in Network Traffic [6]. Hence, these vulnerabilities/attacks can be avoided by using solution like the default passwords and usernames need to be changed during initial setup (as mandatory). Then, we need to ensure that there should be enough and efficient functionality, i.e. password reset mechanisms in user accounts and locking of account (in case of after 3–5 failed login attempts). Also, we can implement two-factor authentications, if possible/required. In last, we can ensure that cloud-based web
A Review on Security and Privacy Issues in Internet of Things
497
interface is not susceptible to ay attacks like XSS (Cross-Site Scripting), SQLi (SQLInjection) or CSRF (Cross-Site Request Forgery) (including that no credentials are exposed over the Internet/World Wide Web).
3.7 Insecure Mobile Interface Weak authentication or unencrypted data channels can allow an attacker access to the device or underlying data of an IoT device that uses a vulnerable mobile interface for user interaction. Some security vulnerabilities that can create this issue are Account Enumeration, No Account Lockout and Credentials Exposed in Network Traffic. Hence, these vulnerabilities can be avoided by following countermeasures: a. Assure credentials should not be exposed while connected to wireless networks. b. Countermeasures from (a)–(d) of Sect. 3.6.
3.8 Insufficient Security Configurability Insufficient security configurability is present when users of the device have limited or no ability to alter its security controls. Insufficient security configurability is present when the web interface of the device has no options for creating granular user permissions, for example, forcing the use of strong passwords. The risk here is that IoT device could be easier to attack allowing unauthorized access to the device or the data. Some security vulnerabilities that can create this issue are Lack of Granular Permission Model [6], Lack of Password Security Options, No Security Monitoring and No Security Logging. Hence, these vulnerabilities or attacks can be avoided by using suggestions like we need to ensure that ability to separate normal users from administrative users or another (malicious) user. Then, we need to ensure that the ability to encrypt data at rest (server side) with containing strong password policies to increase security (i.e. ability to send security alerts of logging events to end users).
3.9 Insecure Software/Firmware The lack of ability for a device to be updated presents a security weakness on its own. Devices should have the ability to be updated when vulnerabilities are discovered and software/firmware updates can be insecure when the updated files themselves and the network connection they are delivered on are not protected. Software/firmware can also be insecure if they contain hardcoded sensitive data such as credentials. The inability of software/firmware being updated means that the devices remain vulnerable indefinitely to the security issue that the update is meant to address. Further, if the
498
A. K. Tyagi et al.
devices have encoded sensitive credentials, if these credentials get exposed, then they remain so for an indefinite period of time. Some security vulnerabilities that can create this issue are Encryption Not Used to Fetch Updates, Update File not Encrypted, Update Not Verified before Upload, Firmware Contains Sensitive Information and No Obvious Update Functionality. These vulnerabilities can be avoided by using solution like we need to ensure that device has the ability to update automatically or with user permission (mandatory). Further, we need to ensure that update file is encrypted using accepted/standard encryption method (or update file is transmitted via a reliable encrypted connection). Note that we need to ensure that update file does not contain or expose any sensitive data to any user/device, also verified that any updation in device is signed and verified (with a secure update server).
3.10 Other Security Issues in Internet of Things Providing security in IoT devices is a critical and an essential issue to solve for winning trust among people and organizations. The application data of IoT could be industrial, enterprise, consumer or personal. This application data should be secured, with reliable privacy preserved schemes (as confidential against any kind of attacks like theft or tampering). As discussed in [4, 2], IoT devices/applications may store the information of end users, for example, the information/results of a patient’s health or shopping store. Today’s smart devices like IoT have improved the communication between devices. But with this they (IoT devices) have created several issues like scalability, availability and response time. Security is a concern where the data is securely transmitted over the Internet. Issues like privacy (leaking of personal data of users) and data sharing with others raise the issue of trust in IoT ecosystem. Hence, this section discusses popular security and other issues with suggested solutions in Internet of Things. Now, next section will discuss some top (popular) issues with respect to security and privacy in an IoT ecosystem.
4 Security and Privacy Issues in Internet of Things Ecosystem As discussed in [4] and several IoTs applications (refer Sect. 2), Internet-Connected Devices/Things can communicate together/with consumers, and may share data back to respective service providers (or master: who build these devices), and compile data for third parties such as researchers, healthcare providers, firms, organizations or even other consumers. For example, in past, there were several rumours that Xiaomi (a mobile company of China) is storing and passing user’s personal data/information to China’s government. Hence, the storing and sharing of information with smart devices/IoT devices bring new challenges for regulators, enterprises and consumers.
A Review on Security and Privacy Issues in Internet of Things
499
As we know (discussed), the IoT revolution is already under construction, i.e. not implemented completely. ‘Things’ (e.g. everyday objects, environments, vehicles and clothing) will have more and more information associated with them, and are beginning to sense, communicate and produce new information, to become an integral part of the Internet. In near future, market of IoT devices will reach £200 billion annually (worldwide), with introducing new business models, being implemented in several applications and providing efficient services to each area/sector of the economy (of a country). These will also stimulate innovation and growth in areas such as components, devices, wireless connectivity, system integration and decision support tools. Some serious issues with IoTs need to overlook by research communities (for providing smart, secure communication) are included as follows: a. Device/Physical Security: Connection devices are main components of IoT, which collect data and interact with other devices/humans. When these devices collect data, then they are so vulnerable to physical security issues. Note that when we have a robust network, at that time also unauthorized physical access to connected IoT devices can be happened/traced. This may create problem of catastrophic system failure. Hence, some ways to ensure physical security are limiting physical access to the device, and ensuring proper security measures in the Operating System (OS) to prevent unauthorized access. Generally, physical security weaknesses are available when a malicious user/attacker can disassemble a device to easily access the storage medium and any data stored on that medium. Weaknesses are also present ‘when Universal Serial Bus (USB) ports or other external ports can be used to access the device using features intended for configuration or maintenance. This could lead to easy unauthorised access to the device or the data’. Some security vulnerabilities that can create this issue are Access to Software via USB Ports and Removal of Storage Media. Hence, these vulnerabilities can be avoided by following countermeasures: i.
Ensuring medium of data storage (it should change frequently) and this (collected/stored) data need to properly encrypt (at server side), i.e. using secure cryptographic mechanism. ii. Ensuring USB ports/other external ports cannot be used to maliciously access the device. iii. Ensuring device cannot be easily disassembled and provide limit use of data to administrations/authorized users. b. Network Security: Networks are always vulnerable to hacks from long decades (i.e. before advent of IoT). Several hackers tried to occupy network for their financial use. We have large volume of IoT devices, which makes us have a robust and secure network. In the past decades, several scientists and researchers had analysed about security components (to various components). They found that vulnerability in network is due to weakest link/in processes/transferring of a data (in source to final destination). A network can be exploited by malicious users/hackers via remotely, i.e. without access of IoT device physically [9]. One better solution for proper security/avoiding network compromise is to use Virtual
500
A. K. Tyagi et al.
Private Networks (VPN’s). It secures a network by encrypting the data traffic that flows through them [10]. Note that VPNs do not ensure absolute security to a system/network, i.e. still susceptible to Man-In-The-Middle (MITM) attacks. c. Data Security: Data in IoT can be classified into two categories: stored data (data at rest) and data in the process of transmission (data in flight). For maintaining data integrity, we need high-level encryption of both data types. But, problem of scale raised here, i.e. with a large variety of devices and varying hardware specifications, it is clearly impossible to create a one-size-fits-all standard data encryption process. Data which is highly sensitive like bank account details, usernames and passwords are required to encrypt with two (or more) factor authentication processes to ensure security. d. Operating System Security: Operating Systems (OS) are prime target for any malicious user/attacker/hackers. If a hacker gaining access to the OS of an IoT cluster/a single device, then attacker can exploit or compromise into a system/own a system (can run according to his/her commands). Note that recovering from OS security breaches is so costly (it may lead to partial/complete data loss), and also require a lot of time to restore an OS to full efficiency. Here, backups of a system can minimize the overall cost of recovering from an OS hack. Whereas it is impossible to accurately detect the date of a hack/compromise, and also it is impossible to know the exact point from which (or where) a system can be restored. Hence, with the increasing size and complexity of IoT devices, a more robust IoT security analytics process is required to identify and neutralize IoT specific security breaches in near future. e. Server Security: Nowadays, IoTs are working as smart devices and interacting with cloud servers. Here, Denial-of-Service (DoS) attack is one of the dangerous attacks that affect servers, i.e. malicious users use a large number of proxy devices to generate fake requests to the server. It makes server as ineffective, i.e. server is unable to attend requests of real users or got hanging problem due to the high overhead. Several steps have been taken to protect server security which include limiting the number of open ports and exposed services. Here, security configurability needs to be a primary issue to solve, i.e. when an IoT system is being developed with allowing systems to be updated remotely with proper encryption and validation of update files. Hence, a large amount of data (called big data: in 2005 Roger Mougalas from O’Reilly coined this term first time [11, 12]) produced by IoT devices (from everyone), which is a challenge for all software testing Services Provider (SP) to provide enough security to all system/IoT devices. With IoT security analytics, remote monitoring systems and automated patching procedures, we can secure IoT systems. However, security challenges in IoT (developing) systems will be grown in near future (because use of IoT and building of IoT are in initial stage only). It will increase complexity in solving any issue/to create new/updating existing security countermeasures to protect IoT technologies. Note that IoT security issues can be available with different natures and occur at different levels. So, every organization/firm/company in the IoT sector
A Review on Security and Privacy Issues in Internet of Things
501
must ensure the security, privacy and experience of users so that we can really take advantage of the benefits of the Internet of Things. Hence, this section discusses several popular issues raised with Internet of Things. Also, this section tries to provide (maximum) countermeasures and possible solutions to each/respective issues. Now, next section will discuss several challenges noticed/rectified in IoTs (or Internet-Connected Things).
5 Challenges in Internet of Things Internet of Things is a very complicated heterogeneous network platform. It is connected and being used in several beneficial applications like smart home, smart metering, smart farming, smart transportation, etc. Some other cloud computing challenges are architecture, energy efficiency, security, protocols, quality of service and standardization of frequency bands and protocols. Moreover this, various security challenges have been discussed by Misra et al. in [13]. Note that as an interconnection of highly heterogeneous networked entities (IoT devices), it follows a number of communication patterns: Human-To-Human (H2H), Human-To-Thing (H2T), Thing-To-Thing (T2T) or Thing-To-Things (T2Ts) [4]. Providing efficient services among such integration (of devices and human being) is a challenging task. In last, battery life extension and lightweight computation are the major limitations of IoT devices, so to make efficient IoT devices with less consumption of energy is also a challenging task. In last, several types of attacks like passive, man in middle, eavesdropping, active, gathering, etc. with possible solutions have been discussed in [7]. Now, next section will conclude this work in brief.
6 Conclusion Today, we are living in an era of smart world, where all devices are connected together through Internet. These devices are helping human being and making their life easier. In summary, we can say that these Internet-Connected Things (ICT) devices or Internet of Things (IoTs) devices (in integration or connecting together) have made human life easier, better and safer with introducing several applications like smart homes, smart parking, smart transportation, smart cities, smart farming, smart grid, etc. But, using such (smart or Internet connected) devices in our daily life, people are very much concerned about ‘their personal or sensitive information’. So a question raised here: ‘Is it (personal information) safe with these devices?’ When things (i.e. these Internet-connected smart devices) react to environment, data will be captured and transformed into valuable insights, which can be shared/utilized in various applications/domains, i.e. ranging from automated home appliances, smart grids (including high-resolution assets), in increasing production of a firm, to increase growth of economy of a nation with product management, etc. Also, manufacturers
502
A. K. Tyagi et al.
of such devices can collect data generated from these devices for their future use, for example, washing machine’s manufacturers/companies collect status of machine to improve their future product (for targeting new customers in future). Hence, in this paper, we have discussed some challenges, security and privacy issues which are needed to be overcome and require attention form research community. In near future, we can focus such issues to do our future research work (i.e. to enhancing the present stance of IoT by incorporating security and privacy into its current design and implementation).
References 1. TELEFÓNICA I+D: Internet of Things + Internet of Services (2008). 2. Tyagi, A. K., & Shamila, M. (2019). Spy in the crowd: How user’s privacy is getting affected with the integration of internet of thing’s devices. In SUSCOM-2019: International Conference on Sustainable Computing in Science, Technology & Management (SUSCOM-2019). Amity University: Rajasthan, India (26–28 February 2019). 3. Vermesan, O., Friess, P., Guillemin, P., et al. (2011). Internet of things strategic research road map. Internet of Things: Global Technological and Societal Trends, 1, 9–52. 4. Tyagi, A. K., Anuradha, N., Rekha, G., Sharma, S., & Sreenath N. (2019). How a user will look at the connection of internet of things devices?: A smarter look of smarter environment. In ICACSE: 2019 2nd International Conference on Advanced Computing and Software Engineering, KNIT Sultanpur, 2019, India (8–9 February 2019). 5. Kocovic, P., Behringer, R., Ramachandran, M., & Mihajlovic, R. (2017). Emerging trends and applications of the internet of things. IGI Global Book. 6. https://www.cso.com.au/article/575407/internet-things-iot-threats-countermeasures/. 7. Tyagi, A. K., Rekha, G., & Sreenath, N. (2019). Beyond the hype—internet of things concepts, security and privacy concerns. In Proceeding of Springer/International Conference on Emerging Trends in Engineering, College of Engineering (ICETE), Hyderabad, Telangana, India: Osmania University (22–23 March 2019). 8. Moura, J., & Serrão, C. (2016). Security and privacy issues of big data. 9. Veerendra, G. G. Hacking internet of things (IoT), a case study on DTH vulnerabilities, SecPod Technologies. 10. https://www.senetas.com/network-traffic-flow-analysis-protection-enhancesencryption/. 11. https://datafloq.com/read/big-data-history/239. 12. Gandomi, A., & Haider, M. (2015). Beyond the hype: Big data concepts, methods, and analytics. International Journal of Information Management, 35(2), 137–144. 13. Misra, S., et al. (2017). Security challenges and approaches in internet of things. Springer Briefs in Electrical and Computer Engineering. https://doi.org/10.1007/978-3-319-44230-3_2.
Study of Information Retrieval and Machine Learning-Based Software Bug Localization Models Tamanna and Om Prakash Sangwan
Abstract Software bug localization (SBL) is a process of finding out the location of bug that causes the failure of some functionality in the application. There are many different methods of performing SBL like analysing of execution traces, information retrieval and manual debugging. Information retrieval (IR) based models works as same as simple search query model in which bug report is taken as query. In this paper, we perform an empirical study for verifying the effectiveness of VSM. Based on TFIDF modelling, the results are experimented on four datasets and evaluated with TOPK, MAP and MRR metrics. In addition to this, review of existing machine learning and deep learning-based SBL models are also presented because of their effective power and improved results in localization accuracy. Keywords Vector space model · GLOVE · Word embedding · Software bug localization (SBL) etc.
1 Introduction SBL is one of the crucial tasks for software developers searching for a particular instance, which cause failure is called debugging or software bug localization. Exponential increase in open-source software projects and code result in the need of software developers in this field also. Traditional debugging methods were manual and time consuming. Therefore, automate debugging come into the existence for making the localization process faster and leads in better utilization of resources. Different state-of-the-art localization models are proposed but till date, no one is robust or have one for all model is built. Active research is going on in this domain of IR-based SBL in association with soft computing techniques like machine learning, Tamanna (B) · O. P. Sangwan Department of Computer Science and Engineering, Guru Jambheshwar University of Science and Technology, Hisar, Haryana, India e-mail: [email protected] O. P. Sangwan e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_47
503
504
Tamanna and O. P. Sangwan
deep learning. IR-based technique works by taking bug report as query and source code as corpus. We accomplished an empirical study on four case studies [MAHOUT, LUCENE, OPEN JPA, TIKA] using IR-based TFIDF modelling and also conducted a detailed review on learning to rank and deep learning-based SBL models for future work.
2 Software Bug Localization Using IR Information retrieval is a technique of finding out the relevant information from a bunch of datasets (may be structured or unstructured) called corpus corresponding to a particular query. Data may be in text, images or any other multimedia form. Many real-time scenarios employed IR techniques for successful processing of applications like browser search, recommendation system. Software bug localization using IR tried to exploit the lexical similarity between bug report and source code files. Bug report is taken as query while source code is taken as corpus and then search for corresponding class or method which causes that bug. Although other repository attributes like call graphs and stack traces was also employed for increasing the accuracy of localization techniques. Source code is composed of structured data while bug reports are written in natural languages, which sometimes may be semi-structured or unstructured. This is one of the major setbacks in robustness and performance of bug localization models known as lexical gap. Although research is started in exploring the potential of intelligent computational techniques like machine learning, deep learning and evolutionary algorithms in association with IR techniques.
3 TFIDF-Based Cosine Similarity Source code files and bug reports are written in English language. So, fundamental idea is to convert the text/words into machine-readable format called vector of numbers. These vectors are further used in vector space models for computing the similarity between bug instance reported in bug report and source code. We experimented different methods of computing the cosine similarity like NLTK, Genism library and finally got the best results with Sklearn-based TFIDF vectorizer using SciKit learn library. Figure 1 shows the flow diagram of our approach. Source code files consists of classes, and every class is treated as document. Preprocessing step consists of tokenization of sentences finally after TFIDF modelling results are retrieved and performance is evaluated with the help of efficacy measures.
Study of Information Retrieval and Machine Learning …
Source Code Files
505
TF-IDF modelling
Preprocessing
Rel eva nt Do cs
Cosine SimilarBug Report
Preprocessing
TF-IDF modelling
Fig. 1 Flow diagram of vector space model
4 Experimental Setup 4.1 Case Studies Dataset consists of source code corpus and bug reports is the same as used by Lobster model and taken from same study [1]. Table 1 describes all the details of four case studies with software version, number of bug reports taken as query and classes present in every corpus. JabRef is a reference manager, Lucene is widely used information retrieval library, Mahout is scalable machine learning library and Tika is structure data detector and extractor toolkit classes are taken as documents and it may be possible that one bug report query may correspond to more than one buggy classes. Experimental study is carried out in Python language on Anaconda framework in Spyder 3.3.1 IDE and system is configured with Intel core i5 8th generation. Table 1 explained all the details of datasets. Table 1 Description of case studies
System
Version
# of bug reports
# of classes
LUCENE
4.0
35
4317
MAHOUT
0.8
30
3260
OPEN JPA
2.2.0
18
4955
TIKA
1.3
23
582
506
Tamanna and O. P. Sangwan
4.2 Performance Metrics Almost, all the information retrieval-based models used these three metrics for performance evaluation, therefore, we also use these metrics as efficacy measures in our work. 1. TOP@K: Top@K evaluation metric is used for measurement of top K relevant documents in the search. Here, K represents rank of documents in the search. Smaller the relevant rank of searched document corresponding to a query better the search. In this study, we took five values of K from 5, 10, 20, 50 and 100. Reason for taking the values up to 100 is because we are working on basic technique and loosen our criteria for ranking analysis. 2. Mean Average Precision (MAP): MAP is used for finding the average precision across the relevant document corresponding to query. MAP and MRR computing equation are taken from [1]. MAP is used when a corresponding query have more than one relevant documents. MAP(Q) =
1 |Q| ∀q∈Q
1 precision(rank(r )) Rq ∀r ∈Rq
3. Mean Reciprocal Rank (MRR): MRR is used for measuring the quality of relevancy. How early a document is retrieved in the search. More the value better the MRR. MRR(Q) =
1 effectiveness(q) |Q| ∀q∈Q
5 Results and Discussion All the four case studies are Java-based projects, which vary in source code and bug reports. As explained above, three performance metrics are used as efficacy measures. Table 2 shows values of MAP and MRR for all the four case studies according to which Mahout and Tika have comparable results of MAP while MRR is the same for Lucene and OpenJPA. Table 2 MAP and MRR values for case studies Case Study
LUCENE
MAHOUT
OPEN JPA
TIKA
MAP MRR
0.188
0.266
0.113
0.206
0.244
0.130
0.260
0.136
Study of Information Retrieval and Machine Learning …
507
TIKA case study shows the best results among all the four after that Lucene than Open JPA and at last Mahout. Tika and Lucene gives around 70–75% of relevant documents in top 10 rankings. Table 3 shows number of queries and corresponding buggy classes. With the help of Fig. 2, the distribution of Top@K ranked files are shown. It is observed that VSM model shows maximum accuracy of 70% in the top 10 and lowest is of 45% in these four case studies. While some of the bug reports with more than one buggy files are hard to locate. It was also analysed that lengthy Table 3 Top@k values of case studies Dataset
#of queries
#of buggy classes
Top@5
Top®10
Top@20
Top@50
Top@100
TIKA
23
40
12
4
8
4
2
OPEN JPA
18
47
4
7
10
8
6
LUCENE
35
90
23
12
7
11
8
MAHOUT
30
50
7
5
8
11
4
Fig. 2 Distribution of Top@k documents
508
Tamanna and O. P. Sangwan
documents (classes) are more prone to bugs. Therefore, we reviewed the machine learning techniques-based SBL models in next section for improving the localization accuracy.
6 Related Work At the time of manual debugging, developers used their intuition and experience for the localization of bugs. This method was slow and not efficient in terms of accuracy while automated techniques simulate this valuable information present in source code, bug reports and other past repositories for helping developers. Information retrieval-based models are only utilizing the similarity information between bug reports and source code but is not able to make use of another wealth of information present in old bug repositories. But nowadays, this information is utilized by learning and training of IR models for ranking purposes [2]. In this paper, we review existing SBL models which utilizes both text mining and machine learning approaches. ML is a domain which allows computers to make smart decisions based on previous learning may be supervised if labelled, unsupervised for unlabeled and reinforcement learning. Bug reports and source code are mostly written in English language while both of them are of different nature unstructured bug reports and structured source code [3]. There is no such learning model present which accepts strings as input, therefore, every input is transformed into vector representation (TFIDF, BOW, LDA, etc.) before feeding it to the ML models. An improved version of support vector machine called sequential minimal optimization (SMO) was employed [4] and with the help of WEKA, tool classifier is trained on the basis of past fixed bugs 98% precision and recall was achieved on UI component of Eclipse JDT project. Learning to rank [5] was used for narrowing down the source code search corresponding to bug report. Adaptive ranking approach was employed by utilizing the repository information methods of source code, API descriptions, code change history and old bug repositories are used as features. Every source code file was ranked with a unique value computed as weight obtained from learning to rank model trained on above-mentioned features. learning to rank (LTR) IR shows outperforming results on six Java-based projects in comparison with state-of–the-art IR models. API description is used to bridge the gap between bug reports and source code. HyLoc Model [6] was proposed for reducing the lexical mismatch between BR and SC. Deep NN model was used as relevancy estimator and compute the weights based on bug fixing history, textual similarity and DNN-based relevancy. Promising results was obtained in comparison with ML-based NB, IR-based bug locator and hybrid-based LR models. This model uses six DNN models, which increases the cost and complex weight adjustments. CNN-based model was proposed by analysing this problem as classification one instead of IR-based problem. It was also observed that DNN-based model needs more time overhead for adjustments of weights than
Study of Information Retrieval and Machine Learning …
509
CNN. Deep locator model [7] based on enhanced CNN was used by both new TFIDF variant and Word2vec technique. Abstract syntax tree used both TFIDF variant and Word2vec technique. Abstract syntax trees was used for parsing of source code, word embedding for similarities and CNN for obtaining the learning weights. Bug summary is utilized as feature set in association with multiclass labelling algorithm like SVM for bug localization. Source code files were used for token matching, bug reports for similarity-based component and previously fixed bug reports as classification component. Final ranking was evaluated on combined score obtained from all the three components. SBL model [8] was formed with enhanced CNN and word embedding also shows exponential increase in SBL accuracy. CNN forest [9] in association with ensemble of random forest have excellent performance. Power of CNN forest with ensemble of random forest was explored and achieved in the task of semantic parsing and structural information was extracted from word embedding. Cascading of random forest increase the complexity of model but CNN forest-based model outperforms NP-CNN, LR + WE, DNNLOC and bug locator. Most of the learning techniques whether LTR or learning by feature extraction are based on source code files and ignore other valuable sources of information. Code changes are one of the hidden treasures in bug localization because it works for both location as well as for the cause of bug. By utilizing the incremental behaviour of software development, code change history was used for feature learning and model and [10] was proposed and verified as a dataset shows promising results in comparison with previous state-of-the-art approaches (LOCUS, BLUIR and LS-CNN). Feature learning was employed by LSTM model with bug report as token representation and source code changes as syntactic gap. Finally, LTR technique named Rank NET was employed for finding out the final relevance score. Another model which utilizes the bug fixing history most frequent words of bug reports present in source code. It is also observed that longer source code files are more prone to error. STMLOCATOR [11] utilizes the supervised topic modelling named LLDA, which shows promising results in comparison with old state-of-the-art models.
7 Conclusion and Future Work In this paper, we accomplished an empirical study on four different datasets of Javabased projects, which contains 106 bug reports and 13114 Classes. Most of the SBL models used TFIDF as their basic IR technique and which motivated us to choose the same with cosine similarity matrices for our experimental study. Although results was not so satisfactory and therefore, we also conducted a review of MLbased SBL models. SBL uses two types of ML techniques one is LTR based which uses hand-coded features for training (like query-source code pair) and another is DL-based models which automatically extract feature set. It is analysed that NLP compliments deep learning models very efficiently, which open up a new line of research in different applications. IR-based models only utilizes the power of lexical similarity while DL uses semantic similarity, which helps in making context oriented
510
Tamanna and O. P. Sangwan
decisions. DL-based SBL uses word embedding-based models like Word2vec, Glove and FAST are used in association with deep learning techniques like convolutional neural network, recurrent neural network and deep neural networks. Only few DLbased SBL models were proposed till date and lots of dimensions are unexplored in this domain for future work. Acknowledgements This work is sponsored by the National Project Implementation Unit (NPIU) under TEQIP-III of Guru Jambheshwar University of Science and Technology, Hisar.
References 1. Moreno, L., Treadway, J. J., Marcus, A., & Shen, W. (2014). On the use of stack traces to improve text retrieval-based bug localization. In 2014 IEEE International Conference on Software Maintenance and Evolution (pp. 151–160). IEEE. 2. Ye, X., Bunescu, R., & Liu, C. (2014). Learning to rank relevant files for bug reports using domain knowledge. In Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering (pp. 689–699). ACM. 3. Gharibi, R., Rasekh, A. H., & Sadreddini, M. H. Locating relevant source files for bug reports using textual analysis. (2017). In 2017 International Symposium on Computer Science and Software Engineering Conference (CSSE) (pp. 67–72). IEEE. 4. Moin, A. H., & Khansari, M. (2010). Bug localization using revision log analysis and open bug repository text categorization. In IFIP International Conference on Open Source Systems (pp. 188–199). Berlin, Heidelberg: Springer. 5. Saha, R. K., Lease, M., Khurshid, S., & Perry, D. E. (2013). Improving bug localization using structured information retrieval. In 2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE) (pp. 345–355). IEEE. 6. Lam, A. N., Nguyen, A. T., Nguyen, H. A., & Nguyen, T. N. (2015). Combining deep learning with information retrieval to localize buggy files for bug reports (n). In 2015 30th IEEE/ACM International Conference on Automated Software Engineering (ASE) (pp. 476–481). IEEE. 7. Xiao, Y., Keung, J., Mi, Q., & Bennin, K. E. (2017). Improving bug localization with an enhanced convolutional neural network. In 2017 24th Asia-Pacific Software Engineering Conference (APSEC) (pp. 338–347). IEEE. 8. Xiao, Y., Keung, J., Bennin, K. E., & Mi, Q. (2019). Improving bug localization with word embedding and enhanced convolutional neural networks. Information and Software Technology, 105, 17–29. 9. Xiao, Y., Keung, J., Mi, Q., & Bennin, K. E. (2018). Bug localization with semantic and structural features using convolutional neural network and cascade forest. In Proceedings of the 22nd International Conference on Evaluation and Assessment in Software Engineering 2018 (pp. 101–111). ACM. 10. Loyola, P., Gajananan, K., & Satoh, F. (2018). Bug localization by learning to rank and represent bug inducing changes. In Proceedings of the 27th ACM International Conference on Information and Knowledge Management (pp. 657–665). ACM. 11. Wang, Y., Yao, Y., Tong, H., Huo, X., Li, M., Xu, F., & Lu, J. (2018). Bug localization via supervised topic modeling. In 2018 IEEE International Conference on Data Mining (ICDM) (pp. 607–616). IEEE.
A Review on Diverse Applications of Case-Based Reasoning Madhu Sharma and Cmaune Sharma
Abstract No technological area in the world has been spared from the successful and loud expressions of Artificial Intelligence. With the high-speed development in the Artificial Intelligence, one of its derivatives, the Case-Based Reasoning has also tried to match its pace on the accelerating pathway of the technological world. The Case-Based Reasoning, has marked its existence in the field of decision-making in diverse areas, with a standing success rate. Case based reasoning (CBR) is the technique, which involves the process of solving new problems based on the solutions of similar past problems, i.e., it works on the basis of previously experienced and stored problem-solution case set. Retrieve, Reuse, Revise, and Retain are the four key steps involved in the CBR process to solve or predict an optimal solution for new problems or cases. Here, in this paper, the Technical Platform of Case-Based Reasoning has been explored to provide an insight into the technology. Then, a review on its application in different areas like medical diagnosis, industrial applications, e-learning systems, judicial system has been reviewed to find the influence of the technology on the entire technological world. The future direction and the merger of the case-based reasoning for its enhancement in other areas is also suggested. Keywords Artificial intelligence · Case-based reasoning · Retrieve · Reuse · Revise · Retain · Prediction
1 Introduction Case based reasoning (CBR) is a computing technique with the capability of solving or providing solution of novice problems on the basis of the solutions of similar problems faced in past. For example, a bike mechanic can fix an issue related to M. Sharma (B) St. Xavier’s College, Jaipur, Rajasthan, India e-mail: [email protected] C. Sharma Swami Keshvanand Institute of Technology, Management and Gramothan, Jaipur, Rajasthan, India e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_48
511
512
M. Sharma and C. Sharma
nonfunctioning of bike as per the similar case dealt in past. Here, in CBR, all issues are considered as cases, which as defined by Kolodner and Leake as a knowledgebased representation of experiences and problem solution sets created at the moment [1–3]. A case thus involves two parts: one is the problem and other is its solution or the explanation or process of achieving the solution. Hence, CBR is a KnowledgeBased Reasoning technique, which helps in solving issues or problems, using already stored problem-solution cases in the case base. In case of variation of new problem, the existing cases can be revised and adapted to make it fit according to the new problem case and then it is stored in case base, for future references to solve similar problems. The CBR concept is not only an influential method for computer reasoning, but also plays a key reference and construct while dealing with day-to-day issues. This interpretation is related to prototype theory, which is most profoundly explored in cognitive science. CBR is one of the most effective and practical Artificial Intelligence technologies of the current era. With this, various commercial and industrial automated applications can be developed. The application areas of CBR include the automated helpdesks, diagnostic systems, tutoring system, designing, legal reasoning, etc. [4–6]. Linkage with learning i an important feature. The dynamic strength behind CBR methods is the machine learning, and thus, CBR is also regarded as a subfield of machine learning. Section 2 of the paper states the concept of CBR, Sect. 3 presents the literature review, and Sect. 4 concludes the paper.
2 CBR Framework In general, CBR framework encompasses four processes, viz., Retrieve, Reuse, Revise, and Retain [1–4]. These steps can be briefly stated as: • Retrieve––This step includes the retrieval of the most similar case. When a new problem is faced. The case which is most nearest to the existing cases in case base, is retrieved. The algorithm like nearest-neighbor algorithm assists in finding and retrieving such cases. The cases which are retrieved encompass the problem definition, its solution, or process of solving that problem. • Reuse––This step includes mapping of the available information with the new problem. It involves the adaptation of the solution to make it suitable for new case. • Revise––It includes the revision of the proposed solution for the new case, to make it fit for the new case. The testing in simulated environment is performed before revision of the case. • Retain––After testing and revision, this step includes the storage of the new problem-solution case in memory for future reference. The CBR cycle has been depicted through Fig. 1. Case-Based Reasoning is advantageous and is simple to use as: • It directly addresses the problems or issues without any exclusive model, and retrieves simply the similar cases to find a solution.
A Review on Diverse Applications of Case-Based Reasoning
513
Fig. 1 CBR cycle
• The existing cases are self-suffice to begin the process of finding a solution. But, the identification of the prime feature is the key to the techniques. • A rich case base and hence voluminous data. Management is needed, which can be maintained through efficient database management techniques. • Maintenance of CBR systems is easier, as it mainly includes the knowledge gain in terms of cases only. At the first preview, CBR seems to be analogous to the rule-induction algorithms of machine learning, but there is an advantageous leading difference during generalization of the cases. In rule-induction algorithm, an eager generalization is performed, i.e., it is performed even the target problem is not recognized. But, in case of CBR, delayed generalization, i.e., a strategy of indolent generalization is followed, until the testing and adaptation phase of the cases. Due to eager generalization, the problem with the rule-induction algorithm is in predicting the diverse directions and confusion arises in the selection of direction to be followed to achieve the promising results [5].
3 The Literature Review CBR has been acting with promising outputs in a broad range of issues, since so long. Numerous researchers and academicians has done a great amount of work dealing with the issues and varied techniques in CBR. Few of the extracts of the CBR applications and the relevant research work are given here:
514
M. Sharma and C. Sharma
As stated by Sartoria et al. [7] in their paper, a CBR-based bankruptcy prediction model and an innovative revised algorithms to improve its accuracy has been proposed. It was based on the fact that CBR could be useful to the cluster of organizations as per the opportune similarity metrics, and could provide proper actions. Wyner et al. [8] introduced a system similar to the base of the general law and order system. The system facilitates the identification of legal arguments, key properties, and relationships in legal cases. It is also suggested as a tool to identify relevant cases in the case base. Here, Context-Free Grammar was utilized as the tool to find the relevant arguments, set of concepts, and categories, along with the core of Natural Language Processing were suggested to resolve complicated cases and the factors with the role of the legal parties. Shahina et al. [9] stated that there is promising involvement of CBR in health and medical sciences. A survey and hence an investigative study in current areas of medicinial sciences was conducted to recognize the type of uses and role of CBR and the various application trends in it. It is found that more than fifty percent of the current CBR systems are handling multiple tasks at different fronts and are grealty used in the field. Davies et al. [10] in their paper proposed case based learning (CBL) as a type of inquiry-based learning. Here, the evidence relating to the effectiveness of case based learning (CBL) as a means of achieving defined learning outcomes in health professional prequalification training programs was explored, analyzed, and synthesized. It was concluded that the students enjoy CBL and think that it enhances their learning, whereas, teachers enjoy CBL, partly because it engages, and is perceived to motivate students. Derek et al. [11] introduced an innovative system named as GhostWriter-2.0 that can assist in the process of writing reviews. The system provides the ability to write reviews for new products on the basis of extraction of the knowledge and reviews given by the different users about the existing products on Amazon’s information servers. Here, the CBR approach acts as an assistant to the author with the reuse of the existing reviews and gaining topic suggestions for new review. Kim et al. [12] in their paper proposed the Bayesian case model (BCM), a general framework for Bayesian case based reasoning (CBR) and prototype classification and clustering. It was verified that, there was noticeable upgradation in the understanding level of users with respect to their work, after implementing this CBR model. Abed et al. [13] proposed the merger of Genetic Algorithm with CBR and introduced it as GCBR. This amalgamtion of the techniques is proposed to develop a mobile phone fault diagnosis application. It was described that the CBR provides existing cases similar to the new fault, whereas the geentic algorithm combines and revises them to conlcude the adaptation phase and gain the solution to the new fault. The proposed merger was proved to detect faults with an average accuracy of mearly 98%. David et al. [14] suggested an effective role of machine learning to solve issues of geosciences and remote sensing. Machine Learning is said to be originated from cognitive science, along with CBR.
A Review on Diverse Applications of Case-Based Reasoning
515
Jia et al. [15] in their paper integrated the techniques of natural language processing as a case retrieval agent for CBR. Here, a framework for a case-based reasoning system that includes a filtering mechanism and a semantic-based case retrieval agent was introduced. Also, the case retrieval agent integrated short-text semantic similarity (STSS), with the recognition of textual entailment. The proposal was evaluated through a case study of an online bookstore. The proposed approach outperformed a reference system using string similarity and Amazon as e-commerce system. Homem et al. [16], in this paper, proposed a Humanoid Robot for Soccer to model, retrieve, and reuse cases by means of spatial relations. The modeling of cases encompassed the finding the relations between the objects with the utility of qualitative distance and orientation calculus. A novice retrieval paradigm based on the Conceptual Neighborhood Diagram, for the purpose of calculating the similarity score betwen existing and new case and a reuse algorithm based on qualitative positional data was also proposed. This suggestion was implemented using simulated scenario and then on real ones. It was proved to be more faster in obtaining goals, as compared with the quantitative model and Euclidean distance as the nearest neigbor algorithm for case rerieval. Meteb et al. [17] proposed an algorithm for multi-robot working in games like controlling of complex soccer scenarios between the goalkeeper and the opponent, while scoring goals. The integration of neural networks with CBR to learn adaptation rules for reducing the complexity of hand-coded rules and improving the overall controller performance was introduced. In this work, the average retrieval accuracy was found to be 70% and the average performance accuracy as seventy seven percent. Gordon et al. [18] presented initial work that has been done in the cognitive robotic architecture. The work was aimed to propose mechanism that could be useful for Human–Robot Interaction scenario, especially relevant to the decision-making with respect to the acceptance or rejection. Eduardo et al. [19] gave a study of why and how case based reasoning (CBR) can be used in the long term to help elderly people living alone in a Smart Home. The experiment work included the analysis of the effect of different temporal algorithms in common risk scenarios like waking up during the night, falls, obstacles, or falls in case of unconsciousness. Satisfactory results were obtained. Michael [20] presented a system to help a robot to integrate itself with a human sports team. An agent-based algorithm was introduced, which allows a robot to estimate its trustworthiness and respond after adapting its behavior according to the relavant sports activities. With this approach, the behviour of the team mates was recognized by the robot using case-based reasoning. Syed et al. [21] introduced a CBRIKL (CBR for Identifying Knowledge Leader), a system an tact to find the leader of specific area within the online community, on the basis of the profile developed through user’s social participation and involvement, including the feedbacks from the social community. The proposed system consistently works to make leader profiles on the basis of the identified knowledge area and issues assigned to them, as per their expertise. This strategy ultimately assists in inferring the leader. The system is proposed to be applicable to other similar areas too.
516
M. Sharma and C. Sharma
4 Conclusion This paper reviews the background literature which provides summarized information about the research already done and the related applications which have been built to serve a variety of industries and work areas. The idea of CBR has spread to various application areas in academia as well as research. The CBR systems described here show the efficiency of the Case-Based Reasoning and its approach on almost every field. This review also motivates the development of the CBR model for the purpose of its implementation in other contemporary technologies like robotics and machine learning.
References 1. Chattopadhyay, R. (2004). Plasma nitriding, advanced thermally assisted surface engineering processes (pp. 90–94). Berlin: Springer. 2. Bergmann, R., et al. (2003). Developing industrial case-based reasoning applications, the INERECA methodology (2nd edn., LNAI pp. 11–34). 3. Salem, A.-B. M. (2007). Based reasoning technology for medical diagnosis. World Academy of Science, Engineering and Technology 31. 4. Cuthbert, L. G., Ryan, D., Tokarchuk, L., Bigham, J., & Bodanese, E. (2001). Using intelligent agents to manage resource in 3G Networks. Journal of IBTE, 2(4), 1–6. 5. Agnar, A., & Enric, P. (1994). Case-based reasoning: Foundational issues, methodological variations, and system approaches. AI Communications, 7(1), 39–59. 6. Caulier, P., & Houriez, B. (1995). A Case-based reasoning approach in network traffic control. In Proceeding of the IEEE International Conference on Systems, Man and Cybernetics, 1995. Intelligent Systems for the 21st Century (Vol. 2, pp. 1430–1435). 7. Sartoria, F., Mazzucchellib, A., & Di Gregorio, A. (2016). Bankruptcy forecasting using casebased reasoning: The CRePERIE approach. Expert Systems with Applications, 64, 400–411. 8. Wyner, A., Mochales-Palau, R., Moens, M. F., & Milward, D. (2010). Approaches to text mining arguments from legal cases. In: E. Francesconi, S. Montemagni, W. Peters & D. Tiscornia (Eds.), Semantic Processing of Legal Texts. Lecture Notes in Computer Science (Vol. 6036). Berlin, Heidelberg: Springer. 9. Begum, S., Ahmed, M. U., Funk, P., Xiong, N., & Folke, M. (2011). IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and Reviews) 41(4), 421–434. 10. Davies, D., Ekeocha, S., Kidd, J. M., MacDougall, C., Matthews, P., Purkis, J., & Clay, D. (2012). The effectiveness of case-based learning in health professional education. JournalMedical Teacher, 34(6). 11. Bridge, D., & Healy, P. (2012). The GhostWriter-2.0 case-based Reasoning system for making content suggestions to the authors of product reviews. Knowledge-Based Systems, Elsevier, 29, 93–103. 12. Kim, B., Rudin, C., & Shah, J. A. (2014). The Bayesian case model: A generative approach for case-based reasoning and prototype classification. Advances in Neural Information Processing Systems, 27. 13. Mohammed, M. A.., Ghani, M. K. A., et al. (2018). Genetic case-based reasoning for improved mobile phone faults diagnosis. Computers & Electrical Engineering Elsevier, 71, 212–222. 14. David, J., Larya, A., et al. (2016). Machine learning in geosciences and remote sensing. Geoscience Frontiers, Elsevier, 7(1), 3–10. 15. Jia, W. C., et al. (2016). Integrating a semantic-based retrieval agent into case-based reasoning systems: A case study of an online bookstore. Computers in Industry Journal, Elsevier, 78, 29–42.
A Review on Diverse Applications of Case-Based Reasoning
517
16. Homem, T. P. D. et al. (2016). Qualitative case-based reasoning for humanoid robot soccer: A new retrieval and reuse algorithm. In: A. Goel, M. Díaz-Agudo & T. Roth-Berghofer (Eds.), Case-Based Reasoning Research and Development. ICCBR Lecture Notes in Computer Science (Vol. 69, pp. 170–185). Cham: Springer, 17. Altaf, M. M., Elbagoury, B. M., Alraddady, F., & Roushdy, M. (2016). Extended case-based behavior control for multi-humanoid robots. International Journal of Humanoid Robotics, 13(02), 1550035. 18. Briggs, G., Scheutz, M. (2015). Sorry, I can’t do that: developing mechanisms to appropriately reject directives in human-robot interactions, Artificial Intelligence for Human-Robot Interaction, Papers from AAAI, Fall Symposium 19. Lupiani, E., Juarez, Jose M., Palma, Jose, & Marin, Roque. (2017). Monitoring elderly people at home with temporal Case-Based Reasoning. Knowledge-Based Systems, ScienceDirect, Elsevier, 134(15), 116–134. 20. Floyd, M. W., Drinkwater, M., & Aha, D. W. (2015). Trust-guided behavior adaptation using case-based reasoning. In Proceedings of the Twenty-Fourth International Joint Conference on AI. 21. Syed, M., et al. (2018). Case-based reasoning for identifying knowledge leader within online community. Expert Systems with Applications, ScienceDirect, Elsevier, 97, 244–252.
Petri Net Modeling and Analysis of SMART ATM Madhu Sharma and Cmaune Sharma
Abstract Automated Teller Machines being an easily available and accessible system for cash withdrawal and deposition for the bank’s customer is prone to different types of attacks and robbery. Thus, many upgradations are made and few are in process of implementations. In this paper, structural modeling of a novice system, viz., Safe Mode Alarm Reporting Technique (SMART) for ATM has been done through its Petri net modeling. Here, the system validation and evaluation has been done through the Petri net modeling of the SMART ATM Communication Process Model, which is then tested and analyzed through Token movement analysis for reachability, liveness, and boundedness property test. Keywords ATM · Petri net · Token · Safe mode alarm reporting technique · Transition · Marking
1 Introduction An ATM machine being a rich repository of cash money is susceptible to numerous types of physical, logical, or computing attacks [1–3]. Duress cash withdrawal is one of such attacks or robbery, where cash is withdrawn by the customers against their will, due to an indirect gunpoint on them. A Safe Mode Alarm Reporting technique for ATM was introduced, with a secret alarm, to report the robbery to security personnel and bank’s official. The system also proposed an emergency GPS-enabled cash notes and its tracking mechanism [4–9]. To achieve the success of any research study, model development is required, which is needed to justify and validate the research questions and hence the proposed system. Here, in this paper, the structural modeling of the SMART system has been proposed. Here, the communication flow among M. Sharma (B) St. Xavier’s College, Jaipur, Rajasthan, India e-mail: [email protected] C. Sharma B.Tech, SKIT Engineering College, Jaipur, Rajasthan, India e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_49
519
520
M. Sharma and C. Sharma
different components of the system is demonstrated through a Petri net [10], which is designed using Workflow Petri Net Designer (WoPeD) software. The designed structural model is then tested and analyzed through Token movement analysis for reachability, liveness, and boundedness property test [11, 12]. Section 2 of this paper presents a brief introduction of the Petri net model and the relevant concepts; Sect. 3 presents the Petri net model designing aspects. Results and discussion are presented in Sects. 4 and 5 concludes the discussion.
2 Petri net Model To firm up the requirement of the SMART ATM [6] and to further propagate the design process, Modeling of the system has been done to present the working mechanism of the system. As per the existing literature, Petri Nets (PNs) are considered as one of the influential modeling formalism in computing, system engineering, and many more areas. PN in association with mathematical theory allows the graphical interpretation of a dynamic system and its mechanism. The theoretical facet of PNs facilitates modeling and analysis of system actions, whereas, the graphical representation of PNs depicts the state changes of the modeled system. PNs have been proven to be a powerful modeling and analysis tool for various types of dynamic systems [11, 12, 15, 16]. A Petri net, “N” is a bipartite, weighted, directed multigraph, and mathematically represented by a four-tuple N = (P,T, I,O) [13, 14] where Node definition: P = {p1 , p2 , …, pi , …, pn } is a finite set of places, T = {t 1 , t 2 , …, t j , …, t m } is a finite set of transitions, P ∩ T = Ø and P ∪ T = Ø Arc Definition: I: (P × T ) → No+ O: (P × T ) → No+ No+ = {0, 1, 2, …} The node definition says that the set of places and the set of transitions are disjoint (having no common elements) and there exists at least one node (x ∈ P ∪ T ) in the net. The set of arcs (F) defines two types of functions: input function (I) and output function (O). These input–output functions describe flow of tokens from places to transitions and from transitions to places. Note that F ⊆ (P × T ) ∪ (T × P). Again, |P| = n and |T| = m, meaning an ordinary Petri net has n places and m transitions. A sample Petri net has been depicted in Fig. 1 [13, 14]. Another way of defining Petri net is [9]: PN as a five-tuple N = (P, T, I, O, M 0 ), where
Petri Net Modeling and Analysis of SMART ATM
521
Fig. 1 Sample Petri net
P = {p1 , p2 , …, pm } is a finite set of places. T = {t 1 , t 2 , …, t n } is a finite set of transitions. I: T × P → N is an input matrix that specifies directed arcs from places to transitions; its entry I(t i , pj ) represents the number of arcs connecting place pj to transition t i . O: T × P → N is an output matrix that specifies directed arcs from transitions to places; its entry O(t i , pj ) represents the number of arcs connecting transition t i to place pj . M 0 : P → N is the initial marking. A marking in a Petri net is an assignment of tokens to the places of a Petri net. Tokens reside in the places of a Petri net. The number and position of tokens may change during the execution of a Petri net. The tokens are used to define the execution of a Petri net. There are three major approaches for PN analysis [11, 13, 16]: • Behavioral approach—A tree-based approach. • Structural approach—A matrix-based approach. • Reduction/Refinement approach—A net simplification approach. The System’s Petri Net (PN) Model is designed with the help of Work Flow Petri Net Designer (WoPED) tool to model the system’s communication flow among all entities of the system [14–16]. Workflow Petri Net Designer (WoPeD), is a platform-independent software tool for modeling, simulating, and analyzing business processes. System simulation is done through an animated sequence of communication process model, which facilitated the validation of the process and hence the validation of the system model. Using WoPeD tool, a SMART PN Model has been designed, after defining the Places, Transitions, and Tokens at all transitions. The token movement of the PN Model is tested and analyzed in WoPeD.
522
M. Sharma and C. Sharma
3 SMART ATM Petri Net Model Design The nodes defined for SMART ATM are ATM, ATM Normal Vault (NV) Controller, ATM Emergency Vault (EV) Controller, Vault Controller (VC), SMART Server (SS), GPS Server (GPSS), Bank Server (BaS), Base Station (BS), Computer Systems (CS), SMART Note Chip (SN), Bank & Security Officials Mobile Phones Mob1…Mobn (MN), Alarms Nodes at Bank & Police Station (FAN), and Alarms in PCR Van1…PCRVann (PCRAN). Message transmission has been done between the following Sender Receiver Node pair of the system: User-ATM, ATM-BaS, BaS-SS, ATM-SS, SS-GPSS, SS-SMSC, SMSC-MN, SMSC-PCRAN, SMSC-FAN, VC- EV, VC-NV, SC-SN, SN-GPSS, GPS St.-PCRAN, and PCRAN-GPSS. The system nodes and the messages packets defined for the system are depicted in Figs. 2, 3, and 4. In Communication process model mentioned in Fig. 2, the following message packets are transmitted between different sender and receiver pairs: • PIN2 (Emergency PIN entered by User at ATM), • E_PIN2 (Message—Encrypted Emergency PIN, Location_ATM, Source Id— ATM Id, Destination Id—Bank Server Id), • INFO_DURESS (Message—Duress_Attack, Location_ATM, Source Id—Bank Sever Id, Destination Id—SMART Server Id),
Fig. 2 Communication process model for SMART ATM
Petri Net Modeling and Analysis of SMART ATM
523
Fig. 3 Communication process model
Fig. 4 Communication process model
• REQ_LOC (PCRAN Id are registered and stored at SMART Server, Message— PCRAN Id1 , PCRAN Id2 ,…PCRAN Idn , Request to retrieve locations values corresponding to PCRAN Id1 , PCRAN Id2 ,…PCRAN Idn , Source Id—SMART Server Id, Destination Id—GPS Server Id), • INST_TWV (Message—INST_TW (Withdrawal_from_Bank’s_Treasure), INST_VAULT, Source Id—SMART Sever Id, Destination Id—Bank Server Id), • INST_VAULT1 (Message—EV_ON & NV_OFF, Source Id—Bank Server Id, Destination Id—ATM Id), • INST_VAULT2 (Message—EV_ON & NV_OFF, transferred to Vault Controller), • SIG_ON (Signal from Vault Controller to open Emergency Vault), • SIG_OFF (Signal from Vault Controller to close Normal Vault), • INFO_LOC (Message—Location values corresponding to PCRAN Id1 , PCRAN Id2 , PCRANIdn , i.e., PCRAN_Location1 ,
524
• • • • •
• • • • • • • • • • • • • •
M. Sharma and C. Sharma
PCRAN_Location2 ,…PCRAN_Locationn values, Source Id—GPS Server Id, Destination Id—SMART Server Id), INFO_DURESS1 (Message—Duress_Attack, ATM_Location, PCRAN_Id, Source Id—SMART Server Id, Destination Id—SMSC/BS Id), INFO_DURESS4 (Message—Duress_Attack, ATM_Location, Source Id— SMSC/BS Id, Destination Id—MN Id), INFO_DURESS2 (Send after finding nearest PCRAN using NN Algorithm, Message—Duress_Attack_Alarm_Signal, ATM_Location, PCRAN_Id, ATM_Location, Source Id—SMART Server Id, Destination Id—SMSC/BS Id), SIG_ON1 (After receiving Id of nearest PCRAN by SMSC/BS, Message—Alarm Signal, Source Id—SMSC/BS Id, Destination Id—Nearest PCRAN Id), INFO_DURESS3 ((FAN Id and fixed locations are registered and stored at SMART Server, Message—(FAN Id1 , location FAN Id1 ), (FAN Id2 , location FAN Id2 ),…(FAN Idn , location FAN Idn ), Duress_Attack, ATM_Location, Source Id— SMART Server Id, Destination Id—SMSC/BS Id), SIG_ON2a (After receiving location and Id of FAN and other relevant information SMSC/BS sends the alarm signal, Message—Alarm Signal, Source Id—SMSC/BS Id, Destination Id—FAN Id1 ), SIG_ON2b (After receiving location and Id of FAN and other relevant information SMSC/BS sends the alarm signal, Message—Alarm Signal, Source Id—SMSC/BS Id, Destination Id—FAN Id2 ), TRANS_O1 (After dispensing requested cash containing SMART Notes set, the EV will send a signal to VC stating its status of the transaction over), TRANS_O2 (VC forwards the signal to ATM), TRANS_O3 (ATM forwards the signal to BaS), TRANS_O4 (BaS forwards the signal to SS), ORIGINAL_STATE (ATM transmits signal to VC to return back to its original status), SIG_OFF3 (Signal from VC to EV to return back to its original status), SIG_ON3 (Signal from VC to NV to return back to its original status), CONN_O1 (Message to SMSC/BS to acknowledge the action performed at MN, Message- ack_packet, sender Id (MN_Id), receiver Id (SMSC/BS Id)), CONN_O2 (Message to SS by SMSC/BS to acknowledge the action performance at MN, Message- ack_packet, sender Id (SMSC/BS_Id), receiver Id (SS Id)), CONN_O3 (Message to SMSC/BS by PCRAN to acknowledge the action performance at PCRAN, Message- ack_packet, sender Id (PCRAN_Id), receiver Id (SMSC/BS Id)), CONN_O4 (Message to SS to by SMSC/BS to acknowledge the action performance at PCRAN, Message- ack_packet, sender Id (SMSC/BS Id), receiver Id (SS Id)), CONN_O5a (Message to SMSC/BS by FAN to acknowledge the action performance at FAN1 , Message- ack_packet, sender Id (FAN_Id1 ), receiver Id (SMSC/BS Id)),
Petri Net Modeling and Analysis of SMART ATM
525
• CONN_O5b (Message to SMSC/BS by FAN to acknowledge the action performance at FAN2 , Message- ack_packet, sender Id (FAN_Id2 ), receiver Id (SMSC/BS Id)), • CONN_O6a (Message to SS by SMSC/BS to acknowledge the action performance at FAN1 , Message- ack_packet, sender Id (SMSC/BS), receiver Id (SS Id)), • CONN_O6b (Message to SS by SMSC/BS to acknowledge the action performance at FAN2 , Message- ack_packet, sender Id (SMSC/BS), receiver Id (SS Id)). In Communication process model, as mentioned in Fig. 3, the following messages are transmitted between different sender and receiver pairs: • SATELLITE_POSITIONS (Using GNSS Network, the Satellites Location Information are obtained at Receiver point, Message—Location_Satellite1 , Location_Satellite2 , Location_Satellite3 , Location_Satellite4 , Sender: GPS Satellite, Receiver: GPS Chip), • GEO_LOCATION (Message—GeoLocation_Receiver, Sender: GPS_Receiver, Receiver: GPS Server). In Communication process model, as mentioned in Fig. 4, the following messages are transmitted between different sender and receiver pairs: • SIG_ON (Signal to activate GPS Receiver of SMART Note, Sender: SMART Client, Receiver: SMART Note Chip), • INFO_LOC (Message—GeoLocation_SN (Currently same as ATM_ Location), Sender: SMART Note Chip, Receiver: GPS Server), • INFO_LOC_CON1 (Message—Configured_CurrentGeoLocation_SN, Sender: GPS Server, Receiver: SMART Server), • UPDATE_INFO_LOC (Message—Updated_GeoLocation_SN (Currently same as ATM_ Location), Sender: SMART Note Chip, Receiver: GPS Server), • INFO_LOC_CON2 (Message—Configured_UpdatedGeoLocation_SN, Sender: GPS Server, Receiver: SMART Server). In the Petri net model depicted in Fig. 5, the following tokens are created and forwarded to different entities during the entire communication process of the system: • PIN2 at ATM (one token In by user to ATM), • E_PIN2, Location_ATM, ATM Id, BaS_Id at ATM (four tokens out from ATM to BaS), • Duress_Attack, Location_ATM, BaS_Id, SS_Id (four tokens out from BaS to SS), • REQ_LOC, PCRAN Id1 , PCRAN Id2 ,PCRAN Id3 , SS_Id, GPSS_Id (six tokens out from SS to GPSS), • INST_TW, INST_VAULT, SS_Id, BaS_Id (four tokens out from SS to BaS), • EV_ON, NV_OFF, BaS_Id, ATM_Id (four tokens out from BaS to ATM), • EV_ON, NV_OFF, ATM_Id, VC_Id (four tokens out from ATM to VC), • SIG_ON (ine token out from VC to EV), • SIG_OFF (one token out from VC to NV), • PCRAN_Location1 , PCRAN_Location2 , PCRAN_Location3 , GPSS_Id, SS_Id (five tokens out from GPSS to SS),
526
M. Sharma and C. Sharma
Fig. 5 Token movement in SMART PN
• Duress_Attack, ATM_Location, PCRAN_Id, SS_Id, SMSC/BS_Id (five tokens out from SS to SMSC/BS), • Duress_Attack, ATM_Location, SMSC/BS_Id, MN_Id (four tokens out from SMSC/BS to MN), • Duress_Attack_Alarm_Signal, ATM_Location, PCRAN_Id, ATM_Location, SS_Id, SMSC/BS_Id (six tokens out from SS to SMSC/BS), • Alarm_Signal, SMSC/BS_Id, PCRAN_Id (three tokens out from SMSC/BS to PCRAN), • FAN_Id1 , location_FAN_Id1 , FAN_Id2 , location_FAN_Id2 , Duress_Attack, ATM_Location, SS_Id, SMSC/BS_Id (eight tokens out from SS to SMSC/BS), • Alarm_Signal, SMSC/BS_Id, FAN Id1 (three tokens out from SMSC to FAN_Id1 ), • Alarm_Signal, SMSC/BS_Id, FAN Id2 (three tokens out from SMSC to FAN_Id2 ). Tokens utilized in releasing the connections: • • • •
TRANS_O1, VC_Id (two tokens out from EV to VC), TRANS_O2, ATM_Id (two tokens from VC to ATM), TRANS_O3, ATM_Id, BaS_Id (three tokens from ATM to BaS), TRANS_O4, BaS_Id, SS_Id (three tokens from BaS to SS),
Petri Net Modeling and Analysis of SMART ATM
• • • • • • • • • • •
527
ORIGINAL_STATE, VC_Id (two tokens from ATM to VC), SIG_OFF3, EV_Id (two tokens from VC to EV), SIG_ON3, NV_Id (two tokens from VC to NV), CONN_O1_ack_packet, MN_Id, SMSC/BS_Id (four tokens from MN to SMSC/BS), CONN_O2_ack_packet, SMSC/BS_Id, SS_Id (three tokens from SMSC/BS to SS), CONN_O3_ack_packet, PCRAN_Id, SMSC/BS_Id (three tokens from PCRAN to SMSC/BS), CONN_O4_ack_packet, SMSC/BS_Id, SS_Id (three tokens from SMSC/BS to SS), CONN_O5a_ack_packet, FAN_Id1 , SMSC/BS_Id (three tokens from FAN1 to SMSC/BS), CONN_O5b_ack_packet, FAN_Id2 , SMSC/BS_Id (three tokens from FAN2 to SMSC/BS), CONN_O6a_ack_packet, SMSC/BS_Id, SS_Id (three tokens from SMSC/BS to SS), CONN_O6b_ack_packet, SMSC/BS_Id, SS_Id (three tokens from SMSC/BS to SS).
As the token movement is initiated at start node, the tokens movements are visualized at transitions and can be seen moving from one place to next place as per the defined flow. Here, the tokens reached to all the final destinations as shown in Fig. 5, and processed through WoPeD.
4 Result and Discussion Here, for SMART PN analysis, the Behavioral approach has been followed. Behavioral approach is a tree-based approach and deals with the behavioral properties of PN. Behavioral properties are the properties which are dependent on the initial marking of PN. Here, behavioral analysis including the reachability, liveness, and boundedness test and analysis are done.
4.1 Reachability Analysis In graph theory, reachability refers to the ability to get from one vertex s to another vertex t within a graph, i.e., the vertex t is reachable from s, if there exists a sequence of adjacent vertices or a path, which starts with s and ends with t. Similarly, in a Petri net PN, for an initial marking m0 and another marking mr , a net is reachable from m0 to mr , if there exists a sequential firing of transitions which brings net from
528
M. Sharma and C. Sharma
initial marking m0 –mr . The set of all possible markings reachable from m0 , is called the Reachability Set, R(m0 ) [10, 11]. Tokens are the discrete number of marks or marking for a place. Configuration of tokens exhibited by places in a PN is distributed over the PN net diagram and helps in depicting the reachability path. As per the SMART PN depicted through Fig. 5, the following markings are reachable from m0 via different paths and transitions (σ ). Path1: m0 ->m1 ->m2 ->m3 ->m4 Here, all markings mi are reachable from m0 via σ h , where i = 1, 2, 3, 4 and σ h = {t 1 , t 2 , t 3 , t 4 , t 5 } Path2: Path1 U m4 ->m5 ->m6 ->m7 ->m8 ->m9 ->m10 ->m11 Here, all markings mj are reachable from m0 via σ j , where j = 1, 2, 3, 4,…, 10, 11 and σ j = {t 5 , t 6 , t 7 , t 8 , t 9 , t 10 , t 11 } Path3: Path2 U m4 ->m12 ->m13 ->m14 Here, all markings mk are reachable from m0 via σ k , where k = 1, 2, 3, 4, 12, 13, 14 and σ k = {t 5 , t 12 , t 13 } Path4: Path 3 U m4 ->m15 ->m16 ->m17 ->m18 ->m19 ->m20 ->m21 ->m22 ->m23 ->m24 >m25 ->m26 Here, all markings mp reachable from m0 via σ r , where p = 1, 2, 3, 4, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 and σ r = {t 5 , t 14 , t 16 , t 17 , t 18 , t 19 , t 20 , t 22 } Path5: Path 4 U m4 ->m27 ->m28 ->m29 ->m30 ->m31 Here, all markings mq are reachable from m0 via σ s , where q = 1, 2, 3, 4, 27, 28, 29, 30, 31 and σ s = {t 5 , t 23 , t 24 , t 25 } Thus, it is inferred from Path1, Path2, Path 3, Path4, and Path5, that for the SMART PN, the Reachability Set R(m0 ) includes: All markings ->{m1 , m2 , …, m30 , m31 } And transitions σ ->{t 1 , t 2 , …, t 25 } Thus, SMART PN (SPN) is reachable from m0 to all mn , where, n = 1, 2, 3, …, 30, 31.
4.2 Liveness Analysis A PN is called Live with respect to an initial marking, if for every marking belonging to the reachability set; it is possible to fire all the transitions at least once by some firing sequence [10, 11]. Here, SMART Petri Net is live with respect to m0 , there is a possibility of firing all transitions happened during communication between all nodes. Petri nets can have different degrees of liveness->L 1 /L 2 /L 3 /L 4 . A Petri net (N, M 0 ) is called L k —live iff all of its transitions are L k —live, where a transition is • dead, if it can never fire, i.e., it is not in any firing sequence in L(N, M 0 ),
Petri Net Modeling and Analysis of SMART ATM
529
• L 1 —live (potentially fireable), iff it may fire, i.e., it is in some firing sequence in L(N, M 0 ), • L 2 —live iff it can fire arbitrarily often, i.e., if for every positive integer k, it occurs at least k times in some firing sequence in L(N, M 0 ), • L 3 —live iff it can fire infinitely often, i.e., if for every positive integer k, it occurs at least k times in V, for some prefix-closed set of firing sequences L(N, M 0 ), • L 4 —live (live) iff it may always fire, i.e., it is L 1 —live in every reachable marking in R(N, M 0 ). Here, SMART PN is L 1 —live or potentially fireable, as all transitions {t 1 , t 2 , …, t 25 } are potentially fireable and have some firing sequence.
4.3 Boundedness Analysis A place in a Petri net is called k-bounded if it does not contain more than k tokens in all reachable markings, including the initial marking [10, 11]. • Safe PN—A PN is said to be safe if it is 1-bounded. • Bounded PN—A PN is said to be bounded if it is k-bounded for some k. Here, it is observed that the SMART PN does not contain more than 8 tokens in all reachable markings, hence SMART PN is 8-bounded PN. As per the examination of the result obtained from data study and analysis, the relationships among the model constructs have been inferred and the system communication process has been validated successfully.
5 Conclusion As per the demand of a proper system development mechanism, it is mandatory to design model of any system before its actual development. Since the system SMART ATM involves numerous message packet transmissions between various entities or nodes involved in the system, the message communication process model was found appropriate for modeling of the SMART system. The Petri Net was designed using Workflow Petri Net Designer (WoPeD) and then tested to validate the communication flow. With the behavioral analysis tests, the communication processing has been validated and hence supported the concept. The future scope of the study includes the actual development of the system on reality grounds.
530
M. Sharma and C. Sharma
References 1. Rao, K. S. (2015). Automated teller machines usage in India: Emerging challenges. Sumedha Journal of Management, 4(1), 31. 2. Betab, G., & Sandhu, R. K. (2014). Fingerprints in automated teller Machine-A survey. International Journal of Engineering and Advanced Technology, 3(4), 183–186. 3. Mcandrews, J. J. (2003). Automated teller machine network pricing—a review of the literature. Review of Network Economics, 2(2), 146-158. 4. Sharma, M., Rathore, V. S., & Sharma, C. (2019). System modeling and design of smart for ATM, available at SSRN: https://ssrn.com/abstract=3356242. 5. Sharma, M., Sharma, C., & Khan, A. (2019). SMART ATM: Technology acceptance modeling and analysis, available at SSRN: https://ssrn.com/abstract=3356363. 6. Sharma, M., & Rathore, V. S. (2014). A Framework for safe mode alarm reporting technique (SMART) in ATMs. International Journal of Computer Applications, 96(1). 7. Sharma, M. (2015). Imminent gadgets and methods for an effective SMART ATM. In Proceedings of 4th National Conference (pp. 45–49). St. Xavier’s College. 8. Sharma, M., & Rathore, V. S. (2014). A review on security and reporting mechanisms for coerced cash withdrawal from ATM. International Journal of Enhanced Research in Science Technology & Engineering, 5, 422–425. 9. Sharma, M., et. al. (2014). An investigative study on physical security and reporting mechanism in ATM. In Proceedings of BICON-14 on New Horizons of Information Technology by Using Engineering and Mathematical Approaches (pp. 133–137). 10. Murata, T. (1989). Petri nets: Properties, analysis and applications. In Proceedings of the IEEE, (Vol. 77, Issue. 4, pp. 541–580). 11. Bergstra, J., & Klop, J. (1985). Algebra of communicating processes with abstraction, TCS37. pp. 77–121. 12. Hamadi, R., et al. (2003). A petri net-based model for web service composition, In Proceeding. ADC ‘03 Proceedings of the 14th Australasian Database Conference, 17, pp. 191–200. 13. Bernardi, S., et al. (2002). From UML sequence diagrams and statecharts to analysable petri net models, In Proceeding. WOSP ’02 Proceedings of the 3rd International Workshop on Software and Performance, pp. 35–45. 14. Van der Aalst, W. (2016). Process Modeling and Analysis. In Process Mining. Berlin, Heidelberg: Springer. 15. Chen, T. M., Sanchez-Aarnoutse, J. C., & Buford, J. (2011). Petri net modeling of cyberphysical attacks on smart grid. IEEE Transactions on Smart Grid, 2(4), 741–749. 16. Salimifard, K., et al. (2001). Petri net-based modelling of workflow systems: An overview. European Journal of Operational Research, 134(3), 664–676.
Robot Path Planning Using Differential Evolution Sanjay Jain, Vivek Kumar Sharma and Sandeep Kumar
Abstract The differential evaluation (DE) algorithm is an evolutionary algorithm. It is a popular metaheuristics that efficiently solved various complex optimization problems. This paper studied some recent modifications in DE and Robot Path Planning Problem. The problem are studied with various constraints and results are compared with competitive nature-inspired algorithms. Keywords Evolutionary algorithm · Differential evolution · Metaheuristics · Nature-inspired algorithm · Optimization
1 Introduction Storn and Price [1] developed a simple and efficient strategy in the year 1995, namely Differential Evolution. The fundamental concept in DE is to make use of the vector differences for perturbing vector solutions. DE is a stochastic metaheuristic. DE fits into the class of evolutionary algorithms (EAs). A number of characteristics like trial vector development procedure (discussed in Sect. 2) make use of the information about direction and distance from present population to engender a fresh trial vector is significantly contrasting with other existing evolutionary strategies. In case of DE, the mutation is applied first and then crossover is applied while in all other EAs, most of the time, a trial vector generated using crossover in the first step and then one offspring produced using the mutation operation.
S. Jain (B) · S. Kumar Amity University, Jaipur, Rajasthan, India e-mail: [email protected] S. Kumar e-mail: [email protected] V. K. Sharma Jagannath University, Jaipur, Rajasthan, India e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_50
531
532
S. Jain et al.
DE is very popular among researchers specially working in the field of optimization as it has a number of advantages over other population-based algorithms. But similar to other stochastic algorithms, DE also has some drawbacks and researchers are frequently working to enhance the efficiency and reliability of this evolutionary algorithm. A few recent and most popular variants of DE are discussed in [2] with appropriate applications. DE performs better than the many other competitive algorithms like Genetic Algorithm (GA) [3, 4] and the Particle Swarm Optimization (PSO) [5] for considered numerical benchmarks [6] and many more new algorithms. DE has proved its superiority over other algorithm in various applications of science, management, engineering and technology like chemical engineering [7], mechanical engineering design [8], machine intelligence, pattern recognition [9], robot path planning [10] and signal processing [11]. Nowadays, DE algorithm is one of the most accepted strategies in area of engineering optimization, machine intelligence and cybernetics. The evolution of population in DE is driven by variation and selection. The deviation process is absolutely accountable for the exploration of different areas of the probable search region and exploitation of the finest solution is done by the process of selection. A number of new study shows that sometimes DE is not able to achieve global optimum [12]. In this paper, to set up an appropriate trade-off between diversification and convergence of the population in DE, a natural phenomenon of specific flying pattern exhibited by peregrine falcon while preying is implemented with DE and named as peregrine preying pattern based DE algorithm (P3DE).
2 Overview of DE Algorithm The general notation for DE is DE/x/y/z, here DE represent name of approach ‘Differential Evolution’, x denotes the strategy for identification of target vector, number of differential vector used perturbation of x denoted by y and z represent the crossover technique employed. Based on selection of x, y and z [1], various variant of DE are available. The DE/rand /1/bin is one of the popular DE strategies and is also used in this paper. It selects the target vector randomly and use binomial crossover with one differential vector. The DE recognized among researchers as it is very simple, robust, easy in implementation and has a wide class of applicability to real-world problems [13].
2.1 Mutation The mutation operator generate a trial solution by doing some random changes in trial solution. The working of mutation operator to engender a trial solution ui from the parent solution xi is described as follows:
Robot Path Planning Using Differential Evolution
533
• Identify a target vector xi1 (g) in such a way that i and i1 are not same. • Identify two random solutions, xi2 and xi3 in such a way that i, i1 , i2 and i3 are different. • The target vector mutated by Eq. 1 inn order to get trial vector. ui (g) = xi1 (g) + F × (xi2 (g) − xi3 (g))
(1)
where mutation scale factor F ∈ [0, 1] control the escalation of the differential variation [14].
2.2 Crossover In DE offspring xi (g) generated by uniform crossover from parent vector xi (g) and the trial vector ui (g) computed by Eq. 2. xij (g)
uij (g), if j ∈ J = xij (g), else.
(2)
where a set of crossover points denoted by J , jth element of xi (g) vector denoted by xij (g). It is supposed that if j ∈ J , then mutant uij (g) will be trial vector.
2.3 Selection The best solution from trial vector and target vector are elevated for next iteration during selection phase. It decides the individual to compute the trial vector for the mutation and precisely choose the best that will be used in next generation, between the trial vector and their antecedent based on fitness value. If fitness of trial vector is lower than target vector, then it takes over from the target vector for next generation. Contrarily, the target vector xi (g) remains there for next generation, i.e. best-fitted individual selected for next generation. x (g), if f (xi (g)) > f (xi (g)). xi (g + 1) = i xi (g), else. In order to mend the results of basic DE, researchers have proposed a number of variants of DE. It has been observed by Storn and Price in [1] that the best suitable range for value of F is [0.5, 1] and [5D, 10D] is the most appropriate range of the value of NP, where, considered problem is of D dimension. Most of the researchers focused on identification of best suitable value for control parameters (F and CR) but very few researchers tried to identify the best suitable size
534
S. Jain et al.
of the population (NP) for performance enhancement. New variants of DE proposed by Teo [15] and Sharma et al. [16] based on the concept of self-adaption in populations and dynamic scaling. They suggested self-adaption in order to avoid manual parameter setting. Some new strategies also incorporated in DE like opposition based strategy [17], fitness-based strategy [18], convex mutation [19], memetic search [20] and position update [21]. Some modifications in population selection is suggested by researchers [22].
3 Robot Path Planning Problem The Robot Path Planning (RPP) Problem is related to find the optimal path without colliding with obstacles. Recently, Sharma et al. [10] solved this problem by a new variant of DE, namely BHGDE and Nayyar et al. [23] solved this problem by a new variant of ABC, namely aABC [24]. The overall goal of the RPPP is to diminish the travelling cost, i.e. total distance covered from source to destination. In order to design this problem, here some rules are produced on the basis of some suppositions. This problem is focused on finding a collision-free path with optimum utilization of available resources while moving from a given starting state to the destination state. This problem is defined for a single robot moving in two-dimensional space having some obstacles in its proximity. Now robot have to move from predefined initial state to some final state. In the considered search space, obstacles are defined by their radius (r) and x, y coordinates. The robot moving toward target can change its direction (in order to select optimum path) on a particular point, that is known as handle points or segments. Number of handle points n are predefined where robot may turn in left or right. When robot encounters a collision with an obstacle, it has the capability to turn with some angle. The movement of robot recorded in the form of points and a final path generated when it reaches to the target location without collision. The next location (x , y ) at time t + 1 of robot computed by below-mentioned equation while (x, y) denotes its current location at time t. x = x + v × cos θ δt
y = y + v × sin θ δt In above equation v denotes velocity of robots, turning angle denoted by θ and δt denotes change in time. The overall goal of this problem is to minimize distance travelled by robot. The implementation is carried out in MATLAB using DE algorithm and results are compared with Teacher Learning based Optimization (TLBO) [25] and Particle Swarm Optimization (PSO) [5]. The experiments have been carried out for three different cases with obstacle 3, 9 and 15 and handle point 3, 5 and 8, respectively. Starting point for all is taken (0,
Robot Path Planning Using Differential Evolution
535
6
50
100
5
40
4
80
30
3 2
40
10
1 0
60
20
20
0 0
2
4
6
−10 0
10 20 30 40 50
(b) Case 2
(a) Case 1
0 0
20 40 60 80 100
(c) Case 3
Fig. 1 Path by DE for different cases Table 1 Result comparison for the Optimal Path Obstacles Handles Algorithm 3
3
9
5
15
8
PSO TLBO DE PSO TLBO DE PSO TLBO DE
Optimal distance 7.6109 7.5984 7.5965 82.0904 96.8758 78.1612 144.7534 143.3134 145.1194
0) and target point are taken (4, 6), (50, 50) and (100, 100). The below-mentioned figure shows the simulation of DE for the three cases (Fig. 1). The Table 1 shows the simulation results of the propounded DE algorithm with TLBO, and PSO in terms of optimal distance for all the three cases. It is clear from the Table 1 that the optimal distance measured by the DE is minimum than the TLBO, and PSO algorithms.
4 Conclusion This work focuses on RPP problem and its solution using DE. The experimental work proves that DE is very efficient in solving RPP problem in comparison to other considered algorithms. The performance of DE is relatively good and in future some good variant of DE may be proposed to improve its performance. The new variant may be used to solve this problem or may be applied for some new problem.
536
S. Jain et al.
References 1. Price, K. V. (1996). Differential evolution: A fast and simple numerical optimizer. In 1996 Biennial conference of the North American fuzzy information processing society, 1996. NAFIPS (pp. 524–527). IEEE. 2. Chakraborty, U. K. (2008). Advances in differential evolution. Springer, Berlin. 3. Holland, J. H. (1975). Adaptation in natural and artificial systems (vol. 53). University of Michigan press. 4. Kumar, S., Jain, S., & Sharma, H. (2018). Genetic algorithms. In Advances in swarm intelligence for optimizing problems in computer science (pp. 27–52). Chapman and Hall/CRC. 5. Kennedy, J., & Eberhart, R. (1995). Particle swarm optimization. In Proceedings IEEE international conference on neural networks (vol. 4, pp. 1942–1948). IEEE. 6. Vesterstrom, J., & Thomsen, R. (2004). A comparative study of differential evolution, particle swarm optimization, and evolutionary algorithms on numerical benchmark problems. In Congress on evolutionary computation. CEC2004 (vol. 2, pp. 1980–1987). IEEE. 7. Liu, P. K., & Wang, F. S. (2008). Inverse problems of biological systems using multi-objective optimization. Journal of the Chinese Institute of Chemical Engineers, 39(5), 399–406. 8. Rogalsky, T., Kocabiyik, S., & Derksen, R. W. (2000). Differential evolution in aerodynamic optimization. Canadian Aeronautics and Space Journal, 46(4), 183–190. 9. Omran, M. G., Engelbrecht, A. P., & Salman, A. (2005). Differential evolution methods for unsupervised image classification. In The 2005 IEEE congress on evolutionary computation (vol. 2, pp. 966–973). IEEE. 10. Sharma, P., Sharma, H., Kumar, S., & Sharma, K. (2019). Black-hole gbest differential evolution algorithm for solving robot path planning problem. In Harmony search and nature inspired optimization algorithms (pp. 1009–1022). Springer, Berlin. 11. Das, S., & Konar, A. (2006). Two-dimensional iir filter design with modern search heuristics: A comparative study. International Journal of Computational Intelligence and Applications, 6(3), 329–355. 12. Lampinen, J., & Zelinka, I. (2000). On stagnation of the differential evolution algorithm. In Proceedings of MENDEL (pp. 76–83). 13. Sharma, P., Sharma, H., Kumar, S., & Bansal, J. C. (2019). A review on scale factor strategies in differential evolution algorithm. In Soft computing for problem solving (pp. 925–943). Springer, Berlin. 14. Engelbrecht, A. P. (2007). Computational intelligence: an introduction. Wiley, New York. 15. Teo, J. (2006). Exploring dynamic self-adaptive populations in differential evolution. Soft Computing-A Fusion of Foundations, Methodologies and Applications, 10(8), 673–686. 16. Sharma, H., Bansal, J. C., & Arya, K. V. (2011). Dynamic scaling factor based differential evolution algorithm. In Proceedings of the international conference on soft computing for problem solving (SocProS 2011) December 20–22, 2011 (pp. 73–85). Springer, Berlin. 17. Kumar, S., Sharma, V. K., Kumari, R., Sharma, V. P., & Sharma, H. (2014). Opposition based levy flight search in differential evolution algorithm. In 2014 International conference on signal propagation and computer technology (ICSPCT) (pp. 361–367). IEEE. 18. Sharma, H., Bansal, J. C., & Arya, K. V. (2012). Fitness based differential evolution. Memetic Computing, 4(4), 303–316. 19. Sharma, T. K., et al. (2016). Asynchronous differential evolution with convex mutation. In Proceedings of fifth international conference on soft computing for problem solving (pp. 915– 928). Springer, Berlin. 20. Kumar, S., Sharma, V. K., & Kumari, R. (2014). Memetic search in differential evolution algorithm, arXiv:1408.0101. 21. Jain, S., Kumar, S., Sharma, V. K., & Sharma, H. (2017). Improved differential evolution algorithm. In 2017 international conference on infocom technologies and unmanned systems (Trends and Future Directions) (ICTUS) (pp. 627–632). IEEE.
Robot Path Planning Using Differential Evolution
537
22. Sharma, V. P., Choudhary, H. R., Kumar, S., & Choudhary, V. ()2015. A modified de: Population or generation based levy flight differential evolution (pglfde). In International conference on futuristic trends on computational analysis and knowledge management (ABLAZE) (pp. 704– 710). IEEE. 23. Nayyar, A., Nguyen, N. -G., Kumari, R., & Kumar, S, Robot path planning using modified artificial bee colony algorithm. In Frontiers of intelligent computing: Theory and application. 24. Kumar, S., Nayyar, A., & Kumari, R. (2019). Arrhenius artificial bee colony algorithm. In International conference on innovative computing and communications (pp. 187–195). Springer, Berlin. 25. Rao, R. V., Savsani, V. J., & Vakharia, D. P. (2011). Teaching–learning-based optimization: A novel method for constrained mechanical design optimization problems. Computer-Aided Design, 43(3):303–315.
Modified Dragon-Aodv for Efficient Secure Routing Monika Goyal, Sandeep Kumar, Vivek Kumar Sharma and Deepak Goyal
Abstract A MANET consists of numerous mobile nodes that are dynamically connected by wireless links to form a temporary network. Secure routing in the main area of research in MANET. Designing a reliable security protocol for ad hoc routing is a difficult task due to the lack of central authority, node mobility, topology changes, and limited availability of resources. MANETs must have a secure method for transmission which is challenging and main issue. Black hole attack is malicious security attack in ad hoc networks, which can be simply occupied by exploiting limitation of on-demand routing protocols such as Ad Hoc On-Demand distance vector (AODV). The DRAGON-AODV routing protocol is designed by change the AODV routing using dragonfly algorithm. The DRAGON-AODV algorithm has been changed to hold the black hole attack resulting MDRAGON-AODV algorithm. This is done by changing the exploration stage of the DRAGON-AODV algorithm. The MDRAGON-AODV has the better ability to hold the black hole attack. Keywords AODV routing protocol · Dragonfly algorithm · Dragon-AODV algorithm · MDRAGON-AODV
1 Introduction In MANET, every node acts not as host and also as a router to set up a route. MANET is a infrastructure-less network with no fixed topology. Due to its unfixed topology routing in MANET, networks is tough [1]. Nodes in MANET are taking their routing alternative so they are suffering from numerous attacks and mostly of network difficulties like congestion, packet lost, and disturbance. AODV (Ad hoc M. Goyal (B) · V. K. Sharma Jagannath University, Jaipur, Rajasthan, India e-mail: [email protected] S. Kumar Amity University Rajasthan, Jaipur, India D. Goyal Vaish College of Engineering, MDU, Rohtak, Haryana, India © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_51
539
540
M. Goyal et al.
On-Demand Distance Vector) protocol is typically used for MANET network [2]. AODV protocol maintains disciplined communication in multicast and broadcast communication. But in AODV, the main complexity is security attacks like black hole attack [3]. Black hole attack is one of the security threat in which the route is redirected to such a node that actually does not carry on in the network. The node shows itself a way to the node that it can attack other nodes and networks expressive that it has the shortest path [4–7]. Such attacker does not want that packets reach their destination. We estimated a technique that will recognize black hole attack between message transfer of source and destination nodes and minimize the data loss. The technique will improve the AODV protocol in dynamic network. We revise how Black Hole attacks in MANET effect AODV protocol [8–10].
2 Aodv Routing Protocol AODV (Ad hoc On-demand Distance Vector) routing protocol is also identified as reactive protocol because it produces paths only on demand when they are required. In AODV protocol, source node uses RREQ message to broadcast with destination node and an central or destination node send back RREP message to source node when it has a path to the destination [5]. In AODV protocol, nodes tolerate the Black Hole attack [11] (Fig. 1). In AODV, nodes are not preserving routing information. But each node keep a routing table that used routing information. AODV protocol used Route request (RREQ), Route reply (RREP), and Route Error (RERR) messages to create and conserve routing information. RREQ––A route request message is transmitted by a node requiring a path to a node.
H G
B
Source
DesƟnaƟon D
S
RREQ C
E
F RREP
Fig. 1 AODV routing protocol
Modified Dragon-Aodv for Efficient Secure Routing
S
1
3
2
541
D
4 Malicious Node
Fig. 2 Black hole attack
RREP––A route reply message is unicasted overturn to the designer of an RREQ if the receiver is either the node using the requested address, or it has a legal path to the requested address. RERR––When a connection break in an active route is detected, an RERR message is used to inform other nodes of the loss of the connection.
3 Blackhole Attack In black hole attack, an attacker node uses its routing protocol in order to broadcast itself for having the direct path to the destination node or to the packet it wants to interrupt. In this wayn attacker node will constantly have the accessibility in replying to the route request and thus interrupt the data packet and keep it [13–16] (Fig. 2).
4 Dragonfly Algorithm A new swarm intelligence optimization technique is known as dragonfly algorithm (DA) [12]. The main idea of the DA algorithm is to plan from the permanent and dynamic swarming behaviors of dragonflies in surroundings. 1. Separation: The separation operation avoids the collision by separating the position of current dragonfly with its neighbor. 2. Alignment: This operation adjusts the velocity of the current dragonfly to align all the dragonflies in a proper manner. 3. Cohesion: The cohesion relates to the current fly with center of all the all flies within the group. 4. Attraction towards food source: It is calculated by the operation which performs the attraction of dragonfly towards food source. 5. Distraction from Energy: This operation moves the dragonfly away from the enemy. These operations equities to calculate the step size of movement of the dragonfly given by the equation. Diter + 1 = ( pC Aa + q V Aa + rC Oa + s F Aa + t D Ea) + wDiter
542
M. Goyal et al.
Here, p, q, r, s, t shows the weight given to separation, alignment, cohesion, food attraction, and enemy distraction operation. The w is the weight given to step size of previous iteration denoted by iter. This step size is used to update the position of the dragonfly given by the following equation:. Diter + 1 = Diter + Diter + 1 This procedure is repeated until dragonfly reaches prey, i.e., until stopping criteria achieved. This procedure is implemented by using a fitness function to perform the optimization. Furthermore, if any dragonfly routes individually, then its position update is given by equation. Diter + 1 = Diter + RW × Diter + 1
(8)
Here, RW shows the random walk of the individual dragonfly.
5 Dragon-Aodv Algorithm The AODV algorithm has been changed by using the dragonfly algorithm to advance the performance of the AODV algorithm. The Dragonfly in the algorithm has been replaced by the nodes in the network. It means in any network, D = D1 D2 . . . D N represents the position of N nodes. The hello packet has been transferred during the route request phase to decide the delay, i.e., time taken to reach from one node to one more. It is given as the initial step size vector D = D1 D2 . . . D N . The objective of the algorithm is to decrease the loss ratio and the end to end delay, i.e., time taken by a packet to reach destination.
6 DRAGON-AODV Algorithm The DRAGON-AODV algorithm has been changed to switch the black hole attack. This is done by changing the exploration stage of the DRAGON-AODV algorithm. This is done by re-implementing the exploration stage if the fitness has been enhanced more than a threshold value. The whole process is given in the algorithm: MDragon AODV Algorithm (N, FS, Ds ) The network with N nodes with FS as the destination and Ds as the source are given. This algorithm will route the data from source to the destination. 1. Initiate position vector of nodes D = D1 D2 . . . D N Initiate, initial step size vector D = D1 D2 . . . D N While Ds ~=FSa Fitness = F(Ds ) For N Each node C Aa = (Ds − Db ) b=1
Modified Dragon-Aodv for Efficient Secure Routing N
N
Vb
543
Db
a. V Aa = N C O a = N − Ds b. F Aa = F S − Ds D E a = E − Ds i. If N >=1 …D i t er+1 = ( pC Aa + q V Aa + rC Oa + s F Aa + t D E a ) + wD i t er ii. D i t er+1 = D i t er + D i t er+1 1/β (1+β)∗sin( β ) 2 Else α = β−1 1+β ∗β∗2( 2 ) b=1
b=1
2
rand1 ∗α i. RW = 0.01 ∗ |rand 1/β Diter+1 = Diter + RW ∗ Diter 2| End if End for FitnessNew = F(D i t er+1 ) Daodv = Next Node selected using AODV
c. Fitness N ew1 = F(Daodv ) If Fitness N ew < Fitness N ew1 /th 1/β (1+β)∗sin( Πβ 2 ) Then α = β−1 1+β ∗β∗2( 2 ) 2
i. RW = 0.01 ∗
rand1 ∗α |rand2 |1/β
D i t er+1 = D i t er + RW ∗ Diter
2. Fitness N ew = F(D i t er+1 ) End if If Fitness N ew > Fitness N ew1 Ds = Daodv else Ds = D i t er+1 End if iter++ End while Calculate total loss and delay. The above algorithm transfers the data from source to the destination in an efficient way and handles the black hole attack. The implementation and analysis of the algorithm are done in the next chapter.
7 Implementation The exposition executes the MDRAGON-AODV and DRAGON-AODV convention by utilizing NS2.35. The MDRAGON-AODV algorithm has been implemented using network simulator NS2.35 and results have been analyzed in different scenarios using parameters like loss ratio, throughput, end-to-end delay, and packet delivery ratio. The analysis is done on scaled networks, i.e., network having nodes 10, 20, 50, 100, or 200. The examination of the ANTHOCNET with the MDRAGON-AODV and DRAGON-AODV convention is indicated graphically in Figs. 10, 11, 12, and 13 in Chap. 5 for the parameters e2edelay, loss ratio, PDR, throughput separately. The watchful examination of the chart demonstrates the impact of black hole attack is minimum on the MDRAGON-AODV protocol. It means the MDRAGON has better capability to handle the black hole attack as compared to DRAGON-AODV convention and ANTHOCNET convention as far as PDR and also throughput. Figures 3 and 4 show the comparison of end-to-end delay and loss ratio. That is, time taken to transfer the data from source node to destination node on three routing
544
M. Goyal et al.
Fig. 3 Analysis of E2E delay and loss ratio under black hole attack
Fig. 4 Analysis of E2E delay and loss ratio under black hole attack
protocols, i.e., AODV, ANTHOCNET, and the MDRAGON-AODV and DRAGONAODV. The delay has been increased in the MDRAGON-AODV as the other protocol got impacted by the black hole attack transfer the data to black hole in less time. The increase in the delay signifies that the black hole is handled effectively by the MDRAGON-AODV. This analysis clearly shows that the time required to transfer the data from source to destination is less in the MDRAGON-AODV and DRAGONAODV protocol resulting efficient data transfer due to better optimization performed by Dragonfly algorithm. The loss ratio has been decreased in the MDRAGON-AODV and DRAGON-AODV protocol due to the enhanced exploration of the search space. The comparison of PDR and throughput is shown in Figs. 5 and 6 and it clearly demonstrates that the MDRAGON-AODV algorithm exhibit the better packet delivery ratio and enhanced throughput of the network. The enhancement in throughput can be easily seen in each scenario, which clearly shows the less impact of the black hole attack in case of MDRAGON-AODV.
Modified Dragon-Aodv for Efficient Secure Routing
545
Fig. 5 Analysis of PDR and throughput under black hole attack
Fig. 6 Analysis of PDR and throughput under black hole attack
8 Conclusion The AODV, i.e., Ad hoc On-Demand Distance Vector is one of the efficient routing used in the MANET network. This is due to efficient transmission in multicast and broadcast communication behavior of AODV. But AODV protocol is prone to the security attacks like black hole attack. This work designs DRAGON-AODV routing protocol by modifying the AODV routing using dragonfly algorithm. Dragonfly is one of the latest swarm intelligence techniques, which exhibit the hunting and the direction finding actions of the dragonflies. The DRAGON-AODV algorithm has been modified to handle the black hole attack resulting MDRAGON-AODV algorithm. This is done by modifying the exploration phase of the DRAGON-AODV algorithm. The MDRAGON-AODV has the better capability to handle the black hole attack.
546
M. Goyal et al.
References 1. Majumder, K., & Sarkar, S. K. (2009). Performance analysis of AODV and DSR routing protocols in hybrid network. International Journal of Advanced Research in Computer Science, 8(4)(Special Issue),140–145 © 2015–2019, IJARCS All Rights Reserved 145 Scenario. Proceedings IEEE Transactions on Networking, pp. 1–4. 2. Rangarajan, C., Sridevikarumari, S., Sujitha, V. (2017). Recent routing protocols in mobile AdHoc network (MANET). International Journal of Advanced Research in Computer and communication Engineering ICITCSA, 6(1). Pioneer College of Arts and Science, Coimbatore. 3. Er. Jatinder Kaur & Er. Gurpreet Singh (2017). Review study on MANET routing protocols: challenges and applications. International Journal of Advanced Research in Computer Science, 8(4) (Special Issue). 4. Sharma, R., Sharma, T. (2016). A comparative review on routing protocols in MANET. International Journal of Computer Applications, 133(1). 5. Rathee, P., Singla, M., Goyal, D. (2013). A survey on AODV routing protocol in MANETS. IJCSMS International Journal of Computer Science and Management Studies, 13(03). 6. Raja, L., Baboo, S. S. (2014). An overview of MANET: Applications, attacks and challenges. International Journal of Computer Science and Mobile Computing, IJCSMC, 3(1), 408–417. 7. Parasher1, R., Rathi, Y. (2015). A_AODV: A modern routing algorithm for mobile Ad-Hoc network. International Research Journal of Engineering and Technology (IRJET), 02(01), eISSN: 2395–0056, p-ISSN: 2395–0072. www.irjet.net. 8. Ding, S., Liu, L. (2010). A node-disjoint multipath routing protocol based on AODV. In Proceedings of 9th International Symposium on Distributed Computing and Applications to Business Engineering and Science (DCABES), pp. 312–316. 9. Nihad, I., Ilkan, A. M., Ozen, E. (2015). Fuzzy approach to improving route stability of the AODV routing protocol. EURASIP Journal on Wireless Communications and Networking. 10. Chavan, A. A., Kurule, D. S., & Dere, P. U. (2016). Performance analysis of AODV and DSDV routing protocol in MANET and modifications in AODV against black hole attack. ScienceDirect, Procedia Computer Science, 79, 835–844. 11. Shashwat, Y., Pandey, P., Arya, K. V., & Kumar, S. (2017). A modified AODV protocol for preventing blackhole attack in MANETs. Information Security Journal: A Global Perpective, 26(5), 240–248. 12. Mirjalili, S. (2016). Dragonfly algorithm: a new meta-heuristic optimization technique for solving single-objective, discrete, and multi-objective problems. Neural Computer and Applications, 27, 1053–1073. https://doi.org/10.1007/s00521-015-1920-1. 13. Sarkar, D., Choudhury, S. (2018). Enhanced-Ant-AODV for optimal route selection in mobile ad-hoc network. Journal of King Saud University—Computer and Information Sciences. 14. Saini, G. L., Panwar, D., & Singh, V. (2014). Modeling, implementation and performance investigation of efficient-AODV routing protocol in MANET using data rate. International Journal of Enhanced Research in Science Technology and Engineering, 3(1), 76–82. 15. Saini, A., & Singh, V. (2013). Implementation and performance analysis of improved DSR routing protocol to Detect an inimical node in MANETs using NS-2. International Journal for Research and Development in Engineering (IJRDE), 2, 33–44. 16. Choudhary, S. S., Singh, V., & Dadhich, R. (2011). Performance investigations of routing protocols in manets. In International conference on advances in computing and communications (pp. 54–63). Springer, Berlin.
Brain Tumor Detection and Classification Fatema Kathawala, Ami Shah, Jugal Shah, Shranik Vora and Sonali Patil
Abstract The brain tumor is the anomalous uncontrolled burgeoning of cells in the brain that can cause, sometimes, irreversible damage to various nerves as well as blood vessels in a human body. The best possible way of preventing complications is early detection of the brain tumor. Various machine learning and image processing techniques are used for tumor detection. Preprocessing, segmentation, feature extraction, and classification are, namely the important stages followed by us in brain tumor detection. Using these steps, we streamlined the tumor detection process that involved manual methods, namely human inspection and biopsy by designing an automated brain tumor identification and classification application in this project. The classification output has classified the tumor as benign or malignant and is further divied into its subclasses, meningioma and pituitary adenoma for benign and High-Grade Glioma and Glioblastoma for malignant. Keywords Brain tumor · Benign · Malignant · Segmentation · Classification
F. Kathawala (B) · A. Shah · J. Shah · S. Vora · S. Patil K. J. Somaiya College of Engineering, Mumbai 400077, India e-mail: [email protected] A. Shah e-mail: [email protected] J. Shah e-mail: [email protected] S. Vora e-mail: [email protected] S. Patil e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_52
547
548
F. Kathawala et al.
1 Introduction With an advance in technology, the field of medical imaging has grown leaps and bounds. It’s possible for a tumor to either be benign (primary) or malignant (secondary) Benign tumors are confined to the brain and hence static in nature. They put immense pressure on the neighboring tissues of the brain. On the other hand, malignant tissues start as a cluster of cancerous cells anywhere in your body which then migrates to your brain. The primary concern was detecting the brain tumor in its early stages to employ proper treatment. Based on this information, the most suitable treatment can be identified and thus, the chances of survival and treatment of a patient can be increased greatly if the detection is accurate and detailed. Image processing has been proven to be helpful for diagnosing tumor. A few imaging techniques are Magnetic resonance Imaging (MRI) and Computed Tomography (CT). MRI is preferred over CT scans because they provide good distinction between the white matter (WM), gray matter (GM), and the cerebrospinal fluid (CSF). Therefore, segmenting MRI images will yield better results. In this paper, we will discuss the existing methodology in the next section, proposed methodology for Brain Tumor Detection and Classification and after that results and discussion and after that, it ends with conclusion.
2 Existing System In existing systems, we see that tumors have been classified into benign or malignant. Benign tumors do not proliferate to the rest of the body. These are also known as primary tumors. Malignant tumors, on the other hand, spread in all areas of the body [1]. For image segmentation, Otsu Thresholding has been used [2]. Existing systems generally use Gray-Level Co-occurrence Matrix for obtaining features of texture and region props function in MATLAB to measure shape properties of the image [3]. Most systems use Artificial Neural Networks, Convolutional Neural Networks, Probabilistic Neural Networks, and Support Vector Machines [3] to classify images into benign and malignant. Since existing systems classify only into benign and malignant, we have tried to further subclassify into the four above mentioned categories. We have used Active Contours-Snakes Algorithm for segmentation which has not been implemented much in the existing works. Hence, bettering the existing systems by feature selection stage where relevant features will be selected to classify the tumor and providing more precise results. We have used Artificial Neural Networks, Random Forests, and Naive Bayes Classifier to classify our images into four categories, namely Meningioma, Pituitary Adenoma, High-grade Glioma and Glioblastoma, the former two being benign have presented a comparative study of ANN, Random Forests, and Naive Bayes Classifier in terms of accuracy.
Brain Tumor Detection and Classification
549
3 Proposed Methodology The detection and classification of the tumor can be categorically divided into a series of stages which are as follows: Data Collection, Preprocessing, Segmentation, and Feature Extraction. Classification. The flowchart in Fig. 1 depicts the abovementioned stages.
3.1 Data Collection The first and foremost step is to collect a clean and authentic dataset of MRI scans of different patients suffering from different types of brain tumor. The MRI scans should be T1 weighted contrast-enhanced to provide better assistance to the segmentation algorithms since the tumor can be differentiated from its background. MRI scans for benign types of Meningioma and Pituitary Adenoma and malignant types of Glioblastoma Multiforme (GBM) and High-Grade Glioma (HGG) are collected. The dataset of GBM is from MICCAI BraTS 2017. HGG dataset is collected from CancerArchive website. Meningioma and Pituitary Adenoma datasets are collected from FigShare. The number of MRI scans collected for each type are given in Table 1.
3.2 Preprocessing As we need to analyze the MRI scan to correctly classify them into their respective types, we need to make sure the scans have good contrast and no noise. Preprocessing is the stage where we remove noise and unwanted disturbances from the images so that they do not be a hindrance later. A Gaussian low-pass smoothing filter will be used to remove detail and noise. The output is a smoothened and high-quality image that can be fed forward to the segmentation algorithm to extract the tumor from the MRI scan. Figure 2 shows the original MRI scan and Fig. 3 shows the preprocessed image after applying the Gaussian filter. Data Collection
Preprocessing
Segmentation
Feature Extraction
Classification
Fig. 1 Proposed methodology
Table 1 Dataset
Meningioma
Pituitary Adenoma
GBM
HGG
49
62
74
65
550
F. Kathawala et al.
Fig. 2 Original image
Fig. 3 Preprocessed image
3.3 Segmentation Segmentation is an important stage in the process of detecting the brain tumor where we separate the tumor apart from the rest of the image so that we can extract the required features and study the tumor comprehensively. For this, we have used the Active Contour: Snakes Model. A distinct border or curve for the areas of interest for segmentation is defined by the active contour [4]. A snake is a spline which minimizes energy and is influenced by external and image forces which, in turn, pull it toward the edges and lines. Snakes find nearby edges and lock onto them, thus accurately localizing them [5]. The algorithm utilizes certain energy terms which helps the model to push out from a local minimum and toward the desired solution. We begin the process by providing the preprocessed MRI scan as an input to the algorithm. A spline will be created from these points and then the snake will slither toward a nearby contour to get the result. The external and internal image forces play a very important role in determining the salient image contours. If parametric equation for the location of snake is v(s) = (x(s), y(s)), the energy term is written as
Brain Tumor Detection and Classification
551
0 Esnake =
Esnake (v(s))ds
(1)
1
0 Eint(v(s)) + Eimage(v(s)) + Econ(v(s)) ds
=
(2)
1
In Eq. (2), Eint is the internal energy of the spline, Eimage is the image forces and Econ is the external constraint forces [5]. The equation for internal energy (Eint) is Eint = α(s)|vs (s)|2 + β(s)|vss (s)|2 /2
(3)
It contains the first-order derivative which is governed by alpha (α) and secondorder derivative which is controlled by beta (β). The contour behaves similar to a membrane because of the first-order term and similar to a thin plate because of this second-order term. We also need an energy function to attract the snake toward the important image features. The weighted combination of three energy terms forms the total image energy [5]. Eimage = wline Eline + wedge Eedge + wterm Eterm
(4)
Here, Eline = I(x,y), i.e., the image intensity. Depending upon the sign of wline , the snake will slither toward light or dark lines in the image. The edges are determined with Eedge = –|∇I(x,y)|2 . This will attract the snake toward large image gradients. The terminations of line segments and corners can be found using another energy functional. If C(x,y) = Gσ (x,y)* I(x,y) is the smoothed image, θ = tan−1 (Cy /Cx ) and n = (cosθ, sinθ) and np = (–sinθ, cosθ) are unit vectors then the termination energy of the snake in C(x,y) is Eter m = = =
δθ δnp
δ 2 C/δnp δC/δn
C yy C x2 − 2C x y C x C y + C x x C y2 (C x2 + C y2 )3/2
(5) (6) (7)
Using Eqs. (3) and (4), the overall energy can be computed which helps the snake lock on to contours in the neighboring region of the provided input. Once the tumor boundaries are caught by the snake, the required region can be extracted from the image. The output of the segmentation phase is given in Fig. 4.
552
F. Kathawala et al.
Fig. 4 Segmented tumor
3.4 Feature Extraction Feature Extraction is a process of collecting higher level information about images. These features provide an insight as to how different tumors differ in the aforementioned properties hence providing distinguishing features to classify the tumors into its types. We have extracted features of shape, intensity, and texture. Gray-level co-occurrence matrix (GLCM) is the technique utilized for extracting features of texture. The GLCM calculates the relevant information of the pixels nearby having similar values. These features include: 1. 2. 3. 4.
Contrast Correlation Homogeneity and Energy.
Other features required are extracted using region props function in MATLAB which measures the shape properties of an image: 1. 2. 3. 4. 5. 6. 7. 8.
Area Perimeter Major Axis Minor Axis Eccentricity Solidity EquivDiameter and Circularity. Circularity is calculated using Eq. 8: Circularity = (4∗ pi∗ ([Area]))/([Perimeter]).∧ 2 The intensity features listed below are calculated using MATLAB functions:
(8)
Brain Tumor Detection and Classification
1. 2. 3. 4. 5. 6. 7. 8. 9.
553
Skewness Kurtosis IDM Mean Standard Deviation Entropy RMS Variance and Smoothness.
The output of these 21 features is listed in an Excel sheet where the tumors— meningioma, pituitary adenoma, HGG, GBM are labeled as 1, 2, 3, 4, respectively, which can be then used for classification. The output is shown in Fig. 5. The results are stored in an Excel sheet as shown in Fig. 6.
Fig. 5 Extracted features in MATLAB
Fig. 6 Excel sheet
554
F. Kathawala et al.
3.5 Classification This is the last step to be performed. This step will classify the brain tumor as either Meningioma, Pituitary, GBM, or HGG. For classification, we will be using ANN, Naive Bayes, and Random Forests. Artificial Neural Network (ANN) is basically inspired by how the biological nervous systems work in the human body, just like the way our brain processes information. The main element of ANN is the way the information processing system is structured and designed. It is made up of many highly interconnected processing elements, also known as neurons which work together to solve a specific problem. ANN classifier shows the results as shown in Fig. 7. Random Forests is a classifier used for supervised learning. It is an extension of decision tree where it creates multiple decision trees to classify and hence the name includes Forests. The results are as shown in Fig. 8. Naive Bayes is a simple probabilistic classification technique. It is a classifier which determines the probability of features occurring in each class and thus returns the most likely class. The results are shown in Fig. 9. Fig. 7 Confusion matrix for ANN
Fig. 8 Confusion matrix for random forests
Brain Tumor Detection and Classification
555
Fig. 9 Confusion matrix for naive Bayes
Table 2 Classification accuracy
Classifier
Accuracy
Sensitivity
Precision
ANN
52.4
52.4
52.4
Naive Bayes
52
52
57.3
Random forest
48.4
48.4
48.3
4 Results and Discussions The classifier performance is evaluated in terms of sensitivity, specificity, and accuracy. There is no human intervention. The comparison of different classifiers is shown in Table 2, and also the accuracy is yet to be improved.
5 Conclusion In this paper, we have implemented Active Contour-snakes algorithm for segmentation which has been used seldom in the work presented by others. It segments the tumor precisely. From the segmented tumor, the features are extracted, and these values are written in an excel sheet. Three classification models are used for classifying the tumor- ANN, Naive Bayes, and Random Forests. A comparison of these three models has been presented in the form of comparison of accuracy found through each of them. It can be seen that neural networks work best for our classification task.
6 Future Work The future work shall consist of improving the classification accuracy by extracting more appropriate features using feature selection algorithms and increasing the training data set.
556
F. Kathawala et al.
References 1. Mishra, R., MRI based brain tumor detection using wavelet packet feature and artificial neural networks. ICWET 2010-TCET. 2. Gaikwad, D. P., Abhang, P., & Bedekar, P. (2011). Medical image segmentation for brain tumor detection. ICWET 2011-TCET. 3. Nalbalwar, R., Majhi, U., Patil, R., Gonge, S. (2014). Detection of brain tumor by using ANN. International Journal of Research in Advent Technology, 2(4). 4. Hemalatha, R. J., Thamizhvani, T. R., & Dhivya, A. J. A., Active contour based segmentation techniques for medical image analysis. Intechopen.74576-Chap. 2. 5. Kass, M., Witkin, A., & Terzopoulos, D, Snakes: Active contour models. International Journal of Computer Vision, 321–331.
A Multiple Criteria-Based Context-Aware Recommendation System for Agro-Cloud Lata Ramchandani, Shital Patel and Krunal Suthar
Abstract In the hierarchy of developing countries, India has been on a predominant position in terms of food production, and agriculture has been a backbone of the country. But with food production, food security and distribution, advanced farming techniques, recent technological advances in Cloud Computing has great significance in many industry areas including the agricultural sector. Utilization of Cloud Computing technology in an agricultural sector enhances the overall growth of the country. The cause of low productivity and less profit to the farmers in India are crude methods used by farmers compared to farmers well equipped with tech. In this paper, we have proposed effective recommendation system for management of farms can recommend the farmers to make suitable decisions. This proposed system that uses the Cloud Computing technology to make system available anywhere and anytime. The proposed model contains multiple criteria such as soil type, soil fertility, and nutrients, water needed, and sunlight intensity required for recommendation as single criteria is not enough for recommendation. So, the proposed system will use these multiple criteria for effective recommendation and increase the productivity. Keywords Cloud computing · Recommendation system · Agriculture · Context-aware approach
L. Ramchandani · S. Patel (B) Laljibhai Chaturbhai Institute of Technology, Bhandu, India e-mail: [email protected] L. Ramchandani e-mail: [email protected] K. Suthar Sankalchand Patel College of Engineering, APCE, Visnagar, India e-mail: [email protected] © Springer Nature Singapore Pte Ltd. 2020 H. Sharma et al. (eds.), Advances in Computing and Intelligent Systems, Algorithms for Intelligent Systems, https://doi.org/10.1007/978-981-15-0222-4_53
557
558
L. Ramchandani et al.
1 Introduction The main key aspect that we have focused on is our “Agriculture”. Agriculture accounts for 50–60% of the country’s employment but results in only 18% of its GDP. India is one country in the world where we can take 3–4 crops a year. Indian farmers possessed knowledge and methodologies for growth and cultivation of the land and crops that has evolved over thousands of years of experience and observation, and that is the only reason why without much of the infrastructure our farmers still produce food for over a billion people each year. But in preset times farmers have faced in numerous challenges including weather, competition from large corporations and price surges creation huge economic pressures, leading to considerable distress. Climate change could distort farmer’s economy by 20–25% in shorter spans of months, as per to Indian government’s latest conducted annual economic survey. The report estimated that extreme the degree of heat shocks will decrease farmer’s income by 4.3% and heavy rainfall shocks will decrease income by 13.7%. The virtual resources that can be accessed from anywhere with comfort is called as Cloud. The technology for accessing these virtual resources to use various applications and services via World Wide Web and standard communication protocols is termed as Cloud Computing. Cloud Computing provides resources dynamically and on the go to users based on pay-per-use metering and billing policy. The major benefit of Cloud is its flexibility of accessing resources anytime and anywhere. Cloud Computing delivers computing power such as Central Processing Unit, Random Access Memory, Network Speeds, Storage, Operating System as Service over a network rather than having presence of the computing resources at the user place. The usage of hardware and software can be reduced by the use of cloud computing technology at user’s side. With the help of simple web browser, user can run Cloud Computing systems. And the rest will be managed by Cloud network. For the overall development of the country, including agricultural sector Cloud Computing has an important role to play. The agriculture sector is encouraged by the effective implementation of Cloud Computing. In modern era of Information and technology, Cloud Computing technology is very helpful for the centralization of all agricultural-related data bank. The use of Cloud Computing in agriculture provides data readiness anytime and anywhere also enhances the GDP of the nation. It also ensures food security level and also provides communication locally and globally. A Recommendation System or Recommender System is a subclass of information that recommends content to the user, which is interpreted based on the aggregated libraries of data. It is a system which filters information that forecasts the “rating” or “the order of preference” of an item that will be given by a user. The aim of a Recommendation System is to produce resourceful recommendations for the group of the users for their items or products which they more inclined to look forward to. Recommendation Systems are utilized in a variety of areas including music, movies,
A Multiple Criteria-Based Context-Aware …
559
books, news, research articles, clothes, etc. It reduces the difficulty of overloading of information by filtering important information out of large amount of dynamically produced information based on the preferences, interest or behavior of users about item. Based on the user’s profile the system forecasts whether a particular user would prefer an item or not. It also proved to improve decision making process and quality. Context-aware approach is one of the recommendation technique. The information about the environment of a user is called Context. It is the details of situation she/he is in. This type of details play an important role in recommendations as compared to the rating of items as rating does not have any detail information about the user’s circumstances in which it has done. Some recommendations can be more suitable to users either in the evening or in the morning and he/she would like to do one thing when it is either cold or is hot outside but only in one condition. The Recommendation Systems which pay attention and use this type of details or information in giving recommendations are known as Context-aware Recommendation Systems. This paper uses the context-aware approach for effective recommendations. This paper uses multiple criteria such as crop type, soil type, water needed, sunlight intensity required, soil fertilizer and nutrients and pH level for efficient and effective recommendations. The recommendation based on only one criteria such as soil or crop is not sufficient for effective recommendation [1]. The paper is arranged as the following section: in Sect. 2 we discuss a brief literature review, in Sect. 3 we discuss about proposed methodology and Sect. 4 contains Conclusion. Finally in the last section, we provide list of References.
2 Literature Review The authors at [2] provide Geographic Information System (GIS) cloud-based Soil Fertility Management in decision making processes is a novel idea for e-governance and m-governance. The main purpose of this paper is to suggest a complete Decision Support System (DSS) using Geographic Information System (GIS)-enabled cloud technologies for the management of agricultural related data required for soil fertility management based on different criteria like crop grown, season, distinguished soil, various types of seed. Based on the Soil Test Crop Response (STCR) equations, they deliver the fertilization recommendation for the targeted yield approach for different crops. The authors at [1] use a Precision Agriculture, which is the latest technique of farming which aggregate researched analytics of all included parameters like soil characteristics and its types, annual crop data collection and suggest the farmers the suitable crop based on their location-specific parameters. In this paper, the authors have proposed a recommendation system with the help of collaborative model which uses majority voting technique using various data mining techniques such as, Chi-
560
L. Ramchandani et al.
square automatic interaction detection (CHAID), K-Nearest Neighbor, Random tree, and Naïve Bayes as learners to recommend a crop for the location-specific parameters. The authors at [3] develops a farm management information system based on cloud that is mentioned as CloudFarm. This system renders the services related to management and control of the farms and crops by providing basic agricultural practices to the farmers. They offer this proposed work by using mobile application and web application. Using web application, both farmers and advisors can keep watch on the farm data. The authors at [4] provides a cloud-based record keeping scheme on the growth of agriculture, its yield and Indian farmers working for the wellbeing of the society. Until the harvested grains and crops are opened freely in the market, the records are saved in the databases. It also stores the records about active participation of people and/or government against the loss of farmers and production. The authors at [5] suggests the advantages of Cloud Computing in the agriculture sector. Authors advices that management of the agriculture can be easily done through the Cloud Computing. Cloud Computing plays an effective role in the management of agriculture. The authors at [6] focuses on the need of an externally hosted Cloud Computing platform to manage full usage and application of proper knowledge and technology throughout the country by the users. In this paper, the authors developed an application for Usage and Execution Behavior “UnEB” for end users. By using this application, the users can take right steps timely to increase their returns from agricultural and activities related to it. Kuamr et al. [7, 8] developed a new approach for lead and soli classification are also very useful. Some new approaches for agriculture are developed for the purpose of smart farming [9, 10, 11].
3 Proposed Methodology 3.1 Proposed Solution The aim of the proposed system is to recommend fully, partially or not recommend crop based on farmer’s query. The proposed system passes from various multicriteria-based checking as discussed below. The proposed system provides a proper way to the farmer to deal with parameterized issues at some extent. The farmer has to first register his/her self and using the email id and password he/she can login. And then he/she can use this Recommendation System. The past recommendation data, standard characteristics and farmer’s query are provided as input. The farmer’s input is matched with the standard characteristics of the particular crop. According to the weightage calculation the crop is fully, partially or not recommended. If the farmer’s query is repeated query then the system directly shows
A Multiple Criteria-Based Context-Aware …
561
the recommended information and this can save the time. In the case of partial recommendation, when some criteria are not matched with the standard characteristics then it will provide standard values for those criteria which are not matched. In the case of no recommendation, the alternate recommendation is provided, it means that according to those criteria provided by the farmer we will recommend the suitable crop.
3.2 Weightage Calculation Equations In this section, we focus on important part of the weightage calculation of different crops based on multiple criteria. First, we can get the crop-wise available criteria from all the crop details. Once we have details about the various crop criteria, we need to calculate the weightage of particular criteria with respect to individual crop. In the last part, we need to calculate the weightage of particular criteria of particular crop with respect to other criteria of the same crop Cj = Wj =
m m
m i=1
Wej = Wj
m(Ci )
c j ∗ 100
n i=1
3.3 Proposed System Flow See Fig. 1.
(1)
Ci j
j=1 i=1
W ji
∗ 100
(2)
(3)
562
L. Ramchandani et al. Start
AuthenƟca Ɵon Module
Past RecommendaƟon Data
Get Farmer Request
Standard CharacterisƟcs
Get Data
Is Repeated Request ? No Process Standard CharacterisƟcs Soil Whether Yes Type Climate Info
Water Need
Soil Fertility & Nutrients
Other ChracterisƟcs (Rainfall, PH, Light Intensity Etc
Check Standard Characteristics against Farmer Query
Weightage Calculation
Based on list differentiate Fully, Partially and not Recommended data
Display Recommendation Info
Fig. 1 Proposed system flowchart
End
A Multiple Criteria-Based Context-Aware …
563
3.4 Proposed Algorithm Steps
Input: Authentication Module, Past Recommendation data, Standard characteristics Step 1: Start Step 2: Get the Farmer Request Step 3: If the request is repeated then go to Step 6 Otherwise Process the Standard Characteristics such as Soil type, Weather/Climate, Water Need, Soil Fertility and Nutrients and other Characteristics and go to next Step Step 4: Compare the Standard Characteristics against Farmer’s query Step 5: a. Initialize the values [St_details]